Deliverability
SPF record checker
Check the SPF record for any domain: parsed mechanisms, DNS lookup count against the 10-lookup limit, and the all qualifier, validated instantly.
Enter a domain to look up and validate its SPF record.
Instructions
How to use this tool
- 01Enter a domain like example.com and click Check SPF record.
- 02The tool fetches the domain's TXT records over DNS-over-HTTPS and parses the record that starts with v=spf1.
- 03Review each mechanism: include authorizes another domain's senders, ip4 and ip6 authorize addresses directly.
- 04Check the two failure conditions: more than one SPF record is invalid, and more than 10 DNS lookups causes a permanent error. The count here follows nested includes, which is how receivers evaluate it.
Background
What an SPF record is
SPF (Sender Policy Framework) is a TXT record that lists the servers allowed to send email for a domain. When mail arrives, the receiving server checks whether the connecting IP matches a mechanism in the record: ip4 and ip6 list addresses directly, include pulls in another domain's list (how you authorize providers like SendGrid or Google Workspace), and a and mx reference the domain's own DNS entries.
The record ends with an all mechanism whose qualifier sets the default: -all fails unlisted senders, ~all soft-fails them, and ?all does nothing. A missing or permissive all mechanism leaves the domain open to spoofing.
Background
The 10-lookup limit
SPF evaluation may perform at most 10 DNS lookups. Every include, a, mx, ptr, exists, and redirect term costs one, and nested includes count too, which is how domains quietly break: each new email vendor adds an include until the eleventh lookup makes every SPF check return permerror.
Fixes include removing unused vendors, flattening includes into ip4 ranges (with tooling to keep them current), or consolidating sending through fewer providers. This checker counts the top-level lookups in your record so you can see how close you are.
FAQ
Frequently asked questions
How many SPF records can a domain have?
Exactly one. Multiple TXT records starting with v=spf1 make the result permerror, and receivers treat the domain as having no valid SPF. Merge all mechanisms into a single record.
What is the difference between ~all and -all?
-all is a hard fail: receivers should reject unlisted senders. ~all is a soft fail: the message is accepted but marked, and DMARC still treats it as a fail. Most senders use ~all during rollout and either keep it or tighten to -all once confident.
Why does the 10 DNS lookup limit matter?
Any SPF evaluation needing more than 10 lookups returns permerror, which DMARC counts as failure. Because include chains nest, adding one vendor can push you over. Count includes, then flatten or remove what you do not use.
Does SPF alone stop email spoofing?
No. SPF checks the hidden envelope sender, not the From address people see, and it breaks on forwarding. Pair it with DKIM signing and a DMARC policy to protect the visible From address.
More tools
Browse more free tools
What receivers check besides SPF
SPF is one of three records the big mailbox providers look at, and passing all three is what keeps bulk mail out of spam. Our breakdown covers the current Gmail, Yahoo, and Microsoft rules. Courier routes through your own providers, so you keep control of the domain.
Read the sender requirements