What the DMARC checker tests
- Record exists at
_dmarc.yourdomain.com, and only once. Receivers ignore DMARC entirely when they find more than one record. - Policy (p) is present and valid:
none,quarantineorreject. - Reporting (rua) is set to a
mailto:address so you receive aggregate reports. - Percentage (pct), subdomain policy (sp) and alignment modes (adkim, aspf) hold valid values.
- Inheritance. For a subdomain without its own record, the checker shows the policy inherited from the main domain.
How DMARC works
DMARC builds on SPF and DKIM. A message passes DMARC when it passes SPF or DKIM and the domain that passed matches the domain in the visible From address. This alignment step is what stops spoofing: an attacker can pass SPF for their own domain, but not for yours.
A record that monitors and collects reports looks like this:
v=DMARC1; p=none; rua=mailto:dmarc@example.comOnce reports show all legitimate mail passing, a protective record looks like this:
v=DMARC1; p=reject; rua=mailto:dmarc@example.com; adkim=s; aspf=sA safe path to p=reject
- Publish
p=nonewith aruaaddress. Change nothing else. - Read the aggregate reports for two to four weeks. List every service that sends as your domain: your mailbox provider, marketing platform, CRM, help desk, billing system.
- Fix SPF and DKIM for each legitimate service until it passes with alignment.
- Move to
p=quarantine, optionally withpct=25first, and watch for complaints about missing mail. - Move to
p=rejectwhen quarantine has run cleanly.
Need a record to start with? The DMARC record generator builds one from a few choices.
DMARC and list quality
DMARC protects your domain's identity. It does not protect your reputation from what you send. High bounce rates from old or unverified lists are one of the fastest ways to land in spam even with a perfect DMARC setup. Verify addresses before you send to keep bounces low.