Validate and analyze DMARC TXT records directly in your browser. Quickly check policy correctness, detect configuration issues, and understand each tag without digging through documentation.
Validation summary
Parsed tags
Normalized record
How to use
- Paste your DMARC TXT record into the input field
- Click Validate record
- Review validation status and detected issues
- Check tag explanations and normalized output
- Copy the corrected record if needed
FAQ
DMARC validation help
A DMARC record is a DNS TXT record that tells receiving mail servers how to handle messages that fail SPF or DKIM checks. It helps prevent spoofing and phishing by enforcing policies and enabling reporting.
Without DMARC, attackers can impersonate your domain more easily.
A minimal valid DMARC record must include:
v=DMARC1(version)p=policy (none,quarantine, orreject)
Example:
v=DMARC1; p=none;
This record enables monitoring without enforcing restrictions.
The pct tag defines what percentage of failing emails the policy applies to.
Example:
v=DMARC1; p=quarantine; pct=5;
This means only 5% of failing messages will be affected.
The tool shows a warning because production setups usually use pct=100 unless you’re gradually rolling out enforcement.
none→ monitoring only (no action)quarantine→ send suspicious emails to spamreject→ block failing emails completely
Example:
v=DMARC1; p=reject;
This is the strictest and most secure configuration.
rua and ruf define where reports are sent:
rua→ aggregate reportsruf→ forensic (failure) reports
Example:
v=DMARC1; p=quarantine; rua=mailto:dmarc@yourdomain.com;
Each value must start with mailto:. Multiple addresses are comma-separated.
This means the syntax is correct, but something may not follow best practices.
Common cases:
pctis less than 100- missing reporting (
rua) - record order is unusual
- unknown or duplicate tags
The tool now shows exactly what to fix and how to improve it.
A common secure configuration looks like this:
v=DMARC1; p=reject; rua=mailto:dmarc@yourdomain.com; pct=100;
This enforces strict protection and enables reporting.
Practical example
Input:
v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com; pct=100;
What you’ll see:
- Validation status (valid or warnings)
- Parsed tags with explanations
- Normalized DMARC record ready to copy
