What it does
DMARC (Domain-based Message Authentication, Reporting & Conformance) tells receiving mail servers what to do with messages that fail SPF or DKIM checks, and lets you receive reports about spoofing attempts against your domain.
This is a DNS-only fix, but it depends on SPF and DKIM already being set up correctly — see Fixing SPF Record Issues and Fixing DKIM Record Issues first if you haven't already.
How to fix it
- Add a TXT record on
_dmarc.yourcompany.comwith a value like:v=DMARC1; p=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; fo=1 - Make sure the key tags are set correctly:
p=(policy) — usequarantine(send failing mail to spam) orreject(block it outright). Avoidp=none, which takes no action.rua=— an email address to receive aggregate (summary) reports.ruf=— an email address to receive forensic (per-message failure) reports.fo=— controls when forensic reports are generated. Usefo=1(report if either SPF or DKIM fails) orfo=0(report only if both fail).
- If you're just starting out, it's safest to begin with
p=nonewhile you review the aggregate reports, then move top=quarantineand eventuallyp=rejectonce you're confident all legitimate senders pass. - Save the record, allow time for propagation, and re-run a scan to confirm it passes.
Common pitfalls
- Setting
p=rejectbefore verifying all legitimate senders (marketing tools, CRMs, etc.) pass SPF/DKIM — this can silently block real email. - Leaving out the
fo=tag, which limits the detail in forensic reports. - SPF and DMARC alignment: if DMARC is enabled, your SPF record should ideally end in
-all(hard fail) for DMARC's SPF checks to be meaningful. - Not monitoring the aggregate (
rua) reports once set up — they're only useful if someone actually reviews them periodically.
Help Center