Run a full scan — every category, one report
Our DMARC Checker queries the DNS TXT record at _dmarc.yourdomain.com and parses every tag — policy (p=), subdomain policy (sp=), reporting addresses (rua=, ruf=), alignment modes, and percentage (pct=). Results are returned in seconds with actionable recommendations.
What is DMARC?
DMARC (Domain-based Message Authentication, Reporting and Conformance) is an email authentication protocol published as RFC 7489. It builds on SPF and DKIM to give domain owners control over how receiving mail servers handle unauthenticated email claiming to come from their domain.
A DMARC record is a DNS TXT record published at _dmarc.yourdomain.com. It tells receiving servers: "If an email fails SPF and DKIM alignment checks, do this — monitor it (p=none), send it to spam (p=quarantine), or reject it outright (p=reject)."
DMARC also enables reporting. Domain owners receive daily aggregate reports (rua=) and forensic failure reports (ruf=) from participating mail servers, giving full visibility into who is sending email using their domain.
A DMARC record is a DNS TXT record published at _dmarc.yourdomain.com. It tells receiving servers: "If an email fails SPF and DKIM alignment checks, do this — monitor it (p=none), send it to spam (p=quarantine), or reject it outright (p=reject)."
DMARC also enables reporting. Domain owners receive daily aggregate reports (rua=) and forensic failure reports (ruf=) from participating mail servers, giving full visibility into who is sending email using their domain.
- Prevents domain spoofing and business email compromise (BEC)
- Required by Google and Yahoo for bulk senders since February 2024
- Provides visibility via aggregate and forensic reports
- Works alongside SPF and DKIM — does not replace them
- Protects brand reputation and email deliverability
Why DMARC Matters for Email Security
Email spoofing is one of the most common attack vectors used in phishing, business email compromise, and brand impersonation attacks. Without DMARC, any attacker can send emails that appear to come from your domain with no technical barrier.
Since February 2024, Google and Yahoo now require domains sending more than 5,000 emails per day to have a DMARC record. Failure to comply results in email delivery failures — directly impacting revenue, customer communication, and trust.
Since February 2024, Google and Yahoo now require domains sending more than 5,000 emails per day to have a DMARC record. Failure to comply results in email delivery failures — directly impacting revenue, customer communication, and trust.
- Stops attackers from spoofing your domain in phishing emails
- Required by Google & Yahoo for bulk senders (2024 mandate)
- Protects customers from receiving fake invoices, password resets, and login links in your name
- Provides daily reports showing all sources sending mail as your domain
- Improves email deliverability by proving domain legitimacy
How This DMARC Checker Works
The tool performs a real-time DNS TXT lookup at _dmarc.yourdomain.com and parses the full record.
- Validates the domain input against SSRF and format checks
- Queries the authoritative DNS resolver for TXT records at _dmarc.{domain}
- Parses every DMARC tag: p=, sp=, rua=, ruf=, adkim=, aspf=, pct=, fo=
- Evaluates policy strength and generates pass/warning/fail status
- Returns actionable recommendations based on discovered issues
How to Use the DMARC Checker
- Enter your domain name (e.g., example.com) in the input field
- Click "Check DMARC" to run the lookup
- Review the parsed record — policy, alignment, and reporting addresses
- Check the recommendations section for any issues flagged
- Use the raw record view to see the exact DNS TXT value
Understanding Your DMARC Results
Each tag in a DMARC record controls a specific behavior. Here is what every field means:
| Field / Value | Meaning |
|---|---|
p=none |
Monitor-only mode. Emails that fail DMARC are delivered normally but reports are still sent. Use this first to understand your email ecosystem before enforcing. |
p=quarantine |
Failing emails are sent to the spam/junk folder. An intermediate enforcement step before full rejection. |
p=reject |
Failing emails are rejected outright at the SMTP level. Maximum protection — recommended once you are confident all legitimate email passes. |
sp= |
Subdomain policy. Controls how failing mail from subdomains is handled. Defaults to the main p= policy if not specified. |
rua= |
Aggregate report URI. The email address where daily XML aggregate reports are sent by receiving servers. |
ruf= |
Forensic report URI. The address for per-message failure reports. Note: many providers no longer send these due to privacy concerns. |
adkim= |
DKIM alignment mode. "r" (relaxed) allows org domain matches; "s" (strict) requires an exact domain match. |
aspf= |
SPF alignment mode. "r" (relaxed) or "s" (strict). Controls how the From domain must match the SPF envelope sender. |
pct= |
Percentage of messages the policy applies to. pct=100 means full enforcement. Use pct=10 to gradually roll out enforcement. |
fo= |
Failure options for forensic reports. fo=1 sends a report if any auth mechanism fails (most common). |
Common Problems & How to Fix Them
Best Practices
- Start with p=none to monitor email sources before enforcing any policy
- Set up rua= reporting immediately — you need visibility before enforcement
- Review aggregate reports for at least 2–4 weeks before moving to p=quarantine
- Use a dedicated DMARC report mailbox or a service like Postmark, Valimail, or DMARC Analyzer
- Ensure all legitimate email sources (transactional, marketing, helpdesk) pass SPF and DKIM before enforcing
- Set sp=reject to protect subdomains independently of the main domain policy
- Use pct= to gradually roll out enforcement (start pct=10, increase weekly)
- Set adkim=s and aspf=s (strict alignment) once all senders are confirmed and aligned
- Move to p=reject as the final goal — it is the only mode that truly stops spoofing
Security Recommendations
- Never stay on p=none permanently — it provides zero protection against spoofing
- Audit all third-party email senders (CRMs, marketing tools, ticketing systems) before enforcing
- Ensure every authorized sender passes both SPF and DKIM alignment, not just one
- Do not use ruf= for forensic reports unless you have a privacy-compliant system to receive them
- Check subdomain DMARC with sp=reject — subdomain spoofing is a common attack vector
- Never set pct=0 — this disables enforcement entirely and creates a false sense of security