Skip to content
Email deliverability

DMARC

Federico DonatoneBy · Updated October 15, 2026
Definition

DMARC (Domain-based Message Authentication, Reporting and Conformance) is a DNS record that tells receiving mail servers what to do with email that uses your domain but fails authentication: deliver it, send it to spam or block it. It builds on SPF and DKIM and sends you reports on who is sending email as your domain.

What is DMARC used for

DMARC does two jobs. First, it protects your domain from spoofing, where someone sends email that pretends to come from you. Without DMARC, a receiver that sees SPF or DKIM fail has no instruction from you and decides on its own. Second, it gives you visibility: aggregate reports list the servers sending email as your domain and whether they passed, so a forgotten tool or an impostor shows up quickly.

It is also a requirement at volume. Google's email sender guidelines require SPF, DKIM and DMARC from anyone sending 5,000 or more messages a day to Gmail, along with one-click unsubscribe and a spam complaint rate under 0.3%.

How DMARC works

DMARC adds one rule on top of SPF and DKIM: alignment. A message passes DMARC when SPF or DKIM passes and the domain that passed matches the domain in the From line the reader sees. On their own, SPF and DKIM can pass for a different domain than the one shown to the reader. Alignment closes that gap.

TXT_dmarc.example.comv=DMARC1; p=quarantine; rua=mailto:dmarc-reports@example.comv=DMARC1 marks the record, p=quarantine sends failing mail to spam, and rua= is the address that receives aggregate reports.

growthcab.com runs this setup: a DMARC policy of p=quarantine with aggregate reports turned on (checked October 15, 2026).

Aggregate reports arrive as XML files from each receiving provider. They are hard to read raw, so many teams route them to a DMARC report reader that groups results by sending source. Look for two things: your own tools failing alignment, which you fix, and unknown servers sending as you, which your policy should stop.

DMARC vs SPF vs DKIM

SPFDKIMDMARC
What it checksWhich servers may sendA signature on each messageThat SPF or DKIM passed for the From domain
Where it livesTXT at the domainTXT or CNAME at selector._domainkeyTXT at _dmarc
Survives forwardingOften notUsuallyYes, through DKIM
Tells receivers what to doPartly, with ~all or -allNoYes, with the p= policy
Sends you reportsNoNoYes, with rua=

You need all three. SPF and DKIM prove identity, and DMARC ties that proof to the address the reader sees.

DMARC policies and how to roll them out

DMARC has three policies (RFC 7489): p=none only monitors, p=quarantine asks receivers to send failing mail to spam, and p=reject asks them to block it. Move through them in order:

  1. Publish SPF and DKIM for every service that sends as your domain.
  2. Add a DMARC record with p=none and an rua address, then read the reports for a few weeks.
  3. Fix every legitimate sender that fails alignment, usually a CRM or marketing tool signing with its own domain.
  4. Move to p=quarantine once your own mail passes consistently.
  5. Move to p=reject when the reports show only impostors failing.

Our free cold email domain checker reads your DMARC record along with SPF and DKIM. For alignment problems that survive these steps, our email deliverability consultant service works from message headers and DMARC reports. The cold email deliverability checklist covers the rest of the sending setup.

Full guideEmail Deliverability Consultant for B2B Outbound

DMARC FAQ

Is DMARC required?
For bulk senders to Gmail, yes. Google's email sender guidelines require SPF, DKIM and DMARC from anyone sending 5,000 or more messages a day to Gmail accounts. For smaller senders it is optional but cheap: the record takes minutes to publish, and the reports alone are worth it.
Which DMARC policy should I use?
Start with p=none to collect reports without affecting delivery. Move to p=quarantine once every legitimate sender passes, and to p=reject when you are confident only impostors are failing. Staying on p=none forever gives you reports but no protection.
Why does DMARC fail when SPF passes?
Usually because of alignment. SPF can pass for the sending service's own bounce domain while the From line shows your domain, and DMARC needs the two to match. Fix it by turning on DKIM signing with your own domain in that service, or by setting a custom return path on your domain.

Related terms

Want these systems running inside your sales team?

Growth Cab is a go-to-market consulting firm for B2B tech companies selling $50,000+ deals. We build the outbound, LinkedIn and closing systems.

Apply to GC GTM Glossary