Free MX Lookup
Look up a domain's MX records, mail hosts and mail provider. Then check it's safe to point the root at an app without breaking email.
How it works
Enter a domain or URL
Paste a domain or a full URL. We strip the protocol, path and leading www. before we look anything up.
We read the mail setup
We fetch the MX records, resolve every mail host to IPv4 and IPv6, and match each host name against known mail providers.
Read the warnings
Missing MX, null MX, CNAME or bare-IP targets, unresolvable hosts, duplicate priorities and single points of failure are flagged in plain words.
What an MX record is
An MX (mail exchanger) record tells the world which servers accept email for a domain.
When someone sends mail to you@example.com, their server asks DNS for the MX records
of example.com, picks a host from the answer, then looks up that host's
A record (or AAAA) to find an IP address to connect to.
Each MX record has two parts: a priority and a mail host. The host must be a hostname, never an IP address and never an alias. That's the whole record. It says nothing about who sent the mail. That's SPF, DKIM and DMARC.
If a domain has no MX records at all, senders fall back to its A or AAAA record and try
delivering mail there. A domain that never receives mail can say so explicitly with a
null MX, the record 0 . (RFC 7505).
How priority works
The number is a preference, and lower wins. A sender tries the lowest-numbered host first. If it can't connect, it moves to the next one up.
| Priority | Host | Role |
|---|---|---|
| 10 | mx1.example.net | Primary |
| 20 | mx2.example.net | Backup, used when the primary is unreachable |
Two things trip people up:
- The absolute number means nothing. 10 and 20 behaves the same as 1 and 2. Only the order counts.
- Equal priorities share the load. Two hosts both at 10 get mail in roughly equal measure. That's deliberate for hosted providers and a mistake if you wanted a backup.
Common provider MX values
Most mail providers publish the same hostnames for everyone. The tool above matches hostnames against these patterns to name the provider. Check your provider's own setup page for your exact values before you change anything.
| Provider | Typical MX host | Typical priority |
|---|---|---|
| Google Workspace | smtp.google.com (older setups: aspmx.l.google.com plus alt1 to alt4) | 1 (older: 1, 5, 5, 10, 10) |
| Microsoft 365 | <your-domain>.mail.protection.outlook.com | 0 |
| Zoho Mail | mx.zoho.com, mx2.zoho.com, mx3.zoho.com | 10, 20, 50 |
| Fastmail | in1-smtp.messagingengine.com, in2-smtp.messagingengine.com | 10, 20 |
| Proton Mail | mail.protonmail.ch, mailsec.protonmail.ch | 10, 20 |
| iCloud Mail | mx01.mail.icloud.com, mx02.mail.icloud.com | 10, 10 |
| Amazon SES / WorkMail | inbound-smtp.<region>.amazonaws.com | 10 |
| Yandex | mx.yandex.net | 10 |
| Namecheap Private Email | mx1.privateemail.com, mx2.privateemail.com | 10, 10 |
| GoDaddy / Titan | mx1.titan.email, mx2.titan.email | 10, 20 |
| Mimecast, Proofpoint | Assigned per customer and region | Varies |
Anything else shows up as "Other". That's not an error. It usually means a self-hosted mail server or a smaller provider.
Why MX and a root CNAME can't coexist
A CNAME record means "this name is an alias for another name". The DNS rules say that if a name has a CNAME, it can have no other records. No MX, no TXT, no NS, no SOA.
The root of your domain (the apex) always has NS and SOA records, and usually MX and TXT too. So a CNAME there collides with all of them. Some DNS providers refuse it. Some accept it and quietly break email. A few hide it behind CNAME flattening.
That's why apex setups for apps use an A record (a fixed IP) or an ALIAS record (your DNS provider resolves the target and serves its IPs as A records). Both leave the MX records alone.
The check in the tool above is the quick version of this: is there a CNAME at the name you entered, and what MX and TXT records would it step on?
More checks for the same domain
Mail setup is more than MX. Once the routing looks right, check who's allowed to send: the SPF checker, the DKIM checker and the DMARC checker. The TXT record lookup lists everything else at the root. Changed an MX record and don't see it yet? The DNS propagation checker compares resolvers, and DNS TTL explains the wait.
Want MX records in your own code? The free DNS record lookup API returns them along with every other record type. No key, CORS-enabled. The reference docs cover the response.
Frequently asked questions
What is an MX record?+
An MX (mail exchanger) record names the server that accepts email for a domain, plus a priority number. Senders look it up before delivering mail. It's about where mail arrives, not who's allowed to send it.
Which MX record is used first?+
The one with the lowest priority number. If that host can't be reached, senders try the next lowest. Hosts with equal priority share the load.
What happens if a domain has no MX records?+
Senders fall back to the domain's A or AAAA record and try to deliver mail to that server. If it isn't a mail server, the mail bounces. A domain that never takes mail should publish a null MX (0 .) so senders are told immediately.
Can an MX record point to a CNAME?+
It shouldn't. RFC 2181 says an MX target must not be an alias. Some mail servers follow the CNAME anyway and some bounce the message, so the result is unpredictable. Point the MX at the real hostname.
Can I use a CNAME at my root domain if I also have MX records?+
No. A CNAME means no other record can exist at that name, and the root always carries NS and SOA records, usually MX and TXT as well. Use A records or an ALIAS record at the root and keep the CNAME for subdomains like www or app.
Will connecting my domain to an app break my email?+
Not if you use A or ALIAS records at the root. A and AAAA records don't change where mail goes. The danger is replacing the root with a CNAME. Run the check above first. It reports any CNAME already at the name and lists the MX and TXT records you need to keep.
Connecting customer apex domains without breaking their email?
Domainee gives you two anycast A records for the apex, provider-specific DNS instructions and automatic SSL, so MX records stay untouched.
20 custom domains and 100 GB bandwidth free, forever.
More free tools
SSL
Free SSL Certificate Checker
View issuer, validity, expiration countdown, and certificate chain for any domain.
DNS
Free DNS Record Lookup
Check A, AAAA, CNAME, MX, TXT, NS, and SOA records for any domain instantly.
Domain
Free WHOIS Lookup
View registrar, creation and expiry dates, name servers, and registration data for any domain.
DNS
Free CNAME Lookup & Generator
Validate CNAME records and get provider-specific setup instructions for custom domains.
DNS
Free DNS Provider Lookup
Identify which DNS provider serves a domain and get the record name, apex support and gotchas for that provider.
DNS
Free Domain Connect Checker
Check whether a domain's DNS provider supports the Domain Connect protocol and which flow it offers.