NetworkAI
  • MonitoringCertificate & Domain MonitorDaily checks of TLS certificates, domain registration and DNS, with alerts when a renewal fails.
  • AssessmentSecurity AssessmentA passive security report for a domain you own: TLS, DNS, email authentication, headers and registration.
Free tools
Start hereDomain Health CheckSSL, DNS, email authentication, security headers and expiry in one scored report.Run a health check →
Domain
  • Bulk Domain Expiry Checker
  • RDAP Domain Lookup
  • WHOIS Lookup
SSL / TLS
  • SSL Certificate Checker
  • Bulk SSL Expiry Checker
  • 47-Day Certificate Lifetime Calculator
  • Certificate Lifetime Readiness
  • Post-Quantum TLS Checker
DNS
  • DNS Lookup
  • MX Lookup
  • CAA Record Checker
  • DNS Propagation Checker
  • TXT Record Lookup
  • NS Lookup
  • CNAME Lookup
  • Reverse DNS Lookup
Email authentication
  • SPF Record Checker
  • SPF Record Generator
  • DMARC Record Checker
  • DMARC Record Generator
  • DKIM Record Checker
  • Email Sender Requirements Checker
Website security
  • Security Headers Checker
Network & IP
  • What Is My IP Address
  • Subnet Calculator
All free tools →
PricingDocsGuides
Log inStart free
  • MonitoringCertificate & Domain MonitorDaily checks of TLS certificates, domain registration and DNS, with alerts when a renewal fails.
  • AssessmentSecurity AssessmentA passive security report for a domain you own: TLS, DNS, email authentication, headers and registration.
Free tools
Start hereDomain Health Check
Domain
  • Bulk Domain Expiry Checker
  • RDAP Domain Lookup
  • WHOIS Lookup
SSL / TLS
  • SSL Certificate Checker
  • Bulk SSL Expiry Checker
  • 47-Day Certificate Lifetime Calculator
  • Certificate Lifetime Readiness
  • Post-Quantum TLS Checker
DNS
  • DNS Lookup
  • MX Lookup
  • CAA Record Checker
  • DNS Propagation Checker
  • TXT Record Lookup
  • NS Lookup
  • CNAME Lookup
  • Reverse DNS Lookup
Email authentication
  • SPF Record Checker
  • SPF Record Generator
  • DMARC Record Checker
  • DMARC Record Generator
  • DKIM Record Checker
  • Email Sender Requirements Checker
Website security
  • Security Headers Checker
Network & IP
  • What Is My IP Address
  • Subnet Calculator
All free tools →
PricingDocsGuides
Start freeLog in
  1. Home
  2. /Free tools
  3. /Email authentication
  4. /SPF Record Checker
Free tool · No signup

SPF Record Checker

Enter a domain to see its SPF record, every nested include, and exactly how many DNS lookups it costs against the limit of 10 — for anyone who sends email from their own domain.

Results come from public resolvers (Cloudflare 1.1.1.1 and Google 8.8.8.8) and are cached for up to a minute. A mail server may see something different if a record changed recently — changes take up to the record's TTL to propagate.

Get this as an API

Early access · not available yet

We are building an API that returns these checks as JSON. It does not exist yet — the request and response below show the planned shape and may change. Join the waitlist and we will email you once, when early access opens.

Planned request
curl "https://networkaitools.com/api/v1/email-auth?domain=example.com" \
  -H "Authorization: Bearer nk_live_..."
Planned response
{
  "status": "ok",
  "spf": { "present": true, "valid": true, "dns_lookup_count": 4, "all_mechanism": "~all" },
  "dmarc": { "present": true, "policy": "none", "rua": ["mailto:dmarc@example.com"] },
  "dkim": { "found": [{ "selector": "google", "key_type": "rsa", "key_bits": 2048 }] }
}

Used only to tell you when the API opens. No newsletter, and you confirm by email first.

What is an SPF record?

An SPF (Sender Policy Framework) record is a DNS TXT record that lists the servers allowed to send email for a domain. Receiving mail servers look it up, compare it with the IP address that delivered the message, and use the result — pass, fail or softfail — to help decide whether the mail is genuine.

Why the 10-lookup limit matters

SPF is defined in RFC 7208. Section 4.6.4 caps the number of DNS queries a receiver will make while evaluating one record at 10. The limit counts every include, a, mx, ptr and exists mechanism and the redirect modifier — including the ones buried inside other providers' records. ip4, ip6 and all cost nothing.

Going over is not a soft warning. The receiver stops and returns a PermError, which most mailbox providers treat the same as having no SPF at all. Because the count depends on records you do not control, a domain can cross the limit without anyone touching its DNS: a provider adds one more nested include and your mail starts failing.

This checker walks the whole tree, the way a receiving server does, and shows the cost of each branch so you can see which provider is spending your budget.

How to read the results

CheckPassFail
Record presentExactly one TXT record starts with v=spf1None, or more than one (two records are a PermError)
DNS lookups10 or fewer across the whole include tree11 or more — PermError
all mechanismEnds in -all (fail) or ~all (softfail)+all authorizes every server on the internet; ?all asserts nothing
Includes resolveEvery include: target publishes its own SPF recordA target with no SPF record is a PermError
No loopsNo record includes itself, directly or through anotherA loop can never finish evaluating
ptr mechanismNot usedPresent — slow, unreliable and discouraged by the RFC

The tree view lists each mechanism in evaluation order with the lookups it costs. A number beside an include is the total for that provider, nested lookups included.

How to fix common SPF problems

Too many DNS lookups. Work through these in order — the first two usually fix it:

  1. Remove includes for services you no longer send through. Old marketing and helpdesk tools are the usual culprits.
  2. Replace a and mx with the literal ip4:/ip6: address when the server's IP is stable. Each one saves a lookup.
  3. Move a bulk sender to a subdomain such as mail.example.com with its own SPF record. Each subdomain gets its own budget of 10.
  4. Only as a last resort, flatten an include into its IP ranges. Flattened records go stale when the provider changes addresses, so they need monitoring.

Two SPF records. Merge them into one. A domain that sends through Google Workspace and SendGrid needs a single record:

v=spf1 include:_spf.google.com include:sendgrid.net ~all

No all at the end. Without all or a redirect, the result for unlisted servers is neutral, which protects nothing. Add ~all while you confirm every legitimate sender is listed, then move to -all.

A domain that never sends email. Publish a record that says so, so nobody can use it for spoofing:

v=spf1 -all

Examples of valid SPF records

SetupRecord
Google Workspace onlyv=spf1 include:_spf.google.com ~all
Microsoft 365 onlyv=spf1 include:spf.protection.outlook.com -all
Own mail server plus Mailgunv=spf1 ip4:203.0.113.25 include:mailgun.org ~all
Sends no mailv=spf1 -all
SPF checks the envelope sender (the Return-Path), not the From address people see. Stopping spoofing of the visible From address needs DMARC on top — check it with the DMARC checker.

What SPF does not cover

  • Forwarding. A forwarded message arrives from the forwarder's IP, so SPF fails even though the mail is legitimate. DKIM survives forwarding; SPF does not.
  • The visible From address. SPF alone lets an attacker pass with their own domain in the envelope while showing yours in From. DMARC alignment closes that gap.
  • Message content. SPF says nothing about whether a message was altered in transit. That is DKIM's job.

Since February 2024, Google's sender guidelines require SPF or DKIM from every sender and all three — SPF, DKIM and DMARC — from anyone sending 5,000 or more messages a day to Gmail accounts.

Frequently asked questions

How many DNS lookups can an SPF record have?

+

Ten. RFC 7208 limits the include, a, mx, ptr and exists mechanisms plus the redirect modifier to a combined 10 DNS queries per evaluation, counting nested includes. The ip4, ip6 and all mechanisms are free. Exceeding 10 returns a PermError and SPF fails for every message.

Can a domain have two SPF records?

+

No. A domain must publish exactly one TXT record beginning with v=spf1. If a receiver finds two, the result is a PermError and neither is used. Combine every sender into a single record with multiple include mechanisms instead.

What is the difference between ~all and -all?

+

-all (fail) tells receivers that mail from unlisted servers is not authorized. ~all (softfail) says it is probably not authorized and should be accepted but treated with suspicion. Under a DMARC policy both count as an SPF failure, so ~all is a safe choice while you are still finding every legitimate sender.

Does SPF use a TXT record or an SPF record type?

+

A TXT record. A dedicated SPF record type (type 99) once existed, but RFC 7208 retired it in 2014. Publish SPF only as TXT; receivers no longer query the old type.

Why does my SPF check fail after email forwarding?

+

SPF validates the IP address of the server that handed the message to the receiver. After forwarding, that is the forwarder's server, which your record does not list. This is expected. A valid, aligned DKIM signature lets the message still pass DMARC.

Do subdomains inherit the parent domain's SPF record?

+

No. SPF is looked up for the exact domain in the envelope sender. mail.example.com needs its own record; it does not fall back to example.com. DMARC is different — it does fall back to the organizational domain's policy.

What is the correct SPF record syntax?

+

An SPF record is one TXT record on the domain that starts with v=spf1, lists the allowed senders, and ends with an all mechanism. For example: v=spf1 include:_spf.google.com ip4:203.0.113.10 ~all. Mechanisms are separated by spaces, include: pulls in a provider's list, and ~all or -all says what to do with everything else.

Related tools

All Email authentication tools →
  • SPF Record Generator

    Build a valid SPF record from your providers and server IPs. Runs in your browser.

  • DMARC Record Checker

    Policy, alignment, report addresses and the mistakes that stop reports arriving.

  • DKIM Record Checker

    Find DKIM keys by selector and check their type and size.

  • Email Sender Requirements Checker

    One verdict for the Gmail, Yahoo and Outlook bulk-sender rules: SPF, DKIM, DMARC and the rest.

  • TXT Record Lookup

    Every TXT record on a domain, with SPF, DMARC and verification tokens labelled.

  • Domain Health Check

    SSL, DNS, email authentication, security headers and expiry in one scored report.

Related guides

  • What Is DKIM? How DKIM Records Work and How to Set One Up

Written and maintained by the NetworkAI team, built by a working network security engineer · Last updated November 5, 2026

NetworkAI

Renewal-failure alerts for TLS certificates and domain registrations.

Product

  • Certificate monitor
  • Pricing
  • Log in
  • Start free

Free tools

  • Domain Health Check
  • SSL Certificate Checker
  • SPF Record Checker
  • DMARC Record Checker
  • Security Headers Checker
  • DNS Lookup
  • All free tools →

Tool categories

  • Domain
  • SSL / TLS
  • DNS
  • Email authentication
  • Website security
  • Network & IP

Resources

  • Documentation
  • Slack & webhook alerts
  • Guides
  • All comparisons
  • NetworkAI vs UptimeRobot
© 2026 NetworkAI · Built by a network security engineer
PrivacyTerms
EspañolالعربيةDeutsch