Mistakes to avoid when writing a DMARC record
A DMARC record is short, but a few mistakes either stop your own mail or leave you blind. Each one below with how to avoid it.
p=reject on day one
Why. Newsletters, invoices or a helpdesk that are not aligned yet are refused at once, and you only learn it from customers.
Fix. Start at p=none with a rua address, and move on only when the reports show every legitimate source passing.
The record at the wrong name
Why. Published on the domain itself, or as _dmarc.example.com.example.com because the panel appends the zone: checkers then say No DMARC record found.
Fix. Name it _dmarc only; the panel adds the domain. Check it with the DMARC checker after publishing.
A report address without mailto:
Why. rua=dmarc@example.com is not valid: receivers send no report.
Fix. Write rua=mailto:dmarc@example.com. The generator adds mailto: for you.
Reports to another domain without its authorisation
Why. Receivers send reports to another domain only if it has published <your domain>._report._dmarc.<its domain>: otherwise they are silently dropped.
Fix. Use an address on your own domain, or a service that publishes the authorisation record for you.
Staying at p=none for years
Why. The record exists and reports flow, but forged mail is still delivered: checkers report DMARC policy not enabled.
Fix. Once the reports are clean, move to quarantine, then to reject. Perimetry Cloud tells you when each step is safe.
Strict alignment too early
Why. adkim=s or aspf=s fails services that sign or send with a subdomain, such as mail.example.com, although they are yours.
Fix. Keep relaxed alignment until the reports show that every source uses the exact domain.