How do you set up DMARC on Cloudflare?

Updated July 3, 2026

To set up DMARC on Cloudflare, open your domain in the Cloudflare dashboard, go to DNS → Records, and add a TXT record with the name _dmarc and a value starting with v=DMARC1. Cloudflare publishes DNS changes almost instantly, so the record is usually live within a minute or two.

What you need before starting

  • A Cloudflare account where your domain's nameservers actually point (check with a WHOIS lookup if you're unsure)
  • A DMARC record value (generate one with our free DMARC generator if you don't have one yet)
  • Optional but recommended: SPF and DKIM already configured for your email provider

Step by step

  1. 1

    Open your domain's DNS records

    Sign in at dash.cloudflare.com, click the domain you want to configure, then choose DNS in the left sidebar and open the Records tab.

  2. 2

    Add a new TXT record

    Click Add record. Set Type to TXT.

  3. 3

    Enter the DMARC record

    In the Name field enter _dmarc (Cloudflare appends your domain automatically; don't type the full _dmarc.yourdomain.com). In the Content field paste your DMARC record. Leave TTL on Auto. TXT records have no proxy toggle, so there is nothing to change there.

    Host _dmarcType TXT
    v=DMARC1; p=none; rua=mailto:[email protected]; fo=1
  4. 4

    Save the record

    Click Save. Cloudflare's DNS updates propagate within seconds to a couple of minutes.

  5. 5

    Verify it's live

    Run your domain through our free DMARC checker. If the record shows up and parses cleanly, you're done. The first aggregate reports typically arrive within 24-48 hours.

Check that it worked

Our free checker reads your DMARC record live and explains every tag. Run it after the record saves.

Open the DMARC checker →

Common mistakes

Adding the record at your registrar instead of Cloudflare

Once your domain uses Cloudflare nameservers, only Cloudflare's DNS records matter. A DMARC record added at GoDaddy, Namecheap, or wherever you bought the domain is invisible to receivers.

Adding a second DMARC record instead of editing the first

Search the Records list for _dmarc before adding. If one already exists, edit it. Two DMARC records at the same name means receivers ignore both.

Pasting the value with surrounding quotes

Paste the value without quotes around it. Cloudflare handles quoting internally. Doubled quotes are a common reason a record fails to parse.

Frequently asked questions

Does the Cloudflare proxy (orange cloud) affect DMARC?
No. The proxy only applies to web traffic on A, AAAA, and CNAME records. TXT records like DMARC are always served as plain DNS.
How long does a Cloudflare DNS change take?
Cloudflare publishes changes to its network within seconds. Receivers that cached the old answer may take up to the previous TTL to see the new record, but for a brand-new record it's effectively instant.
Can Cloudflare create the DMARC record for me?
Cloudflare offers a DMARC Management feature that can insert a record with a Cloudflare-managed reporting address. It works, but if you want reports sent to your own tool, add the TXT record manually as shown above.

The record is step one. The reports are the point

Publishing p=none starts a stream of XML reports about everyone sending as your domain. DMARCPath turns them into a plain-English dashboard and walks you to full protection at p=reject. One domain free.

Monitor this domain free →