C6.11.1Autocorrect replaces text without confirmationdesignresearch

Autocorrect replaces the user's text without confirmation

Aliases: autocorrect · silent replacement · auto-replace

What it is

Autocorrect swaps a just-typed string for a word the system thinks more likely, without the user tapping any candidate. It is not completion (completion adds a suffix and waits) and not an IME candidate (those are picked). Correction is an unconfirmed replacement: the original is overwritten, the new string is written, and that is treated as what the user meant.

Why it happens

When space, punctuation, or blur walks the current word across the commit boundary, a correction model compares the original to lexicon neighbours. If it judges a neighbour substitution, omission, or case error, it replaces. The swap happens at the instant attention has already moved to the next word; the original often stayed on screen for one keystroke. There is no “replace?” prompt, so a miss (should have replaced, did not) leaves a typo, and a false hit (should not have replaced, did) leaves a word the user never wrote. False hits are harder to see: the text looks fluent; the error is semantic, not glyph-level. The model uses frequency and keyboard distance, not intent. Intent is only inferred after the fact from “they did not immediately revert,” and that inference is often wrong.

Studying it

Collect corpora with real typing errors, toggle correction, and count leftover typos, correctly spelled words that were swapped, and user reverts. Independent variables include lexicon, spatial model, and trigger boundary (space versus every character); dependent measures include false hits, misses, and latency to notice. Lab copy-typing of nonsense strings understates the harm of false hits—those strings have no fluent wrong word to hide in. Use free composition, and before submit ask “which words did you not type?”

Where it stops holding

“Suggest only, do not replace” is no longer correction in this sense; it is close to completion. Password and code fields default off because the cost of a swap exceeds a miss. Replacement after speech transcription is a different pipeline. Deliberate misspellings, slang, and internal codes all look like errors to a lexicon; false hits systematically target those groups.

Applying it

  • Define correction as replacement, not suggestion: if you do not want a silent overwrite, do not send it through the correction channel; use completion or candidates.
  • Leave a noticeable mark on a replaced word (a brief underline or a tap-back to the original); do not let the new word look identical to something the user typed.
  • Report false hits and misses separately in evaluation; stress false hits with names and colloquialisms the target users actually write, not with news spelling alone.

Related

  • Same group: C6.11.2 Corrections must be visible and undoable in one step · C6.11.3 Names, passwords, and code need correction off
  • Adjacent: C6.10 Autocomplete · C6.09 Gesture typing
  • Search: autocorrect · silent replacement · false correction

Cards in the same group

Quick Actions

Share

Share this page

ios_share

https://hci.top/en/handbook/C6.11.1