Skip to main content
New AI-powered DMARC analysis + open REST API See how →
Foundational 10 min read

How to Set Up DMARC: The Complete Step-by-Step Guide (2026)

Brad Slavin
Brad Slavin CEO
Updated April 14, 2026 | Updated for 2026

Quick Answer

Setting up DMARC takes 5 minutes: verify SPF and DKIM are configured, publish a TXT record at dmarc.yourdomain.com with v=DMARC1; p=none; rua=mailto:your-reports@domain.com, wait 24-48 hours for reports to start flowing, analyze them in DMARC Report

Related: Free DMARC Checker

How to Set Up DMARC: The Complete Step-by-Step Guide (2026)

Try Our Free DMARC Checker

Validate your DMARC policy, check alignment settings, and verify reporting configuration.

Check DMARC Record →

**Setting up DMARC takes 5 minutes: publish a DNS TXT record at _dmarc.yourdomain.com with your chosen policy and reporting address, and aggregate reports start arriving within 24-48 hours. DMARC (RFC 7489) builds on SPF and DKIM to tell receiving mail servers what to do when authentication fails — without it, failed authentication has no consequence.

Since Google’s and Yahoo’s February 2024 bulk sender requirements, DMARC is mandatory for any domain sending 5,000+ messages per day. Microsoft followed with enforcement from May 2025. This is no longer optional.

What Do You Need Before Setting Up DMARC?

DMARC requires at least one of these to be configured first:

As of 2025, DMARC is mandatory under multiple compliance frameworks. CISA BOD 18-01 requires p=reject for US federal domains. PCI DSS v4.0 mandates DMARC for organizations processing payment card data as of March 2025. Google and Yahoo require DMARC for bulk senders (5,000+ messages/day) since February 2024, and Microsoft began rejecting non-compliant email in May 2025. The UK NCSC, Australia’s ASD, and Canada’s CCCS all mandate DMARC for government domains. Cyber insurers increasingly require DMARC enforcement as an underwriting condition.

  • SPF — a TXT record listing which IPs can send from your domain (check yours →)
  • DKIM — cryptographic signatures on outgoing messages (check yours →)

You need at least one, but both is strongly recommended. DMARC passes if EITHER SPF or DKIM passes AND aligns with the From domain.

Step 1: Verify Your SPF and DKIM

Before touching DMARC, verify both protocols are working:

  1. Run the free SPF checker — confirm your record exists and is under the SPF 10-lookup limit (RFC 7208 — Sender Policy Framework (SPF))
  2. Run the DKIM inspector — confirm selectors are published for your email providers

If either is missing or broken, fix it first. DMARC without SPF and DKIM is a monitoring-only shell.

Step 2: Generate Your DMARC Record

Use the free DMARC Record Generator or build it manually:

**Minimal record (monitoring only):

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

**Recommended record (monitoring with forensics):

v=DMARC1; p=none; rua=mailto:dmarc-reports@yourdomain.com; ruf=mailto:dmarc-forensic@yourdomain.com; fo=1

The fo=1 tells receivers to send a forensic report for ANY authentication failure (not just when both SPF and DKIM fail).

Step 3: Publish the Record in DNS

  1. Log into your DNS provider (GoDaddy, Cloudflare, Namecheap, AWS Route 53, etc.)
  2. Create a new **TXT record 3. Host/Name: _dmarc (your provider appends your domain automatically)
  3. Value: paste the DMARC record string from Step 2
  4. TTL: 3600 (1 hour) or your provider’s default
  5. Save

Step 4: Verify the Record

Use the free DMARC checker to confirm:

  • The record is published at _dmarc.yourdomain.com
  • The syntax is valid
  • The policy, alignment, and reporting tags are parsed correctly

Step 5: Monitor and Analyze Reports

Within 24-48 hours, receiving servers will start sending aggregate XML reports to your rua= address. These reports are unreadable in raw form — they’re XML files with hundreds or thousands of lines.

DMARC Report parses these automatically, showing:

  • Every IP address sending email from your domain
  • Whether each source passes SPF, DKIM, and DMARC
  • Which sources are legitimate vs. unauthorized
  • Trend analysis over time

Step 6: Fix Authentication Failures

Review your reports for legitimate senders that fail DMARC:

  • SPF failures: add the sender’s include mechanism to your SPF record
  • DKIM failures: configure DKIM signing in the sender’s admin console
  • Alignment failures: set up a custom return-path domain so SPF aligns with From

Step 7: Enforce — Move from none to reject

Once all legitimate senders pass consistently:

  1. Move to p=quarantine with pct=10 (apply to 10% of failing mail)
  2. Monitor for at least 90 days — check for legitimate mail going to spam
  3. Increase to pct=50, then pct=100
  4. Move to p=reject with pct=10, then ramp to 100%

This gradual approach prevents accidentally blocking legitimate mail during enforcement.

The biggest mistake organizations make is jumping straight to p=reject without monitoring first, says Brad Slavin, CEO of DuoCircle. We’ve seen enterprises block their own CFO’s email because a legacy CRM was sending through an unauthed server nobody knew about. Start at p=none, analyze your reports in DMARC Report for at least a full quarter — you need to catch monthly reports, quarterly statements, W-2 season, and other periodic senders before enforcing. Rushing to p=reject in 2 weeks is how you accidentally block your CFO’s email.

How Long Does DMARC Take to Set Up?

StepTime
Verify SPF/DKIM5 minutes
Generate DMARC record2 minutes
Publish to DNS5 minutes
Wait for propagation5-60 minutes
Wait for first reports24-48 hours
Monitor at p=none90+ days (full quarter minimum)
Move to p=quarantine90 days
Move to p=reject90 days
Total to full enforcement9-18 months

The record itself takes 5 minutes. Full enforcement takes 9-18 months because you need to identify and fix every legitimate sender before blocking unauthorized ones.

Generate your DMARC record now → Check your current DMARC record → Start analyzing reports with DMARC Report →

Sources

Brad Slavin
Brad Slavin

CEO

Founder and CEO of DuoCircle. Product strategy and commercial lead for DMARC Report's 2,000+ customer base.

LinkedIn Profile →

Take control of your DMARC reports

Turn raw XML into actionable dashboards. Start free — no credit card required.