What Is a DMARC Report? Plain-English Guide (2026)

Learn what a DMARC report is, how to read aggregate XML files, and how to move from p=none to p=reject. Free tools, field-by-field breakdown, and FAQ.

6 min readProspeo Team

What Is a DMARC Report - and What Are You Supposed to Do With It?

You set up a DMARC record because Gmail told you to. Now your inbox is filling with .xml.gz files from Comcast, Yahoo, Zoho, and providers you've never heard of. So what is a DMARC report, exactly - a failure alert or routine noise? A sysadmin on r/sysadmin described this exact scenario, unsure whether to panic or ignore them.

Here's the thing: 83.9% of domains don't have a DMARC record at all. If you've got one, you're ahead. Now let's make it useful.

Quick Summary

  • DMARC aggregate reports are daily XML summaries of authentication results for email claiming to be from your domain - not per-message failure alerts. Use a free tool like Postmark or Valimail to read them.
  • Forensic (RUF) reports are dead. Gmail and Outlook don't send them. Don't configure them.
  • Your goal: monitor at p=none for 4-8 weeks, then enforce with p=quarantine then p=reject.

How DMARC Reports Work

A DMARC report is an XML summary sent by receiving mail servers back to you, the domain owner. Every time someone - or something - sends email claiming to be from your domain, the receiving server logs whether it passed SPF, DKIM, and alignment checks. Those results get bundled and delivered to the address in your DMARC record's rua= tag.

DMARC report flow from sender to domain owner
DMARC report flow from sender to domain owner

Two types exist. Aggregate reports (RUA) are the ones that matter: daily summaries covering authentication results for all mail streams that claim your domain, not just failures. Forensic reports (RUF) are per-message failure notifications - and they're functionally extinct. The default reporting interval is 86,400 seconds (24 hours) per RFC 7489. In practice, you'll get one report per receiving provider per day, which adds up fast.

Why DMARC Reports Matter in 2026

Only 14.9% of domains have any DMARC policy at all, based on Red Sift's analysis of 73.3 million domains. But adoption among top domains surged 75% between 2023 and 2025, and enforcement is accelerating.

February 2024 brought Google and Yahoo's bulk sender requirements - DMARC mandatory for anyone sending 5,000+ messages per day. In early 2025, Microsoft followed suit. By late 2025, Gmail began rejecting non-compliant messages at the SMTP level - no more flags, just bounces. And in 2026, PCI DSS v4.0 mandates DMARC for any company handling credit card data.

The window for "I'll get to it later" is closed.

Aggregate vs. Forensic: One Matters, One Doesn't

Aggregate (RUA) Forensic (RUF)
Scope All email claiming the domain Failed messages only
Format XML file Plain text email
Delivery Daily summary Per-message
PII risk None High (headers, body)
Provider support Universal Less than 10% of majors
Actionability High Low

Forensic reports are dead. Gmail and Outlook don't send them. Valimail's Todd Herr has outlined five problems with RUF, and the privacy risk alone should kill them for you.

As Al Iverson explained on Spam Resource, the mechanism creates a bizarre PII chain: person A spoofs your domain to person B, and B's mail provider sends you - the domain owner - a report containing B's personal data. You now have PII for someone you've never interacted with. Even at a 0.1% failure rate, domains sending millions of messages a day generate thousands of RUF reports. Spend zero time here.

Prospeo

DMARC enforcement stops spoofed mail - but it won't help if your outbound list is full of invalid addresses. Prospeo's 5-step verification and 98% email accuracy mean sub-4% bounce rates from day one. No catch-all traps, no spam honeypots, no domain reputation damage.

Protect your domain reputation on both sides of the inbox.

How to Read DMARC Report XML

Here's what a typical aggregate report looks like, trimmed to the key blocks:

DMARC XML field-by-field visual breakdown
DMARC XML field-by-field visual breakdown
<!-- unknown MDX component: feedback -->

The <org_name> field is the receiving server (Google, Yahoo, Comcast) - not your domain. The <source_ip> should match a server you've authorized in your SPF record. If it doesn't, someone else is sending as you.

Here's the critical distinction: <policy_evaluated> shows the DMARC-level verdict after alignment checks, while <auth_results> shows raw SPF/DKIM results. These can differ. An email might pass raw SPF but fail alignment - for example, the Header From domain is marketing.company.net while the DKIM signing domain is marketing.company.com. That's an alignment mismatch, and DMARC will flag it even though an individual check passed. When you're deciding what to fix, <policy_evaluated> is the field that matters.

Free Tools to Parse Reports

Don't read raw XML. These tools do it for you:

Free DMARC report parsing tools comparison chart
Free DMARC report parsing tools comparison chart
Tool Free Tier Limits Paid From Best For
Postmark $0 Unlimited volume, weekly email digests (no dashboard) $14/mo Simplest setup
Valimail $0 No volume limits $19/mo Scale
EasyDMARC $0 1,000/mo, 14-day data $35.99/mo Best dashboard
Dmarcian $0 2 domains, personal $19.99/mo Best docs
MxToolbox Free Spot checks only N/A Quick lookups

Start with Postmark or Valimail - both handle unlimited volume at no cost. In our experience, Postmark's setup takes under two minutes and its weekly email digests are plenty for most small domains. If you need a real-time dashboard, graduate to EasyDMARC. Dmarcian has the best documentation if you want to understand what you're looking at - it was founded by one of DMARC's original authors.

The Enforcement Path: p=none to p=reject

Four steps. Don't skip any.

Four-step DMARC enforcement path from none to reject
DMARC enforcement path from sender to domain owner
  1. Publish p=none with a rua= tag. This turns on monitoring without affecting mail delivery.
  2. Monitor for 4-8 weeks. Identify every legitimate sender failing alignment - your marketing platform, transactional email provider, CRM, support desk. Look for <source_ip> values you don't recognize and cross-reference them against your SPF record.
  3. Fix SPF/DKIM for all authorized senders. This is the actual work. Align every third-party tool that sends on your behalf.
  4. Move to p=quarantine, then p=reject. Once your reports show clean alignment across all legitimate sources, enforce.

Common mistakes: publishing multiple DMARC records on one domain (this invalidates both), jumping straight to p=reject before monitoring, and - the most common - leaving p=none forever. We've seen teams sit on p=none for over a year, convinced they're protected. They aren't. p=none is a security camera with the door unlocked.

Hot take: if your domain sends fewer than 1,000 emails per day and you use a single ESP, you can move to p=reject after two weeks of clean reports. The 4-8 week timeline exists for complex multi-sender environments. Don't let it become an excuse to procrastinate.

Authentication Is Half the Equation

DMARC protects your domain from spoofing. But there's another half to the deliverability puzzle: data quality. Sending to invalid addresses tanks your sender reputation just as fast as authentication failures. We've watched teams nail their DMARC enforcement only to see inbox placement crater because 8% of their list was bouncing. Prospeo's email verification catches invalid addresses with 98% accuracy on a 7-day refresh cycle, keeping bounce rates under control while DMARC keeps your domain authenticated.

If you're troubleshooting bounces while tightening authentication, start with bounce rates and then work through a full email deliverability checklist.

Prospeo

You're investing hours configuring SPF, DKIM, and DMARC to keep your sending domain clean. Don't undermine that work with bad contact data. Prospeo refreshes 300M+ profiles every 7 days - not every 6 weeks - so you're never sending to stale addresses that spike your bounce rate.

Your authentication is dialed in. Now dial in your data.

DMARC Report FAQ

Do I need to read every XML file myself?

No. Use Postmark or Valimail to aggregate and visualize reports automatically. Both free tiers handle unlimited volume and surface only failures worth investigating - ignore the raw XML entirely.

How long should I stay on p=none?

Four to eight weeks for multi-sender domains. Monitor reports, fix SPF/DKIM alignment for every legitimate sender, then escalate to p=quarantine and finally p=reject. Simple single-ESP setups can often enforce within two weeks.

What else affects deliverability besides DMARC?

Bounce rate is the biggest factor after authentication. Sending to invalid addresses damages sender reputation as fast as SPF failures. Verify lists before every campaign - Prospeo's free tier includes 75 email verifications per month.

What's the difference between SPF, DKIM, and DMARC?

SPF verifies the sending server's IP is authorized for your domain. DKIM cryptographically signs message headers to prove they weren't altered. DMARC ties both together with alignment checks and tells receivers what to do when messages fail - none, quarantine, or reject. Skip DMARC if you want, but don't expect the other two to protect you on their own.

SPF vs DKIM vs DMARC layered authentication explained
SPF vs DKIM vs DMARC layered authentication explained
B2B Data Platform

Verified data. Real conversations.Predictable pipeline.

Build targeted lead lists, find verified emails & direct dials, and export to your outreach tools. Self-serve, no contracts.

  • Build targeted lists with 30+ search filters
  • Find verified emails & mobile numbers instantly
  • Export straight to your CRM or outreach tool
  • Free trial — 100 credits/mo, no credit card
Create Free Account100 free credits/mo · No credit card
300M+
Profiles
98%
Email Accuracy
125M+
Mobiles
~$0.01
Per Email