DMARCmetric

Add a DMARC record in Cloudflare

Updated 2026-09-27 · Setup Guides

Cloudflare is one of the easiest places to publish a DMARC record: changes go live in seconds and the record editor does the right thing with underscored names. Here's the exact record, the exact steps, and the handful of mistakes that account for nearly every "I published it but it doesn't work".

These steps apply when the domain uses Cloudflare's nameservers — which it does if the zone shows as Active in your Cloudflare account. A domain merely registered elsewhere and never moved onto Cloudflare DNS needs its record published wherever its nameservers actually point.

The record you're publishing

FieldValue
TypeTXT
Name_dmarc
Contentv=DMARC1; p=none; rua=mailto:…
TTLAuto

The Content value is your DMARC policy. If you're setting up monitoring with DMARCmetric, Add your first domain generates the full value for you, including your workspace's unique rua= reporting address — copy it from the wizard with the copy button rather than retyping it. p=none is the right starting policy: it monitors everything and blocks nothing.

The steps below add a new record, for a domain with no DMARC record yet. If _dmarc already has one, don't add another — edit the one you have instead.

Step by step

  1. Sign in at dash.cloudflare.com and select the zone (domain) you're adding the record to.
  2. Open the zone's DNS → Records section.
  3. Press Add record.
  4. Set Type to TXT.
  5. In Name, type _dmarc — just that. Cloudflare appends the zone automatically, so _dmarc becomes _dmarc.example.com. Some DNS panels double the domain if you paste the full name; Cloudflare normalises it, but the bare label is the documented form.
  6. In Content, paste your v=DMARC1; … value.
  7. Leave TTL on Auto and press Save.

One Cloudflare-specific note: the orange-cloud proxy toggle you see on other records doesn't apply here. Proxying is for web traffic (A, AAAA, CNAME records); TXT records are always served as plain DNS, so there is no proxied-versus-DNS-only decision to make and nothing Cloudflare's proxy can interfere with.

Cloudflare's own nameservers answer with the new record almost immediately — one of the perks of managing DNS there. Resolvers elsewhere may hold a cached "no such record" answer briefly, but with a fresh name like _dmarc that's rarely more than minutes.

If you already have a DMARC record

A domain can have only one DMARC record, so don't press Add record — change the one that's there. Never add a second _dmarc record next to the old one: with two, email providers ignore both.

  1. In the zone's DNS → Records list, find the existing TXT record at _dmarc.
  2. Edit that record.
  3. What you change depends on what DMARCmetric shows you — check which of these two it is before you touch anything:
    • If DMARCmetric shows only an address (mailto:rua+…, shown when it couldn't read your DNS at that moment), don't replace anything. Add that address to your existing rua= tag, separated by a comma. If the record has no rua= tag, add one: rua= followed by the address, separated from the tag before it by a semicolon. Leave your policy and every other tag as they are.
    • If DMARCmetric shows a full record (starting with v=DMARC1), replace the record's whole Content with it. That value is built from your existing record: your policy and tags are kept, and it includes your DMARCmetric reporting address.
  4. Save the record.

If there are several. If the list shows more than one TXT record at _dmarc that starts with v=DMARC1, delete the extras and keep one, then change the one you keep exactly as in step 3: if DMARCmetric shows a full record, that record becomes its Content; if it shows only an address, add the address to its rua= tag. Until only one is left, receivers treat the domain as having no DMARC policy at all.

Verify it's live

From a terminal:

dig TXT _dmarc.example.com +short

You should see your v=DMARC1; … value echoed back in quotes. No terminal handy? Run your domain through the free DMARC checker — it fetches the live record and validates the syntax, which dig won't do. And if you added the record as part of DMARCmetric onboarding, press Verify DNS in the wizard; Verify your domain explains each result it can give you.

Common mistakes

That's the entire job. If some of your domains live at other providers, the same record works everywhere — the GoDaddy walkthrough covers that panel's quirks.

Still stuck?

We answer every message — usually within one business day.

Email [email protected]