DNSVerdictAll toolsGuidesHow it works

DMARC Record Checker

Parse and validate the DMARC record at _dmarc.yourdomain per RFC 9989: policy strength, np, t, rua/ruf, alignment modes and external report authorization.

Your query is sent only to the resolver shown; this site keeps no logs.

What this checks

Reads _dmarc.<domain> TXT, validates tags per RFC 9989 §4.7 (DMARCbis; RFC 7489 records are still accepted), walks up to parent domains when the name has no record (DNS tree walk, §4.10) and checks that external report domains authorize your domain (§11.6).

Rates policy strength: none → quarantine → reject. The legacy pct tag was removed in RFC 9989 (App. A.6) and is ignored; use t=y for testing.

If it fails

FAQ

What does p=none do?

Nothing to mail flow — it only requests reports so you can see who sends as your domain.

What are rua and ruf?

rua: aggregate XML reports (daily); ruf: per-message failure reports, rarely sent today.

Relaxed vs strict alignment?

Relaxed accepts subdomains matching the organizational domain; strict requires an exact match.

Does DMARC need both SPF and DKIM?

One aligned pass is enough, but having both avoids failures on forwarding.

Guides

DMARC fails even though SPF and DKIM pass: fixing alignmentMultiple DMARC records: why none applies and how to mergeDMARC p=none to quarantine to reject: a safe rolloutDMARC reports explained: rua, ruf and external addressesDMARC record syntax errors and how to fix themHow to read email headers: Received, SPF, DKIM, DMARCHow to set up a DMARC record, from p=none to p=rejectSet up SPF, DKIM and DMARC for Google WorkspaceSet up SPF, DKIM and DMARC for Microsoft 365Set up SPF, DKIM and DMARC for Zoho Mail

Related tools

MX LookupSPF Record CheckerDKIM Record Checker