What does “spf=softfail” mean?
The server that sent the message is not in the SPF record, and the record ends in ~all, which asks for the message to be accepted but marked.
Last read from the sources at the foot of this page.
spf=softfail
What does it mean?
SoftFail is a weak statement that the server is probably not allowed. On its own it does not stop a message; DMARC decides what happens.
What exactly does the source say?
softfail (reason): Also known as soft fail. The message source isn't included in the SPF record for the domain, and the domain instructs the destination email system to accept and mark the message (~all).
Why would a small firm see it?
A service you use is missing from the record, or someone sent mail in your name.
How do I fix it?
- List every service that sends mail as your domain: your mailboxes, your invoicing or accounting tool, your booking system, your newsletter tool, your website's contact form.
- Find each service's SPF include in its own help pages.
- Send yourself a message through the service and open its headers.Look for spf=pass.
Keep one SPF record. Add the service inside the one record you have, before its last word, and keep every service already in it. A second SPF record makes the check fail for every message.
An SPF record may make at most 10 DNS lookups. Each include counts, and so do the includes inside it. Past 10 the check fails, so take out services you no longer use before adding a new one.
What else do the sources say?
spf=<pass (IP address)|fail (IP address)|softfail (reason)|neutral|none|temperror|permerror> smtp.mailfrom=<domain>
A "softfail" result is a weak statement by the publishing ADMD that the host is probably not authorized. It has not published a stronger, more definitive policy that results in a "fail".
Where does this come from?
- Microsoft: Email message headers in Microsoft 365learn.microsoft.comRead 14 October 2026
- RFC 7208, Sender Policy Frameworkrfc-editor.orgRead 14 October 2026
See what is open before anyone else does.
We read from outside, find each way in first, and show it with a check anyone can re-run. No access, nothing tested, no obligation.
- We read your firm from outside.
- You see what is open, with the proof for the lead finding.
- If it is worth it, you order.
What happens if you go ahead. More at getleaktrace.com/see-it-first/.
Read the transcript
- 72 hours. One domain. Nothing to install.
- Discover. Every way in, found from outside.
- Validate. Every finding, proven. Dated and checkable by anyone.
- Close. Forged email: one click per step, where we reach your DNS host and you approve it.
- You get the fix for the rest, step by step, and we re-check until it is closed.
- Monitor. On monitoring: email settings, look-alikes and new host names re-checked every hour. Alerts within the hour.
- Every paid assessment is human-verified before release.
- The AI defense layer for businesses. getleaktrace.com/see-it-first/