Documentation

Learn how to integrate and use DDMARC.

10 minutesEssential

DMARC Setup Guide

Complete guide to setting up DMARC for your domain, from initial deployment to full enforcement.

What is DMARC?

DMARC (Domain-based Message Authentication, Reporting & Conformance) is an email authentication protocol that builds on SPF and DKIM. It allows domain owners to specify how receivers should handle emails that fail authentication checks.

DMARC Record Syntax

A DMARC record is a TXT record published at _dmarc.yourdomain.com. Here's an example of a complete DMARC record:

Shape of a fully deployed record (placeholders — do not publish this)
v=DMARC1; p=reject; sp=reject; rua=mailto:your-rua-token@rua.ddmarc.com; ruf=mailto:your-ruf-token@ruf.ddmarc.com; fo=1; adkim=r; aspf=r; pct=100

Copy your record from the dashboard, not from this page

The rua and ruf mailboxes above are placeholders. DDMARC generates a unique token per domain and routes incoming reports by reading that token, so the address in your record belongs to your domain alone. Find the real record under Domains → your domain → DNS & Setup. A record copied from an example collects nothing.

The Rotate tokens action on the same page issues fresh tokens and immediately invalidates the old mailboxes — update DNS as soon as you rotate.

Why relaxed alignment (adkim=r / aspf=r)

Relaxed is the DDMARC default and what the setup wizard generates. It lets a subdomain such as mail.example.com satisfy alignment for example.com, which is how most ESPs and transactional senders are set up. Strict alignment (adkim=s; aspf=s) is an optional hardening step — only move to it once your reports show every legitimate source signing with an exact domain match.

TagRequiredDescriptionExample
vRequiredVersion (always DMARC1)v=DMARC1
pRequiredPolicy for domainp=reject
spOptionalSubdomain policysp=quarantine
ruaOptionalAggregate report URIrua=mailto:dmarc@example.com
rufOptionalForensic report URIruf=mailto:forensic@example.com
pctOptionalPercentage of messages to apply policypct=100
adkimOptionalDKIM alignment mode (r=relaxed, s=strict)adkim=r
aspfOptionalSPF alignment mode (r=relaxed, s=strict)aspf=r
foOptionalFailure reporting optionsfo=1
rfOptionalReport formatrf=afrf
riOptionalReport interval in secondsri=86400

DMARC Policies

The policy tag (p=) tells receivers what to do with emails that fail DMARC:

p=noneMonitor Only

Take no action, just collect reports. Use this to start monitoring without affecting delivery.

p=quarantineQuarantine

Mark failing emails as suspicious (usually sent to spam folder). Intermediate step before full enforcement.

p=rejectReject

Reject failing emails outright. Maximum protection - unauthorized emails won't be delivered.

Recommended Deployment Path

We recommend a phased approach to DMARC deployment. This minimizes risk while you identify and configure all your legitimate email sources.

1

Monitor

2-4 weeks

p=none

Deploy DMARC in monitoring mode to collect data without affecting email delivery.

Checklist:

  • Add the domain in DDMARC — this mints the RUA/RUF tokens your record needs
  • Publish the generated DMARC record with p=none
  • Identify all legitimate sending sources
  • Document third-party email services
2

Analyze & Fix

2-4 weeks

p=none

Review reports, configure SPF/DKIM for all senders, and fix alignment issues.

Checklist:

  • Review aggregate reports in DDMARC
  • Add SPF records for all legitimate senders
  • Enable DKIM signing on all email sources
  • Fix any alignment issues found in reports
3

Quarantine

2-4 weeks

p=quarantine

Start filtering suspicious emails while monitoring for false positives.

Checklist:

  • Update policy to p=quarantine
  • Start with pct=10 and gradually increase
  • Monitor quarantine rates and investigate failures
  • Review forensic reports for issues
4

Enforce

Ongoing

p=reject

Full enforcement. Unauthorized emails are rejected completely.

Checklist:

  • Upgrade to p=reject
  • Remove pct tag (defaults to 100%)
  • Configure MTA-STS for transport security
  • Enable BIMI for brand recognition
Professional and above

Automate this path with Policy Rollouts

Rather than editing DNS by hand at each phase, DDMARC can drive the progression for you from the domain's Policy tab. Pick a template and the rollout advances on schedule, with safety gates that pause it if your pass rate drops or report volume is too thin to judge.

  • Standard — the conservative none → quarantine → reject path above
  • Gradual — steps the percentage through pct=10, pct=50, pct=100 before moving policy
  • Fast — for domains whose senders are already fully authenticated

On the same tier, DDMARC can host the DMARC record itself: point _dmarc.example.com at example.com.dmarc.ddmarc.com with a CNAME once, and every later policy change publishes without another DNS edit.

Common Issues

  • Third-party senders: Marketing platforms, CRMs, and other services need SPF/DKIM configured
  • Email forwarding: Forwarded emails may break SPF — ARC preserves the original authentication result. DDMARC monitors ARC chains from Growth upward.
  • Subdomain policy: Don't forget to set sp= for subdomains

Next Steps