DMARC p= Tag: Policy (p)

The DMARC p tag sets the policy for mail that fails DMARC checks. "none" monitors only; "quarantine" sends to spam; "reject" blocks the message entirely.

Published · Last verified · Maintained by TamingDNS

Importance
Required
Tag
p=
Default
None
Example
p=reject

✅ Valid Values

none No action taken. Mail is delivered normally. Best for initial monitoring.
quarantine Failing mail is delivered to spam/junk. Intermediate enforcement.
reject Failing mail is rejected at the SMTP level. Strongest protection.

💬 What This Tag Does

The "p" tag is the core of your DMARC record. It tells receiving servers what to do with mail that fails DMARC checks (SPF or DKIM alignment failure). "none" takes no action but allows report collection. "quarantine" places failing mail in the spam/junk folder. "reject" tells the server to refuse delivery entirely.

📋 Complete Example Records

Every one of these is a complete record you can paste as it stands. Each goes in a TXT record at _dmarc.yourdomain.com. Check yours with the DMARC Checker or assemble one in the DMARC Builder.

v=DMARC1; p=none; rua=mailto:dmarc-feedback@example.com

Every deployment starts here. Nothing is blocked, and the reports tell you who is sending as your domain before you decide anything.

v=DMARC1; p=quarantine; rua=mailto:dmarc-feedback@example.com

The middle step, and a recoverable one. Failing mail is treated as suspicious rather than refused, so a sender you forgot is not lost outright.

v=DMARC1; p=reject; rua=mailto:dmarc-feedback@example.com

Full enforcement. The policy covers the domain and all its subdomains unless "sp" or "np" says otherwise.

v=DMARC1; rua=mailto:dmarc-feedback@example.com

A record with no "p" tag still has a policy. RFC 9989 §4.7 says it is read as p=none.

🛡️ Related Tools

Analyse your current DMARC record, build a new one, or read the aggregate reports that tell you whether the policy is safe to tighten.

DMARC Analyser → DMARC Builder → DMARC Report Viewer → SPF Checker →
← All DMARC tags