Why typo correction matters
When a user types john@gmail.con instead of john@gmail.com, you've captured
an address that will never deliver. Every one of those becomes a guaranteed hard bounce, a lost lead,
and — at scale — a real hit to your sender reputation.
Studies of large signup forms consistently show that 3–10% of submitted email addresses contain a typo in the domain part. Catching them at input costs almost nothing and prevents damage downstream.
The typos that account for most of the volume
gmail.con,gmail.co,gmial.com,gmai.comyaho.com,yahooo.com,yahoo.cohotnail.com,hotmial.com,hotmail.conoutlok.com,outllook.com- TLD swaps:
.cowhen.comwas intended,.cim,.om
How correction should work
- Detect at input. When the user leaves the email field, compare the domain against a small dictionary of common providers.
- Suggest, don't force. Show a "Did you mean
john@gmail.com?" prompt with a one-click accept. - Fall back to verification. If the domain looks unusual but not obviously typo'd (uncommon corporate domain, for example), let the server-side verifier run.
- Log outcomes. Track how often the suggestion is accepted — this is one of the highest-signal metrics for form quality.
The Levenshtein trick
The core of every good typo-corrector is a Levenshtein (edit distance) comparison between the typed domain and a small list of known providers. If the distance is 1 and the typed domain isn't itself valid, you almost always have a typo. Keep the list short (top 20–30 providers) so you don't over-suggest.
Where to combine typo correction with verification
Typo correction handles the visible mistakes. It doesn't handle disposable inboxes, invalid mailboxes, or already-bouncing addresses. Those need verification. The full stack looks like this:
- Client-side typo correction on the form.
- Server-side verification before the record is persisted — see real-time email verification at signup.
- Disposable detection using the pattern in what is a disposable email address.
- Existence checks for the addresses that pass everything else — see how to check if an email address exists.
Key takeaways
- 3–10% of signup emails contain a domain typo — every one is a preventable bounce
- Compare typed domains against a short list of top providers using edit distance
- Suggest, don't overwrite — let the user confirm with one click
- Combine typo correction with real-time verification for the full defense
- Add the ListEmailCheck verification API to your signup flow to catch every address that gets past the typo suggestion.