Free email checker for any address

Paste an email address to see whether its domain exists and accepts mail. The checker also flags disposable inboxes, shared role addresses and likely typos. You don't need an account.

  • 7 checks per address
  • Nothing is sent to the address
  • Typo suggestions
Free email checkerLive API
Try:
The verdict, a score and the result of each check will appear here.

What the email checker tests

Each address goes through seven checks. The cheap ones run first, so an address with broken syntax is rejected before any network lookup.

CheckWhat it tells youFails on
SyntaxThe address is well formed: one @, allowed characters, no doubled or trailing dots, and parts within the length limits.jane..doe@acme.com
Domain existsThe domain is registered and answers DNS queries.jane@acme-made-up-domain.com
Mail serverThe domain has MX records, or an address record that mail can fall back to, and hasn't published a "null MX" that refuses all mail.A parked domain with no mail setup
DisposableThe domain belongs to a temporary inbox service. The list is refreshed daily and covers subdomains too.test@mailinator.com
Role accountThe part before the @ is a shared inbox such as info, support or noreply.support@acme.com
Free providerThe address is at a consumer service such as Gmail, Outlook or iCloud. This is information only and doesn't lower the verdict.n/a
TypoThe domain is one slip away from a popular provider, or ends in something that can't exist, like .con. You get a suggested fix.sam@hotmial.com

How to read the result

You get one of four statuses, a machine-readable reason, and a score from 0 to 1. The score is handy for sorting a list. A valid address scores about 0.9 and an invalid one scores 0. Each warning on a risky address lowers its score, so a disposable inbox scores lower than a role address.

StatusMeaningWhat to do
validWell formed, and the domain accepts mail. No warning signs.Accept it.
invalidIt can't receive mail: bad syntax, no such domain, or no mail server.Ask for a different address.
riskyIt may receive mail, but it's disposable, a role inbox, a likely typo, or the domain has no MX records.Depends on your use. Show the typo suggestion, or flag the sign-up for review.
unknownDNS failed temporarily, so there's no verdict yet.Accept it and check again later.

Every individual check is listed under the verdict, so you can see exactly why an address got its status. Open "Raw JSON response" to see the same response the API returns.

What an email checker can't tell you

The checker answers "can this domain receive email?" It doesn't contact the mail server to ask whether a particular inbox exists. Many large providers accept every recipient at that stage anyway and only bounce later, and some company domains are set up to accept mail for any name. A made-up address at a real company can therefore pass.

If you need to be certain someone owns an address, send them a confirmation link. Use the checker, or the API behind it, to catch the typos and fake domains before that email is sent, so fewer confirmation emails bounce.

For background on each technique, read the email validation guide.

Check addresses from your own app

The checker on this page is a front end for the validateemail.io API. One request returns the same result:

curl "https://validateemail.io/v1/validate?email=sam@hotmial.com" \
  -H "Authorization: Bearer $VALIDATEEMAIL_API_KEY"

A batch endpoint takes up to 100 addresses per request. The API reference covers both, and there are step-by-step guides for Node.js, Python and PHP.

Frequently asked questions

Is the email checker free?

Yes. You can check addresses on this page without an account. It allows a few checks per minute from each visitor, which is plenty for checking addresses by hand. To check addresses from your own app, you'll need an API key.

Does checking an address send an email to it?

No. The checker looks up the domain's DNS records and compares the address against our lists. Nothing is sent to the address, and we don't connect to its mail server, so the owner can't tell it was checked.

Why is a real address marked risky?

Risky means the address can probably receive mail but has a warning sign. The usual reasons are a disposable inbox provider, a shared role inbox such as info@ or support@, or a domain that looks like a typo of a popular provider. The reason field says which.

Can it tell me whether a specific mailbox exists?

Not yet. The checker confirms that the domain exists and has working mail servers. It doesn't ask the mail server about the individual inbox, so a made-up name at a real company domain can still come back valid. Sending a confirmation email is the only certain test.

What does unknown mean?

A DNS lookup for the domain failed or timed out, so there wasn't enough information for a verdict. It's usually temporary. Try the address again in a few minutes.

Do you keep the addresses I check?

Results are cached so repeat checks are fast: 7 days for an address and 24 hours for a domain. After that they're deleted automatically. We don't sell or share checked addresses or use them for marketing.