DMARC is the piece of the authentication stack that generates the most anxiety, mostly because the wrong policy setting can genuinely tank deliverability for a domain that's otherwise configured correctly. This guide covers what DMARC checks, why the right starting policy is not the strict one, and when — if ever — that changes for a cold email domain specifically.
Domain-based Message Authentication, Reporting, and Conformance sits above SPF and DKIM rather than replacing either. It doesn't introduce a new authentication mechanism — instead, it requires that at least one of SPF or DKIM not only pass, but also align: the domain verified by that check must match the domain shown in the message's visible From address, not just some technically-related domain.
That alignment requirement is what closes a real gap. Without it, a message could pass SPF because it was sent through a legitimately authorized server for domain-a.com, while the visible From address shows domain-b.com — technically passing SPF, but not actually proving domain-b.com authorized the message. DMARC catches that mismatch, which is largely a phishing/spoofing protection rather than a cold-email-specific concern, but it's now required regardless.
The DMARC record is published as a TXT record at a fixed location: _dmarc.yourdomain.com.
Key fields: v=DMARC1 declares the version. p= is the policy — what receiving servers should do with mail that fails DMARC (none, quarantine, or reject). rua= is the reporting address where aggregate reports get sent — daily summaries of what's authenticating and what isn't across mail claiming to be from your domain. pct= specifies what percentage of failing mail the policy applies to, useful for a gradual rollout of a stricter policy, though it's rarely needed at p=none.
For a domain used for cold email, p=none is not a placeholder to eventually upgrade from — it's the correct long-term policy for most cold email sending domains, not just a cautious starting point. Here's why:
p=none satisfies that requirement completely.Don't jump to p=reject on a cold email domain "for extra deliverability." A strict DMARC policy affects mail that fails alignment, not mail sending quality generally — it won't improve inbox placement for cold outreach, and if your own sending setup ever has a temporary authentication glitch (a DNS change that hasn't propagated, a platform migration mid-transition), p=reject means that mail gets outright rejected rather than just flagged. p=none avoids that failure mode entirely.
There are legitimate cases for a stricter policy, just not the typical dedicated cold-outreach domain scenario:
| Domain type | Recommended policy | Why |
|---|---|---|
| Dedicated cold email sending domain | p=none | Monitoring is sufficient; no meaningful spoofing target |
| Company's primary brand domain (not used for cold email) | p=quarantine → p=reject over time | Protects against phishing that impersonates the company's main identity |
| A domain that's been actively spoofed/phished | p=quarantine, moving toward p=reject | Direct evidence of abuse justifies the stricter policy's risk |
If you do move a domain toward a stricter policy, do it gradually: p=none with monitoring first, then p=quarantine with a low pct value, watching the aggregate reports at each stage to confirm your own legitimate mail isn't the thing getting caught before increasing enforcement.
The rua address receives XML-formatted aggregate reports from participating mail providers (Google, Microsoft, Yahoo, and others), typically daily, summarizing how mail claiming to be from your domain authenticated across their systems. Raw XML is hard to read directly — most operators use a free DMARC report parsing tool or dashboard rather than reading the XML by hand. What to look for: sources sending mail that claims your domain but fails both SPF and DKIM alignment (a sign of either a misconfiguration in your own stack or genuine third-party abuse), and confirmation that your own sending platforms are showing up with passing, aligned results.
For a new cold email domain, expect the first week or two of reports to be sparse or empty simply because volume is low during warmup. Once real sending volume ramps up, a healthy report should show your sending platform's IP ranges passing both SPF and DKIM alignment consistently. If a report shows a source you don't recognize claiming your domain, that's worth investigating before assuming it's automatically malicious — it's sometimes a forwarding service or a tool you forgot was still configured to send on the domain's behalf, rather than genuine spoofing.
rua reporting address entirely. A DMARC record with a policy but no reporting address still functions as a policy, but you lose all visibility into what's actually happening — you're flying blind on whether your own setup is working correctly.Related guides