networkutils.org

Home / Email Tools / SPF Check

SPF Check

Email Tools

Parse SPF, count lookups and flag syntax problems.

Run this tool: the interactive SPF Check loads here (requires JavaScript). Input: Domain — e.g. example.org.

Description

SPF Check parses the Sender Policy Framework record for a domain, validates the syntax, counts the DNS lookups used, and flags mechanisms that could break deliverability.

Features

✓ SPF record retrieval and parsing
✓ DNS lookup count against the 10-lookup limit
✓ Syntax and mechanism validation
✓ Include / a / mx / ip4 / ip6 / -all evaluation

How to Use

Enter a domain name (example.org) and run the tool. The probe fetches the SPF TXT record and parses every mechanism.

Input: Domain — e.g. example.org.

Understanding the Results

The output shows the raw SPF record, each mechanism (include, a, mx, ip4, ip6, exists, redirect), the total DNS lookup count, and the final qualifier (-all, ~all, ?all, +all). Exceeding 10 DNS lookups causes SPF to fail with "PermError". A "+all" or "?all" ending is effectively no policy and offers no protection.

Common Use Cases & Examples

→ Validate an SPF record before enabling it for a sending domain.

→ Count DNS lookups to stay under the RFC 7208 10-lookup limit.

→ Find mechanisms causing SPF PermError and delivery failures.

→ Audit a domain’s SPF policy strength (-all vs ~all vs +all).

Frequently Asked Questions

What is the 10-lookup limit and why does it matter?

RFC 7208 limits SPF evaluation to 10 DNS lookups (include, a, mx, exists, redirect) to prevent DoS. Exceeding it makes SPF return PermError, which most receivers treat as a fail — harming deliverability even when your policy is otherwise correct.

Should I end my SPF record with -all or ~all?

-all (hard fail) gives the strongest protection by telling receivers to reject unauthorised senders. ~all (soft fail) is safer while you are unsure of all your sending sources but offers weaker enforcement. Never use +all, which authorises every sender.

How do I reduce my SPF lookup count?

Flatten nested includes by replacing them with ip4/ip6 mechanisms where possible, use SPF macros cautiously, or move to a dedicated SPF flattening service. Monitor the lookup count whenever you add a new sending source.

About this tool

Maintained by
networkutils.org editorial team
Last updated
September 2026
Testing methodology
MX, SPF, DKIM and DMARC checks query DNS TXT/MX records through Node.js dns.promises; the SPF check walks include/redirect mechanisms recursively and counts the RFC 7208 10-lookup limit; the SMTP Test opens a real SMTP conversation on port 25; the Blacklist Check queries the Spamhaus ZEN DNSBL for each A/MX address.
Technical references
RFC 7208 — Sender Policy Framework (SPF)