What does a correct DMARC record look like?

Crawvix Editorial Team · Published November 1, 2026 · Last updated November 1, 2026 · 2 min read

A correct DMARC record is one TXT record published at _dmarc.yourdomain, written as tag=value pairs separated by semicolons, starting with v=DMARC1 and followed by p= with none, quarantine or reject. A typical first record is v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com. Only one such record should exist.

Why it matters

Receivers read a DMARC record literally. A misspelt tag, a missing semicolon or a second record can cause the whole thing to be ignored, which leaves your domain unprotected while you believe it is covered. Getting the shape right takes a minute and avoids weeks of confusion.

How to do it

  1. Start with the host name. In your DNS control panel create a TXT record named _dmarc. Some panels want the full name _dmarc.example.com, others add the domain for you.
  2. Put v=DMARC1 first, then p= second. This is the conventional order and the safest.
  3. Add rua= with a mailto: address so reports reach you.
  4. Paste one of these values, changing the domain and address.

Monitoring only, the usual starting point:

v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com

Gradual enforcement, applying quarantine to a quarter of failing mail:

v=DMARC1; p=quarantine; pct=25; rua=mailto:dmarc-reports@example.com

Full enforcement with a separate policy for subdomains and strict alignment:

v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s; rua=mailto:dmarc-reports@example.com
  1. Save, wait for DNS to update, then confirm with dig TXT _dmarc.example.com +short. Use How do I check my DMARC record? for the full check.

What each tag does: v is the version and must be first, p is the policy, sp is the subdomain policy, pct is the share of failing mail affected, rua takes aggregate report addresses, and adkim and aspf set DKIM and SPF alignment to relaxed (r) or strict (s).

Common mistakes

  • Using commas instead of semicolons between tags. Commas are only for separating several report addresses.
  • Putting the record on the bare domain rather than _dmarc.
  • Adding quotation marks yourself in a panel that already adds them, which can produce doubled quotes.
  • Publishing a second record instead of editing the first.
  • Copying the example address without changing it, so reports go to someone else.

Frequently asked questions

Can I put a space after the semicolons?

Yes. Spaces around tags are allowed and make the record easier to read. Stray characters inside a value are not.

Do I have to add every tag?

No. Only v and p are needed. The others have defaults, such as pct=100, relaxed alignment, and subdomains following p when sp is absent.

Do I need rua?

The record is valid without it, but you would receive no reports. See what rua= means.

Want to see how your published records look? Try the free website sample.

In this category

All 100 Quick answers guides