Defaults.Exposed

Defaults.ExposedReports

DMARC vs SPF: What's the Difference, and Which Do You Need? (2026)

Published · updated

Figures as of 2026-07-28 · methodology v8. Aggregate census data across 276 million graded domains. “Enforcing” means a DMARC policy of quarantine or reject. See how we grade.

Part of the DMARC pillar — DMARC adoption, maturity and league tables, measured across the whole census.

You need both — SPF first, then DMARC — because they answer different questions. SPF is a list: which servers are allowed to send email for my domain? DMARC is a policy: what should receivers do with a message that fails authentication — and how do I find out it happened? Neither replaces the other. SPF without DMARC leaves your visible “From” address forgeable; DMARC without SPF (or DKIM) has nothing to enforce. The census shows how often the two get confused: as of 2026-07-28, 51.25% of 276 million graded domains publish SPF, but only 11.84% enforce DMARC — a gap of tens of millions of businesses that did step one and believe they’re done.

What SPF actually does

SPF (Sender Policy Framework) is a single DNS TXT record that lists the servers allowed to send mail for your domain — your mailbox provider, your newsletter tool, your CRM. When a mail server receives a message claiming to come from you, it checks whether the server that delivered it is on your list.

Two details matter here, because they define SPF’s limits:

SPF is necessary plumbing. It is not, on its own, protection — a point the data makes bluntly: 30.9% of all domains publish SPF but have no DMARC at all (the false-security gap, measured).

What DMARC actually does

DMARC (Domain-based Message Authentication, Reporting and Conformance) sits on top of SPF and DKIM and adds the three things they’re missing:

  1. It protects the address people see. DMARC requires alignment: the domain that passed SPF or DKIM must match the domain in the visible “From” header. This closes the gap SPF leaves open — an attacker can no longer pass SPF on their own infrastructure while displaying your name.
  2. It tells receivers what to do on failure. Your DMARC record publishes a policy: p=none (deliver anyway, just report), p=quarantine (spam folder), or p=reject (refuse it). This is the enforcement layer SPF never had.
  3. It reports back to you. Receivers send you aggregate reports showing who is sending as your domain — legitimate and otherwise. It’s the only one of these standards with a feedback loop, and it’s how you tighten the rest safely.

The catch: DMARC only protects at quarantine or reject. A record parked at p=none monitors and does nothing else — p=none is not protection. As of 2026-07-28, 74.19% of domains have no DMARC record, 13.96% sit at monitor-only, and just 11.84% enforce.

SPF vs DMARC, side by side

SPFDMARC
What it isA list of servers allowed to send for your domainA policy for what happens when authentication fails
The question it answers”Did this come from an approved server?""Does the visible sender match who authenticated — and if not, what now?”
What it checksThe envelope sender (Return-Path) — invisible to the readerAlignment between SPF/DKIM and the “From” address people see
On failureSuggests an outcome (-all/~all); receiver decidesInstructs an outcome you chose: none / quarantine / reject
Reporting back to youNoneAggregate reports on everyone sending as your domain
Survives forwardingOften breaks — the forwarder isn’t on your listYes, when DKIM alignment holds (signatures travel with the message)
Stops visible-From impersonation aloneNoYes — at quarantine or reject, with SPF/DKIM underneath
Adoption (2026-07-28)51.25% publish11.84% enforce

The one-line summary: SPF authenticates a path; DMARC protects an identity. Receivers weigh SPF as one signal among many. DMARC at enforcement is a decision.

Why SPF alone fails

Three structural reasons, not implementation bugs:

The From-header gap. SPF never inspects the “From” line. A scammer sends from scammer-domain.com infrastructure with your company in the visible From field: SPF checks their envelope domain against their SPF record, passes cleanly, and the forgery lands looking authentic. Only DMARC’s alignment requirement catches this — which is why email spoofing remains routine against SPF-only domains, and why 88.16% of graded domains can still be impersonated.

Forwarding. When someone auto-forwards your mail (an old address to a new one, a distribution alias), the forwarding server delivers it — and that server isn’t in your SPF record, so SPF fails on entirely legitimate mail. This isn’t misconfiguration; it’s how forwarding works. DKIM signatures survive forwarding, which is why DMARC (passing on either aligned SPF or aligned DKIM) handles it and raw SPF can’t. Details: forwarding breaks SPF.

No consequences, no feedback. Even a perfect SPF record with -all relies on each receiver choosing to act, and tells you nothing about what’s being sent in your name. DMARC turns that into an explicit instruction plus a report.

Which order to deploy

The order matters because DMARC consumes what SPF and DKIM produce. Deploy top-down:

  1. SPF first. Publish one TXT record listing every legitimate sender, ending ~all while you verify, -all once complete. Fix SPF.
  2. DKIM second. Turn on signing with your mail provider — it’s what keeps authentication intact through forwarding. Fix DKIM.
  3. DMARC at p=none, with reporting. Publish v=DMARC1; p=none; rua=mailto:... and actually read the reports — a surprising number of domains publish DMARC blind, with no reporting address at all. Provider steps: Google Workspace · Microsoft 365.
  4. Tighten to quarantine, then reject once reports show your legitimate mail passing. This step is the protection; everything before it is preparation. The safe progression.

Skipping ahead breaks things in both directions. DMARC-before-SPF/DKIM quarantines your own legitimate mail. SPF-and-stop — the most common end state, 30.9% of all domains — leaves the visible From address open. Only 2.79% of domains complete all the steps.

The honest edge cases

Frequently asked questions

Is DMARC the same as SPF? No. SPF is a list of approved sending servers, checked against an address the reader never sees. DMARC checks that whoever authenticated matches the visible “From” address, applies your chosen policy on failure, and reports back to you.

Do I need DMARC if I already have SPF? Yes. SPF alone doesn’t protect the visible From address — 30.9% of domains have SPF and no DMARC, and they remain forgeable. SPF is a prerequisite for DMARC, not a substitute.

Can I use DMARC without SPF? Technically yes, if DKIM is in place — DMARC passes on either aligned mechanism. In practice you want both underneath: SPF catches what DKIM misses and vice versa (forwarding being the classic case where only DKIM survives).

Which should I set up first? SPF, then DKIM, then DMARC at p=none with reporting, then enforcement. DMARC needs the first two working before you can safely tighten it.

Does either cost money? No — SPF, DKIM and DMARC are all free DNS records. The investment is care and sequence, not budget. (Reading DMARC reports is easier with a free or paid report viewer, but the protection itself costs nothing.)

Check where your domain stands

Most domains have the list and not the lock. Check yours free and private — you’ll see your SPF, DKIM and DMARC status together, and which step is next.

Check your domain → · Fix SPF → · Fix DMARC → · How we grade → · Aggregate data only. Data stored and processed in the EU.