SPF check

Fetches the SPF record, follows include and redirect chains, detects loops and multiple records, and counts DNS-querying mechanisms against the RFC 7208 limit of ten.

Updated 2026-10-07

Free, no account, nothing is stored

What this tool checks

The SPF check looks up the TXT record that starts with v=spf1 for the domain you enter and analyses it as a receiving mail server would have to.

  • It follows include and redirect entries, up to 20 SPF records in the tree.
  • It counts the mechanisms that cause DNS queries against the limit of 10, and the lookups that return nothing ("void lookups") against the limit of 2 (RFC 7208 section 4.6.4). Void lookups are counted for include and redirect targets only, because a, mx and exists terms are not resolved.
  • It detects include loops, and domains that publish more than one SPF record.
  • It flags +all and a bare all, also inside included records, because they allow any sender.
  • It reports a missing all, ?all and ~all so you can decide whether they are intended.

How to read the result

Each finding has a code, a plain-language message and, where it helps, the entry it refers to. A finding is information about the published record, not a verdict on your mail delivery. The lookup count tells you how close the record is to the limit; a record over the limit is evaluated as a permanent error by receivers, so SPF stops protecting that domain.

Limitations

  • Macros in SPF records are not evaluated. The check reports that a macro is present.
  • The result is the policy as published in DNS at the time of the check. It does not evaluate the policy for a given sender IP address.
  • The check cannot see mail flows. A clean SPF record does not mean that your mail is delivered or authenticated.

Use it from code

API reference for SPF check

curl -i "https://api.probekit.dev/v1/mail/spf?domain=example.com"

A request without payment is answered with 402 Payment Required and the exact price. See the API reference.

Limits

InputDomain
Deadline10 seconds
FreshnessUp to 5 minutes, never longer than the record TTL
Price$0.01 per check

Findings this tool can report

SPF (13)
Check (1)
DNS (3)

Frequently asked questions

Why is my SPF over the 10-lookup limit?

RFC 7208 allows at most ten DNS-querying mechanisms (include, a, mx, ptr, exists, redirect) while an SPF record is evaluated. Every include of a mail service adds to the count, and the services you include can add their own. The check shows the tree so you can see which entry uses the budget.

Is ~all or -all better?

It depends on whether every system that sends mail for the domain is listed. -all asks receivers to reject everything else, ~all asks them to treat it as suspicious. If you are not sure that all senders are covered, ~all is the safer choice while you find out.

Does the check send any email?

No. It only reads public DNS records for the domain you enter.

Can it tell me if a specific IP address may send for my domain?

No. The check analyses the published policy. It does not evaluate the policy for a particular sender IP.