What is the risk of my Domain? - Free Instant DMARC Record Scan.
Enter your domain to immediately see if you are susceptible to spoofing, phishing or deliverability issues.
Without DMARC, you're vulnerable to email spoofing. Phishing emails can be sent from your domain, damaging your reputation and putting customers at risk.
DMARC (Domain-based Message Authentication, Reporting & Conformance) tells receiving mail servers how to handle messages that fail SPF/DKIM checks.
You gain visibility via aggregate reports. DMARCFlow visualizes them so you can see who sends on your behalf.
Your trusted solution for email authentication, monitoring, and protection.
Instantly validate your domain's DMARC record to uncover weaknesses and improve protection.
Generate, test, and analyze DKIM records to ensure messages are signed and verified.
Simplify and flatten complex SPF records to avoid DNS lookup limits.
Strengthen brand visibility by displaying your verified logo in inboxes.
Scan for threats and misconfigurations to keep your email infrastructure secure.
See how your domain security changes with and without DMARC protection.
Stay in control, stay protected, and stay trusted.
Explore a complete set of tools built to strengthen your email security and safeguard your domain
What each DMARC policy and alignment status means — and what action to take.
The email passed DMARC. Either SPF or DKIM (or both) aligned with the From: domain, and a valid DMARC policy exists. Your domain is properly authenticated for this message.
Neither SPF nor DKIM alignment passed. Your DMARC policy applies: p=none means the email is still delivered (but logged), p=quarantine sends it to spam, p=reject blocks it outright. Review which sending sources are failing alignment.
Monitor-only mode. Your DMARC record exists but makes no enforcement decision. Emails that fail alignment are still delivered. This is a starting point — use it to review aggregate reports before moving to enforcement. Do not stay here permanently.
Failing emails are sent to spam/junk. This is a transitional enforcement step. Good for catching remaining alignment issues with real traffic before moving to full rejection. Move to p=reject once your DMARC reports show a clean pass rate.
Full enforcement. Emails that fail DMARC alignment are rejected outright — they never reach the recipient's inbox. This is the target state. It provides the strongest protection against domain spoofing and phishing.
No DMARC TXT record found at _dmarc.yourdomain.com. Your domain has no DMARC policy — it is completely unprotected against spoofing. Publish a DMARC record immediately, even starting with p=none to begin collecting reports.
The most frequent reasons DMARC fails — based on what DMARC aggregate reports actually show.
When you send email through a CRM, marketing platform, or helpdesk, that service sends from its own mail servers. SPF may pass for the service's domain, but the Return-Path domain doesn't match your From: domain — so SPF alignment fails.
Fix: Configure DKIM signing with your own domain on every third-party sender. DKIM alignment is typically easier to achieve than SPF alignment for external services.
Email forwarding rewrites the envelope sender, breaking SPF alignment. The original DKIM signature may also be invalidated if the message body is modified. This generates DMARC failures in your aggregate reports even though the original sender is legitimate.
Fix: Ensure DKIM is configured with relaxed canonicalization. DKIM survives forwarding when the body is not modified. You can also use the pct tag to apply policy to a percentage of mail while diagnosing forwarding sources.
A DMARC record at _dmarc.yourdomain.com applies to the root domain. Subdomains (mail.yourdomain.com, newsletter.yourdomain.com) are only covered if you explicitly add sp=reject or publish their own DMARC records.
Fix: Add sp=reject to your root DMARC record, or publish dedicated DMARC records for actively used subdomains. Unused subdomains that could be spoofed should have their own p=reject records.
If your DMARC record has a rua= tag but you're not receiving aggregate reports, either the email address is wrong, the receiving mailbox is rejecting reports, or a cross-domain authorization record is missing (_dmarc record at the receiving domain).
Fix: Verify the rua address is correct and active. If reports go to a different domain (e.g., a monitoring service), ensure that domain has published a _dmarc authorization record. DMARCFlow handles this automatically.
Everything you need to know about DMARC checking