DMARC Is 14 Years Old and Your Domain Is Still Spoofable
New scans show most company domains never move past monitoring mode — and the broken reporting pipeline explains why.
Email spoofing has had a standards-track fix since 2012. DMARC lets a domain owner publish one DNS record that tells every receiving mail server, "if a message claims to be from us and fails authentication, throw it away." Fourteen years on, the striking thing isn't that adoption is incomplete — it's that most organizations got halfway and stopped.
A fresh scan from CipherCue of 67,336 company domains found 45.1% publish no DMARC record at all, and another 23.3% publish one set to p=none — monitoring mode, which blocks nothing. Only 16.3% reach p=reject. That cohort is CipherCue's own tracked entity set, not a random sample, so treat the digits loosely. But the shape matches everyone else's data. EasyDMARC's 2026 report, drawn from 1.8 million domains, puts overall adoption at 52.1% — and roughly 42% of domains that have a record are parked at p=none. Only about 9% of domains combine an enforcement policy with reporting, the configuration that actually protects a domain while keeping visibility.
Here's the uncomfortable part: a DMARC record at p=none is security theater with a DNS TXT entry. An attacker spoofing invoices@yourcompany.com doesn't care that you're monitoring. For phishing defense, p=none and no record are functionally identical.
The standard shipped without its second half
The usual explanation for the enforcement gap is laziness or ignorance. That's wrong, and it's worth being precise about why, because the real cause is a design problem developers will recognize.
Moving to p=reject safely requires knowing every service that legitimately sends mail as your domain — the marketing platform, the CRM, the ticketing system, the CI server that emails build failures, the HR tool nobody remembers buying. Get one wrong and you've built a self-inflicted denial of service on your own invoices. DMARC's answer to this discovery problem is aggregate (RUA) reports: receiving servers email you daily gzipped XML files describing what they saw.
That feedback loop is where the standard quietly failed. RFC 7489 specified the report format but no consumption story — no standard dashboard, no aggregation service, nothing a human can read. CipherCue's scan surfaced a telling symptom: 10,268 distinct rua= reporting destinations across 26,179 entries, and 79% of those destinations appear exactly once. Translation: thousands of orgs pointed reports at some one-off mailbox — dmarc@company.com, an admin's inbox, a vendor trial that lapsed — where XML piles up unread. The monitoring mode that was designed as a six-week stepping stone became a permanent parking lot, because the step after it demands tooling most teams never set up.
There's a second, structural driver: sender sprawl. In 2012 a company's outbound mail came from its own servers plus maybe one ESP. Today a mid-size SaaS company can easily have fifteen third-party services emitting mail as its domain, each needing DKIM alignment configured on the vendor's side. EasyDMARC's Fortune 500 versus Inc. 5000 split makes the point: the Fortune 500 sit above 80% enforcement, while over half the Inc. 5000 idle at p=none — not because big enterprises are more virtuous, but because they can staff the sender-inventory grind and fast-growing companies accrete SaaS faster than anyone catalogs it.
Mandates work; volunteering doesn't
Fourteen years of data gives us a clean natural experiment, and the result is unambiguous: DMARC enforcement moves when someone with leverage requires it, and barely otherwise.
CISA's Binding Operational Directive 18-01 ordered federal agencies to p=reject by late 2018, and .gov went from laggard to the best-enforced TLD on the internet. Google and Yahoo's bulk-sender rules in February 2024 — DMARC required for anyone sending 5,000+ messages a day — produced the single largest adoption spike in the protocol's history. Microsoft followed for Outlook consumer domains in May 2025. EasyDMARC's year-over-year numbers (47.7% to 52.1%) are largely that mandate wave still propagating.
But notice what the mailbox providers required: a DMARC record, p=none sufficing. They mandated the easy half. That's exactly why the record-but-no-enforcement bucket is now the largest cohort of the protected-on-paper population. The mandates fixed adoption; nobody with leverage has yet mandated enforcement, and the parking lot keeps filling.
What to actually do with your own domains
Check where you stand first — it's one command:
dig +short TXT _dmarc.yourdomain.com
No answer, or p=none, means your domain is spoofable today. The ratchet to enforcement is well-trodden:
- Turn on reporting somewhere you'll actually look. Point
rua=at a parser, not a mailbox. parsedmarc is the open-source standard — it ingests the XML into Elasticsearch or OpenSearch with prebuilt dashboards, and a weekend gets it running. Don't become another of those 8,113 one-off destinations. - Inventory senders for two to four weeks. The reports will surface services you forgot existed. For each legitimate one, configure DKIM signing with your domain (custom domain / CNAME setup in the vendor's dashboard) — DKIM, not SPF, because SPF breaks on forwarding and you'll hit the 10-DNS-lookup limit fast with many vendors.
- Ratchet the policy.
p=quarantine; pct=25, then 100, thenp=reject. Watch the reports at each step. - Mind the footguns. Set
sp=explicitly or your subdomains inherit weaker treatment; mailing lists that rewrite messages will fail DKIM (ARC helps, imperfectly); and any parked domains you own needp=rejectwith empty SPF, because attackers spoof the domains nobody watches.
For a typical org that's one to two months of low-intensity work, most of it waiting on report data and filing vendor-dashboard tickets. That it routinely doesn't happen isn't a technology gap anymore — parsedmarc and a dozen commercial services solved the tooling problem years ago. It's that nothing forces the last mile, and unforced security work loses to the roadmap every quarter.
The likely fix is more leverage, not more awareness. Cyber-insurance questionnaires already ask about DMARC; expect the mailbox providers to eventually tighten "have a record" into "enforce," the way they ratcheted TLS. When that happens the scramble will be real. The teams that spent the boring month now will watch it from the far side of p=reject.
Sources & further reading
- DMARC has been public since 2012 but most company domains still don't enforce it — ciphercue.com
- EasyDMARC Releases 2026 DMARC Adoption Report — easydmarc.com
- Understanding Gmail and Yahoo DMARC Requirements — dmarcian.com
Ji-ho covers the increasingly tangled overlap between cloud architecture and security, drawing on a background as a penetration tester to keep his reporting grounded in real-world attack paths. He never lets a vendor claim go unquestioned and insists that every buzzword come with a proof of concept.
Discussion 0
No comments yet
Be the first to weigh in.