TL;DR
- MX records list the mail servers for a domain. Lower priority numbers are tried first.
- No MX record usually means the domain can't receive mail. We mark that undeliverable:
invalid_domain. - The MX host also tells you who runs the mailbox: Google, Microsoft, Zoho, Proton and so on. This is how we pick the server to ask.
The short definition
When you send to [email protected], your mail server asks DNS for the MX records of acme.com. The answer is a list of host names with priorities. It tries the lowest number first and falls back to the others if that server is down.
An example
acme.com. IN MX 10 mx1.acme-mail.example.
acme.com. IN MX 20 mx2.acme-mail.example.
Priority 10 is tried before priority 20. Several records with the same number share the load. A domain can also publish a "null MX" to say it never accepts mail. Our code reads that as no mail.
What the MX host tells you
The host name usually shows the provider. Names under Google's mail domains mean Google Workspace or Gmail, names under outlook.com or a Microsoft mail protection host mean Microsoft 365, and so on. That changes what you can expect from verification, as our provider pages explain: Google Workspace, Microsoft 365, Zoho Mail.
MX records and email verification
The DNS check is step two of our six checks, right after syntax (how it works):
| DNS result | Our result |
|---|---|
| Domain doesn't exist | undeliverable: invalid_domain |
| Domain exists but publishes no MX (or a null MX) | undeliverable: invalid_domain |
| MX records found | continue to the SMTP mailbox check |
| DNS lookup fails | unknown: dns_error |
Strictly, the mail standard lets a sender fall back to a domain's A record when there is no MX. In practice we follow the way the large verifiers behave and treat an MX-less domain as invalid. If that fallback matters for your list, tell us through contact.
Having an MX record only proves the domain can receive mail. It doesn't prove a particular mailbox exists, which is why the next step asks the server (verify without sending).
To inspect a domain's MX, SPF, DKIM and DMARC together, use the free email authentication checker (up to 25 domains).
Related reading
Typos in the domain part, such as gmial.com, often have no MX or point to a parking host. That is one reason bounces happen (hard bounces).
Common questions
What does MX stand for?
Mail exchange. An MX record names the server that receives email for a domain.
What happens if a domain has no MX record?
It generally can't receive mail. We mark addresses on it undeliverable with the reason invalid_domain.
Does an MX record prove an email address is valid?
No. It proves the domain can receive mail. The mailbox check asks the mail server whether the specific address exists.