Skip to content
SMTPDoctor

AUTH-01 / EMAIL AUTHENTICATION

SPF Checker

Look up a domain's SPF record, validate its syntax, and count DNS lookups against the limit that silently breaks SPF.

About the SPF Checker

SPF (Sender Policy Framework) tells receiving mail servers which servers are allowed to send email for your domain. A missing or broken SPF record is one of the most common reasons legitimate email lands in spam. This checker looks up your domain's published SPF record and shows you exactly what's there.

What this tool checks

It queries your domain's TXT records over public DNS and finds the one beginning with v=spf1. It shows the full record so you can review the mechanisms (include, a, mx, ip4, ip6) and the final qualifier (~all, -all, or ?all) that decides how strictly unlisted senders are treated.

How to read the result

A healthy SPF record lists every service that sends mail for you and ends with ~all (soft fail) or -all (hard fail). If no record is found, receiving servers have no way to verify your senders. If you have more than one SPF record, that's an error — SPF permits only a single record per domain.

Frequently asked questions

What does a valid SPF record look like?

A typical record looks like v=spf1 include:_spf.google.com ~all. It starts with v=spf1, lists authorized senders through mechanisms like include and ip4, and ends with an all qualifier.

Can I have two SPF records?

No. A domain must publish exactly one SPF record. Multiple v=spf1 TXT records cause SPF to fail. If you use several mail providers, combine them into one record using multiple include statements.

What is the difference between ~all and -all?

~all is a soft fail — mail from unlisted servers is accepted but marked. -all is a hard fail — mail from unlisted servers should be rejected. -all is stricter and more secure once you're confident every legitimate sender is listed.

Why does SPF have a 10-lookup limit?

SPF allows a maximum of 10 DNS lookups when evaluating a record. Exceeding this causes a permerror and SPF failures. Nested include statements are the usual cause, so keep your record lean.