DMARC t= Tag: Testing Mode (t)
The DMARC t tag (RFC 9989) signals that a domain is in testing mode. Receivers may treat p=reject as quarantine when t=y, enabling softer rollout without changing policy.
Published · Last verified · Maintained by TamingDNS
Optional
t=
n
t=y
✅ Valid Values
y
Testing mode active. Receivers may soften enforcement.
n
Normal enforcement (default). Not testing.
💬 What This Tag Does
Added in RFC 9989 (DMARCbis), the "t" tag signals that the domain is testing its DMARC policy. When set to "y", receivers may apply a less strict treatment. A p=reject policy might be handled as p=quarantine. This replaces the role that pct= served for gradual rollouts, without the complexity of percentage-based sampling.
📋 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=quarantine; rua=mailto:dmarc-feedback@example.com,mailto:tld-test@thirdparty.example.net; t=y
The testing record from RFC 9989 Appendix B.2.5. The policy reads quarantine, and while t=y stands receivers are asked to apply none.
v=DMARC1; p=reject; t=y; rua=mailto:dmarc-feedback@example.com
Reject on paper, quarantine in practice. Testing mode drops the applied policy exactly one level, so this is how you rehearse reject without the bounces.
v=DMARC1; p=reject; rua=mailto:dmarc-feedback@example.com
This is the same domain once testing is over. Removing t=y is the whole change, and the policy you were already advertising starts being applied.
v=DMARC1; p=none; t=y; rua=mailto:dmarc-feedback@example.com
No effect. The tag has nothing to soften when the policy is already none, and it never changes whether reports are sent.
📚 RFC References
🔗 Related DMARC Tags
🛡️ 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.