Free tool · runs in your browser

Email typo checker and "Did you mean?" for signup forms

Paste one address or a whole list to catch domain typos like gmial.com, hotmial.com and outlook.con, with the fix each one most likely meant. Nothing leaves your browser.

8 checked · 6 likely typos · 0 invalid

EmailResultDid you mean
jane@gmial.comTypojane@gmail.com
bob@hotmial.comTypobob@hotmail.com
sam@yaho.comTyposam@yahoo.com
lee@outlook.conTypolee@outlook.com
ann@gmail.comOK
kim@icloud.coTypokim@icloud.com
raj@gmailcomTyporaj@gmail.com
mo@protonmail.comOK

How the checker decides

Each domain is compared with about 40 big mailbox domains (Gmail, Yahoo, Outlook, Hotmail, iCloud, Proton, GMX, Yandex and others) using an edit distance that counts two swapped letters as one slip. It is the same suggestFix() engine the Vetto script runs on signup forms, so what you see here is what your visitors would see. The rules are deliberately conservative:

  • One slip for most providers, two for long names. gamil.com becomes gmail.com; protonmial.cm becomes protonmail.com.
  • Short brands only get ending fixes. AOL, GMX, Live, Zoho and mail.ru are too close to real company names to guess at.
  • Regional domains stay as they are. yahoo.se is real; gmail.co and gmail.cm are classic slips.
  • Broken endings on any domain. .con, .cmo, .ocm, .nte or .ogr are fixed to .com, .net or .org, even on a company domain.
  • A missing dot. jane@gmailcom becomes jane@gmail.com.

This page works offline, so it cannot tell whether a typo domain has a mail server of its own. For that, paste the address into the live disposable email checker, which looks up the domain's MX records.

The most common domain typos

Typos are not rare. In BounceZero's 2026 report on 7.8 million addresses run through its validation pipeline (vendor data from a mix of outreach, B2B, CRM and newsletter lists), gnail.com made up 0.31% of addresses, gmial.com 0.24% and gmai.com 0.18%, followed by gmal.com (0.12%) and hotmial.com (0.11%) (BounceZero, State of Email Validation 2026). Here is what the engine suggests for the usual suspects, computed live from the same code:

Typed domainSuggested fixKind of slip
gmial.comgmail.comTwo letters swapped
gnail.comgmail.comNeighboring key (n for m)
gmai.comgmail.comLetter missing
gmaill.comgmail.comLetter doubled
gmail.cogmail.comEnding cut short
gmail.congmail.comNeighboring key in the ending
gmailcomgmail.comDot missing
hotmial.comhotmail.comTwo letters swapped
hotmsil.comhotmail.comNeighboring key (s for a)
yaho.comyahoo.comLetter missing
yahooo.comyahoo.comLetter doubled
outlok.comoutlook.comLetter missing
icoud.comicloud.comLetter missing
hotmial.co.ukhotmail.co.ukSwapped letters on a regional domain
acme.conacme.comCompany domain: only the ending is fixed
acme.nteacme.netCompany domain: .net scrambled

Typo domains that accept mail: gmai.com and friends

Some typo domains are dead and bounce. Others quietly accept your mail. When we looked up DNS on October 10, 2026, gmai.com and gnail.com both published MX records pointing at mail servers that are not Google's, while gmail.co published a null MX that refuses all mail. A welcome email or password reset sent to the first two does not bounce. It lands with whoever runs that server.

This is not a theoretical risk. Researchers at Carnegie Mellon registered 76 typo domains and received millions of emails in just over seven months. They projected that 1,211 typo domains registered by others receive around 800,000 emails a year, and found millions of typo domains whose MX records point to a handful of mail servers (Szurdi and Christin, Email Typosquatting, IMC 2017). In 2023, Keio University started blocking outgoing mail from its own system to Gmail lookalikes such as gmai.com and gmail.co, after misdirected mail led to information leaks (Keio ITC, 2023).

Suggest, don't auto-correct

It is tempting to rewrite .con to .com silently. Don't. In a Marketo community thread on correcting email typos, a veteran contributor pointed out that .con could have been meant as .com or .cn, and that even smarter systems are never fully accurate (Adobe Marketo community). Vetto suggests .com because it is by far the likelier intent, but the visitor decides.

Real domains also sit one letter away from a big provider, and rewriting them sends a real customer's mail somewhere else. Here is what the engine does with a few of them (again computed from the code):

DomainWhy it could look like a typoEngine result
yahoo.seSame brand as yahoo.com, different endingLeft alone
hotmail.seSame brand as hotmail.com, different endingLeft alone
gmx.deSame brand as gmx.com, different endingLeft alone
aon.comOne letter from aol.comLeft alone
lime.comOne letter from live.comLeft alone
email.comOne letter from gmail.comLeft alone
cloud.comOne letter from icloud.comLeft alone

So the rule is simple: show "Did you mean jane@gmail.com?" with a Fix button, apply it on one click, and let a second submit go through unchanged.

Add one-click typo rescue to your form

Paste one line before the closing body tag of any page with a signup form:

index.html
<script src="https://usevetto.com/v.js" data-site="pk_your_public_key" defer></script>

When a visitor leaves the email field, the script checks the address. A typo gets a "Did you mean …? [Fix]" line under the field, and the dashboard ledger counts every signup rescued by that click. The same check blocks throwaway inboxes and dead domains, lets privacy relays such as Apple Hide My Email through, and fails open: if Vetto does not answer within 800 ms, the form submits as if it were not installed. Typo rescue is on the Free plan: 1 site, 1,000 checks a month, no card. See pricing for Pro.

Already have users with broken addresses? Run the free CSV email list audit to find typos, throwaways and dead domains in your existing list. Only domain names leave your browser.

Mailcheck.js or a hosted check?

Mailcheck is the classic library for this job. It is MIT-licensed, has no runtime dependencies and makes no network requests, and its README is clear that it is a typo suggester, not an email validator or a deliverability check (mailcheck on GitHub). If you can't load a third-party script, or you only want suggestions, it is a fine choice.

A hosted check earns its place when you also want to stop what a typo list cannot see: throwaway inboxes, dead domains, lookalikes with a live mail server and Gmail alias farms (the last two on Pro, which also signs each verdict for your backend). The Mailcheck.js alternative comparison goes through the trade-offs, and the guide to blocking disposable emails on any signup form covers server-side enforcement.

Frequently asked questions

Does this checker upload my list?

No. It runs in your browser with the same typo engine the Vetto script uses on signup forms. Nothing you paste is sent anywhere, so you can paste a real user export.

Will it "fix" my company domain?

Only obvious slips in the ending, such as acme.con to acme.com or acme.nte to acme.net. It never guesses a company name, and it leaves regional provider domains (yahoo.se, gmx.de) and real companies with similar names alone.

Does the Vetto script change what people typed?

No. It shows "Did you mean …?" with a Fix button under the field. One click applies the fix. If the visitor ignores it and submits again, the form goes through with what they typed, unless that domain cannot receive mail at all.

Is typo rescue on the free plan?

Yes. The Free plan covers 1 site and 1,000 checks a month, with typo rescue plus throwaway and dead-domain blocking. The lookalike warning for typo domains with a live mail server is a Pro signal ($12/month). On Free it runs in shadow mode: counted in your stats, never shown to visitors.

Does a clean result mean the address can receive mail?

No. A typo check only looks at how the domain is spelled; it cannot tell whether the mailbox exists. Vetto adds DNS checks for dead and throwaway domains, but it never connects to mail servers to probe inboxes.

Give your signup form sharp eyes.

Free on one site. One line of HTML. Remove it any time and your form works exactly as before.

Founding offer: Pro for life for $69 once, first 100 buyers, until Nov 27.