What does a DMARC checker do?
A DMARC checker performs a live DNS lookup for the TXT record at _dmarc.yourdomain.com and validates it. This tool checks whether the record exists, whether the policy (p=) provides real enforcement, whether aggregate reports are configured (rua=), what percentage rollout is set (pct=), and how SPF and DKIM alignment is configured. The result shows exactly what is correct, what needs improvement, and why.
How do I check my DMARC record?
Enter your domain name (or an email address from that domain) into the checker above and click Check DMARC. The tool queries your DNS in real time via Cloudflare DoH and parses the DMARC TXT record found at _dmarc.yourdomain.com. Results appear within seconds showing your current policy, enforcement level, reporting addresses, and any configuration warnings. No signup, no API key, and no email sending is required.
What is a passing DMARC record?
A strong DMARC record has four key elements: v=DMARC1 as the first tag confirming the record type, p=reject or p=quarantine as the enforcement policy, pct=100 to apply the policy to all failing messages, and a rua= address to receive aggregate reports. A record is considered fully passing when p=reject and pct=100 are both present, giving maximum protection against domain spoofing and phishing. The rua= address enables ongoing monitoring of authentication results.
Why is my DMARC record missing?
A missing DMARC record means no TXT record exists at _dmarc.yourdomain.com in your DNS. This is the most common configuration gap for domains that have set up email but skipped the DMARC step. To fix it, add a new TXT record at _dmarc.yourdomain.com with a value starting with v=DMARC1. Start with p=none to enable monitoring without affecting delivery, then upgrade to quarantine and reject after reviewing your aggregate reports. Most DNS changes propagate within minutes.
What is the difference between DMARC none, quarantine, and reject?
The p= policy tag controls what happens to emails that fail DMARC authentication. 'none' takes no action -- emails are delivered normally and failures are only logged in reports. 'quarantine' routes failing messages to the recipient's spam folder. 'reject' instructs receiving servers to refuse delivery entirely. For real protection against phishing and spoofing, you need p=quarantine or p=reject. p=none is only useful during initial monitoring -- it provides no protection and should not be left in place long-term once reporting confirms legitimate senders are authenticated.
How quickly do DMARC changes take effect?
DNS changes typically propagate within minutes to a few hours for most providers, though TTL settings can extend this to 24-48 hours in rare cases. For most major DNS providers like Cloudflare, Route 53, and Google Cloud DNS, DMARC record changes are visible globally within 5-30 minutes. Once the new record has propagated, receiving mail servers will begin applying the updated policy to incoming messages. Reducing your DNS record TTL to 300 seconds before making changes speeds up propagation.
Can I have multiple DMARC records on one domain?
No. Only one DMARC record is permitted per domain. If multiple _dmarc TXT records exist, most receiving mail servers will treat the result as a DMARC configuration error and behave as if no DMARC record exists -- effectively giving you no protection or enforcement. Check your DNS for duplicate records if this checker reports a DMARC error despite you having published a record. Some DNS providers inadvertently create duplicate records when records are edited rather than replaced.
What is pct= in a DMARC record?
The pct= tag specifies what percentage of failing messages the policy is applied to. For example, pct=10 means only 10% of messages that fail DMARC are quarantined or rejected -- the rest are treated as if the policy were 'none'. This is commonly used during phased rollout. Once you are confident your legitimate email is authenticating correctly, increase pct to 100.
Do I need DMARC even if I do not send email from my domain?
Yes. Parked domains and domains that never send email are frequently used for phishing attacks because they often have no authentication records in place. Adding DMARC with p=reject to a non-sending domain costs nothing and prevents attackers from using your domain name in phishing emails. Pair it with an SPF record of v=spf1 -all (rejecting all senders) and a null MX record to signal that the domain does not send or receive email. This is a critical security step for every domain you own, even inactive ones.
What is the difference between DMARC Checker and DMARC Analyzer?
The DMARC Checker on this page gives you a fast pass/warn/fail assessment of the most important checks for your DMARC record including policy enforcement level, pct value, and presence of reporting addresses. The DMARC Analyzer on a separate page provides a deeper breakdown of every DMARC tag including alignment modes, subdomain policies, report intervals, and failure reporting options. Use the Checker for a quick health check and the Analyzer when troubleshooting a specific configuration or preparing to upgrade your policy.