Verifyre

Real-time email validation on sign-up forms: how it works and what it catches

Real-time email validation checks an address as it is typed: syntax, typos, disposable domains, role accounts, MX and an optional mailbox check. Here is how it works.

Real-time email validation checks an address the moment someone types it into your form, before the form submits. A widget checks the syntax, catches typos and suggests the fix, blocks disposable addresses, flags role accounts, confirms the domain has working mail servers and can optionally confirm the mailbox itself exists with an SMTP check, all in well under a second and without the person noticing anything except a helpful hint.

Why validate at capture instead of cleaning later

Roughly 15% of addresses typed into web forms are invalid at the moment they arrive. Some are typos (gmial.com, hotmai.com), some are disposable addresses used to get past a gate, some are made up, and some are bots.

If you catch them later with a bulk clean, you have already paid for the damage. The welcome email bounced and counted against your sender reputation. The order confirmation never reached the customer, who is now in your support queue. The lead went to a salesperson who could not reach them. The contact sat in your ESP being billed for. Cleaning afterwards fixes the list; it does not undo any of that.

Validation at capture is cheaper too. One credit at the form, spent only on addresses that pass the free syntax and typo checks, instead of a bounce, a support ticket and a lost conversion. Our list hygiene checklist puts it as step one for a reason.

What the widget checks as the user types

The checks run in order from cheapest to most expensive, and the widget stops as soon as one fails.

CheckWhat it catchesTypical time
SyntaxMissing @, spaces, bad characters, double dotsInstant, in the browser
Typo suggestiongmial.com, yaho.com, .cmo endingsInstant, in the browser
Disposable domain10,000+ throwaway providersMilliseconds
Role accountinfo@, sales@, admin@, noreply@Milliseconds
MX lookupDomains with no mail servers at allTens of milliseconds
SMTP mailbox checkMailboxes that do not exist on a real domainUnder a second
  1. Syntax. The address has to be shaped like an address. This runs in the browser with no network call. Our email syntax checker shows the exact rules.
  1. Typos with did-you-mean. The widget compares the domain against the providers people actually use and the ways they usually misspell them, then offers the correction. The person clicks it or ignores it. Try the email typo fixer to see it work.
  1. Disposable domains. Addresses from throwaway providers expire in minutes. Our disposable email detection covers more than 10,000 domains and is updated continuously, because these providers rotate domains to stay ahead of blocklists. Check any domain with the disposable email checker.
  1. Role accounts. info@, support@ and sales@ reach a shared inbox, not the person filling in the form. Whether to block them depends on the form: refuse them on a personal newsletter, allow them on a B2B contact form.
  1. MX lookup. A domain with no MX records (or no fallback A record) cannot receive mail, full stop. Our MX lookup shows what the widget sees.
  1. Optional SMTP check. For the forms where it matters most, the widget asks our engine to open a real SMTP conversation with the receiving server and confirm the mailbox exists, without sending anything. This is the same check behind our real-time verification, and it returns a verdict and a 0 to 100 score. It costs a credit, which is why it only runs after the free checks pass.

UX rules that keep conversions up

Validation that annoys people loses more signups than bad addresses ever cost. These rules keep it helpful.

  • Debounce. Wait 300 to 500 milliseconds after the person stops typing, or check on blur, so the widget is not firing on every keystroke. Never run the network checks before there is a domain to check.
  • Never block on a timeout. If the check does not come back in time, let the form submit and verify the address afterwards. A slow network must never cost you a customer.
  • Suggest rather than refuse. A typo gets a "Did you mean" prompt the person can accept with one click or dismiss. Only certainties are hard stops: invalid syntax, a domain with no mail servers, or a disposable domain if your policy is to refuse them.
  • Make messages accessible. Tie the message to the input, announce it with a polite live region, and never rely on a red border alone. Say what is wrong and what to do about it in plain words.
  • Do not leak account existence. On a login or sign-up form, "this address cannot receive mail" is fine; "this address already has an account" is a gift to attackers. Keep the two separate.
  • Keep the field fast on mobile. Use the email keyboard type, turn off autocapitalisation, and accept the suggestion with a single tap.

Where to add it

  • Newsletter and download forms. The biggest source of typos and disposable addresses. Suggest corrections, block disposable.
  • Checkout. The receipt and shipping updates depend on this field. Run the full check including SMTP; the credit is trivial next to the order value.
  • SaaS sign-up. The activation email is the product's first impression. Full check, and refuse disposable addresses if free trials attract abuse.
  • Lead and contact forms. A salesperson's time is expensive. Flag role accounts rather than blocking them, so a real enquiry from info@ still gets through.
  • WordPress. The WordPress plugin hooks into popular form plugins and validates the email field with no code.
  • Anything custom. Call the email verification API from your own backend when the form posts, and store the verdict alongside the record.

The form validation widget is a single script tag that attaches to any email input, with options for which checks to run and how strict to be per form.

Measuring the impact

Measure the 30 days before and after switching the widget on. The numbers that move:

  • The share of new signups that are invalid, which you can see by verifying a sample of the pre-widget signups in bulk.
  • The bounce rate on the welcome or confirmation email, which should drop close to zero.
  • Suggestion acceptance rate: how often people click the did-you-mean prompt. Each click is a saved customer.
  • Form completion rate. It should hold steady or rise; if it falls, your rules are too strict.
  • Support tickets about missing emails.

The welcome email bounce rate is the honest measure of your forms. Everything else is a lagging indicator.

What to do next

Add the form validation widget to the form that brings in the most addresses and leave the SMTP check on for a week. Compare the welcome email bounce rate before and after. If you run WordPress, the WordPress plugin gets you there without touching code. Sign up for 100 free credits to try it on a real form today.

Put it into practice.

100 free verifications on signup. Clean a list, add the widget, or call the API.

Start free See pricing