SPF

SPF is a TXT record naming the servers allowed to send for your domain. This hub covers the conditions an evaluator can report, what each one means in RFC 7208, and how to fix it without cutting off a sender you still use. Start with the intent that matches you, or check your record first and come back with the result.

Check your SPF record Reads the live record and counts every DNS lookup it costs.

Where do you want to start?

Conditions an SPF check can report

Eighteen conditions, of which five have pages today. The rest are listed because the list is the diagnostic surface, and a list that only shows what we have written is a list you cannot use to find out that something exists.

RFC 7208, section by section

RFC 7208, quoted verbatim from the vendored text at core/rfc/rfc7208.txt (sha256 3cca3f25…).
SectionTitleQuoted
§3.2Multiple DNS Records“A domain name MUST NOT have multiple records that would cause an authorization check”
§4.6.4DNS Lookup Limits“If this limit is exceeded, the implementation MUST return "permerror"”
§5.2include“The "include" mechanism triggers a recursive evaluation of check_host()”
§8.1None“the SPF verifier has no information at all about the authorization”
§8.4Fail“an explicit statement that the client is not authorized to use the domain”
§8.5Softfail“Receiving software SHOULD NOT reject the message based solely on this result”
§2.6.7PermError“the domain's published records could not be correctly interpreted”

What we do not claim

We report what your DNS publishes and what an evaluator would return from it. We do not state what any mailbox provider will do with that result: those decisions are theirs, they are not published, and we cannot measure them from here.

Reviewed by Venkat Nookala, last reviewed 2026-09-08.