Autocorrect
Confidence-gated corrections that know when not to fire.
Autocorrect fixes typos as you finish typing a word, but only when one candidate is clearly the right fix: a fat-fingered slip that’s obviously “world” gets corrected; a word that’s genuinely ambiguous between two real words is left alone for the suggestion strip instead. That’s the confidence gate this page is about, along with everything built around it: reverting a correction, the words it never touches, and the auto-space rules that ride along with it.
How a correction is chosen
Section titled “How a correction is chosen”When you finish a word (usually by pressing space), WM Keyboard checks it against every word one edit away (one dropped, doubled, swapped, or substituted letter), scored from two independent sources: the bundled/downloaded dictionary and your own personal dictionary of learned words.
- Two sources agreeing is enough on its own. If the dictionary’s best guess and your personal dictionary’s best guess land on the exact same word, it’s applied: the confidence factor below isn’t even consulted.
- Otherwise, the best candidate has to clearly win. It’s only applied if it outscores the runner-up by the confidence factor (4× by default, see Options). A close call is left alone rather than guessed at.
- The edit itself is weighted by how it happens. A dropped letter or a swapped pair scores as a more likely accident than a substitution or insertion. Substitutions and insertions are further split by keyboard geometry: swapping in a letter next to the one you meant to hit (or inserting one next to where your finger actually landed) scores as a far more likely accident than a substitution or insertion that isn’t. This uses the adjacency map for your active layout, so the same typo resolves differently on QWERTY than it would on AZERTY or Dvorak.
- The fix keeps your capitalization. Typing “hte” mid-sentence corrects to “the”; typing “Hte” at the start of one corrects to “The.”
Because the two candidates have to be genuinely far apart in score, autocorrect stays conservative by design: “helo” (evenly split between “hello” and “help”) and “tesr” (an even split between “test” and “tear”) are both left for you to resolve yourself, while an unambiguous slip like “wprld” resolves immediately.
Words it never touches
Section titled “Words it never touches”A word is never a correction target (regardless of the confidence factor) if any of these apply:
- It’s shorter than three letters. Too little signal to guess at safely.
- It’s already a known word. Anything in the active dictionary, a downloaded or custom wordlist, a secondary-language dictionary, or your own personal dictionary is left exactly as typed: a known word is never “corrected.”
- It’s a contact’s name or an installed app’s label, if contact and app-name suggestions have indexed it.
- It’s in your suggestion blacklist, or offensive-word filtering catches it. A blacklisted or filtered word is dropped from the candidate pool before scoring, so it can never be silently forced in as a fix.
- It’s typed in ALL CAPS. Acronyms and shouted words (ASAP, NOOO) are usually capitals on purpose, not a typo; this is its own toggle, on by default (see Options). A leading capital on an otherwise-lowercase word (“Wprld”) is still corrected normally; only a fully-capitalized word is spared.
- The active language isn’t English and has no bundled dictionary of its own. The bundled English dictionary only feeds autocorrect while your active language is English, or has English configured as a secondary language: typing in French, German, or another language draws corrections only from that language’s own dictionary and whatever you’ve personally taught the keyboard.
- The field is a password field, or any structured field: email, web address, number pad, phone pad. Autocorrect (like the rest of typing intelligence) is off in all of them.
Undoing a correction
Section titled “Undoing a correction”⌫ right after an autocorrected word undoes it, as long as nothing else has touched the text since: if the cursor is still sitting exactly where the correction left it and the text right before it still reads as the corrected word plus a space, backspace deletes both and retypes what you originally typed instead. Move the cursor, tap elsewhere, or keep typing first, and the undo is no longer available; only the immediate next backspace can trigger it.
Reverting a correction also teaches the original word to your personal dictionary with a strong boost, on the reasoning that deleting a fix is the clearest possible signal you meant what you typed, so the same word won’t be “corrected” again next time. This follow-on teaching only happens if learning from typing is on, which it is by default, and is skipped in incognito mode (when incognito is set to pause learning) or in a secure field.
This toggle is independent of a related but different behavior: holding Shift live re-cases every chip in the suggestion strip (not just an autocorrect candidate) to match what would actually be committed if tapped, then reverts to normal once you let go. That’s a strip-wide display rule, not a way to reject a correction; see Suggestions & prediction for how it works.
Auto-space and punctuation
Section titled “Auto-space and punctuation”Two related, independently-toggled rules ride along with autocorrect and share its “sentence in progress” bookkeeping:
- Double space inserts a period. Typing two spaces in a row within a fraction of a second replaces the first space with
.. Deleting a space and retyping it “undoes” nothing here; a following Shift is what cancels it. A separate, off-by-default setting can make a double space insert a tab instead, which takes priority over the period rule when both are on. - Punctuation auto-inserts the space after it. Off by default. When on, typing a sentence-ending or clause mark (period, exclamation point, question mark, comma, semicolon, colon, and the Bengali
।) inserts a trailing space automatically, so you don’t need a separate spacebar tap before the next word. A run of marks like ”…” or ”?!” isn’t pulled apart into ”… !”: the space from the previous mark is taken back before the next one lands. This is also gated off in password and structured fields, same as autocorrect itself.
Shift cancels a pending auto-space
Section titled “Shift cancels a pending auto-space”Right after either rule above inserts a space, the very next Shift press (instead of arming Shift or Caps Lock as usual) deletes that trailing space (as long as nothing has changed the text since) and cancels the auto-capitalization the period would otherwise have armed for the next sentence. It’s a one-shot: pressing any other key first clears the pending state, and after that a plain space press just confirms the space already there rather than adding a second one.
Reducing typos before they happen
Section titled “Reducing typos before they happen”A related, separately-gated feature nudges which key a borderline tap resolves to (biasing toward whichever neighboring letter is more likely to continue the word you’re typing), so fewer boundary mis-taps happen in the first place, before autocorrect would ever need to fix them. It’s called smart key-hit detection, lives in the Suggestions settings group rather than alongside autocorrect (it needs suggestions on to have anything to bias toward), and is off by default. See Suggestions & prediction for the rest of how the suggestion engine ranks candidates.
Options
Section titled “Options”
| Setting | Default | Shown when |
|---|---|---|
| Autocorrect | On | always |
| Autocorrect confidence | 4.0× (range 1.5×–10×) | Autocorrect on |
| Adaptive confidence | On | Autocorrect on |
| Typing rhythm | 0% (range 0%–100%) | Autocorrect on |
| Undo autocorrect with backspace | On | Autocorrect on |
| Skip words in capital letters | On | Autocorrect on |
| Block offensive words | On | Autocorrect on |
| Context-aware suggestions | On | Autocorrect on |
| Add missing spaces | On | Autocorrect on |
| Detect the language you type | On | Autocorrect on |
| Detection strength | Balanced (Gentle / Balanced / Aggressive) | Autocorrect on, and Detect the language you type on |
| Fix number row slips | On | Autocorrect on, and the number row is shown |
| Fix missing apostrophes | On | always |
| Double space for a full stop | On | always |
| Double space for a tab | Off | always |
| Double space speed | 400 ms (range 200–800 ms) | either double-space rule on |
| Automatic space after punctuation | Off | always |
The Autocorrect toggle is the master switch for the eleven rows marked “Autocorrect on” above, from the confidence slider down to Fix number row slips. It is not a switch for the whole group: the apostrophe fix, both double-space rules and the auto-space after punctuation carry on working with autocorrect off, which is the point of them having their own toggles. Autocorrect is also reachable as a one-tap toolbar tool that flips the same switch without leaving the keyboard, showing a brief “Autocorrect on”/“Autocorrect off” confirmation.
Autocorrect confidence is the ratio the top candidate must beat the runner-up by, shown as a continuous slider from 1.5× to 10× and labeled with the exact multiplier (e.g. “×4.0”). Lower makes autocorrect fire more eagerly, on less-certain calls; higher restricts it to only the most unambiguous typos. Two-source agreement (see How a correction is chosen) always bypasses this slider, whatever it’s set to.
Three more rows move that same gate around without you touching the slider:
- Adaptive confidence (on) watches how often you undo corrections and raises the bar when you undo a lot, settling back to the slider’s value when you stop. It also remembers each correction you reverted: one you’ve undone twice never fires again.
- Typing rhythm (0%, so off until you move it) measures how fast you typed the word. A quick sloppy burst makes autocorrect a bit braver, slow deliberate typing (an unusual name, a word from another language) makes it hold back. The slider is how much the rhythm is allowed to sway things.
- Detection strength decides how far a detected language may take the gate with it, from a Gentle reorder to Aggressive handing autocorrect over completely. See Mixed-language typing.
The other new rows are corrections in their own right rather than gate tuning:
- Add missing spaces (on) splits a word you typed without its space when both halves are known words and nothing else explains it: “ofthe” becomes “of the”, and a letter next to the spacebar can stand in for the space itself, so “amibtomake” becomes “ami tomake”. Backspace right after puts your text back, like any other correction.
- Fix number row slips (on) treats a lone digit inside a word as a tap that landed one row too high, so “as3” can commit as “ase”. Only a same-length, single-digit swap is ever trusted: a word starting with a digit, or one with two or more digits, is left alone. The row only appears while the number row is on, since that’s the only time the slip is possible.
- Context-aware suggestions (on) reorders the top candidates using the words before them, drawing on your own word pairs, common English pairs and the words already in this conversation. It only reorders where there’s real evidence, and it never changes which word autocorrect applies.
Details & edge cases
Section titled “Details & edge cases”- Structured and secure fields are a hard gate, not a per-setting one. Autocorrect, both auto-space rules, and the smart key-hit bias all share one underlying check: the field must be a plain text field, not a password field or a keypad (email, web address, phone, number), so there’s no way to enable autocorrect specifically in a password field.
- An autocorrected word earns no personal-dictionary credit at the moment it’s committed: the engine’s own guess isn’t reinforced as if you’d typed it deliberately. Reverting it with backspace is what teaches the original word instead (see Undoing a correction).
- The revert window is exact, not fuzzy. It only fires if the caret is still precisely where the correcting commit left it and the text immediately before it is still
"corrected word" + " ", unchanged. Any cursor movement, or any edit elsewhere in the field, silently disarms it: there’s no “undo history” beyond the single most recent correction. - Two-source agreement is unconditional. If your personal dictionary and the standard dictionary happen to name the same fix for a typo, it’s applied even below the confidence slider’s threshold: the slider only governs cases where the two disagree or only one source has an opinion.
- The confidence check is symmetric with the engine’s internal default. The slider’s default position (4.0×) matches the value the underlying suggestion engine falls back to if a setting were ever missing, so a fresh install and an explicitly-set default behave identically.
For the rest of the suggestion strip (completions, next-word prediction, and how learning ranks your own words over time), see Suggestions & prediction. To keep a word out of both suggestions and autocorrect entirely, use the suggestion blacklist.
