How to fix your SPF record

The four SPF faults that actually stop mail being authenticated, and what to do about each one.

Free. No signup. A full scan runs every check, not just this one.

More than one SPF record

Merge them into one. Take every mechanism from both records, remove duplicates, and keep the gentler of the two all qualifiers — if one record ends -all and the other ~all, use ~all. Two records means at least one sender list was incomplete, and a hardfail on an incomplete list rejects real mail. Publish the merged record first, then delete the other one. Doing it the other way round leaves a window with no SPF at all.

Over ten DNS lookups

You cannot fix this without deciding which senders you still use, and that is a question about your business rather than your DNS. Work through the includes and ask, for each one, whether that platform still sends mail as your domain. An old helpdesk, a marketing tool nobody renewed, a CRM replaced two years ago — each is costing you lookups and authorising a system that should no longer be able to send as you.

Resist flattening. Replacing an include with the IP ranges it currently resolves to fixes the count today and creates a silent failure later, when the provider changes ranges and your record still lists the old ones.

Syntax errors and dead includes

One malformed term, or one include pointing at a domain that no longer publishes SPF, makes the entire evaluation permerror. Both are quick to fix once you know which term is at fault, which is what the scan tells you.

Ending in +all

+all tells every receiver that any server on the internet may send mail as your domain. It is almost always a mistake — someone testing, or a copied example. Change it to ~all, keeping every other mechanism exactly as it is.

Publishing safely

Lower the TTL on the record a day before if you can, so a mistake is quick to reverse. Write down the current value before you change it. Publish, wait, then check what is actually resolving rather than trusting the control panel — a record saved as example.com.example.com looks perfectly fine in the panel.

Common questions

Will changing SPF interrupt my mail?

Adding or correcting a record does not interrupt delivery. Removing an include for a system that is still sending will cause that system’s mail to fail SPF, which is exactly why the sender list has to be confirmed rather than guessed.

Should I use -all?

Only once you are confident every system that sends as your domain is listed. Until then ~all gives receivers the same signal without rejecting the sender you forgot about.

Find, explain, repair, verify

The scan is free and complete. If it finds something wrong, the £19 Repair Pack gives you the exact records to publish for your domain and your providers, the order to publish them in, and the previous values so you can undo anything.

Scan your domain

Ruleset 2026.09.14, sources verified 2026-09-14. Methodology.