DMARC Sender CheckGuide

Before you move DMARC to reject: getting every third-party sender aligned

Updated 2026-10-13 · by Hieu Tran, written with AI agents and checked against the sources below

Under p=quarantine or p=reject, mail that fails DMARC is junked or refused. Your own mailboxes are usually fine. What breaks is everything else that sends as your domain: the CRM, invoicing, HR, ticketing, survey and marketing tools. Each one has to authenticate with your domain, not just be listed in SPF.

Free tool: Free sender check: every service your DNS lets send as your domain, which ones lack a DKIM key, SPF's lookup count, and a fix request for each vendor

Enter your domain: the check reads SPF, DKIM keys at the selectors 35 vendors use, and your DMARC record, in your browser, and writes the request each vendor needs.

Why third-party mail fails DMARC

DMARC passes when SPF or DKIM passes and the domain it checked matches (aligns with) the domain in the From address. Most services send with their own bounce address, so SPF passes for their domain, not yours: listing them in SPF isn't enough. The fix that works almost everywhere is DKIM signed with your domain (d=yourdomain.com or a subdomain of it, under the default relaxed alignment).

The order that avoids lost mail

  1. Publish v=DMARC1; p=none; rua=mailto:… and read the aggregate reports for a few weeks: they show every source that sends as you, including ones nobody told IT about.
  2. List each service, and check what DNS shows for it: is it in SPF, and is there a DKIM key under your domain at the selector it uses?
  3. For each service without a key, turn on its domain authentication (it gives you the DKIM records, usually CNAMEs), publish them, and confirm in the reports that its mail now passes.
  4. Services that can't sign with your domain: move them to a subdomain (e.g. billing.yourdomain.com) with its own policy, or have them send from their own domain with yours as Reply-To.
  5. Move to p=quarantine, watch the reports, then p=reject.

DKIM selector names some vendors document

SPF's 10-lookup limit

Every include:, a, mx, exists: and redirect= costs a DNS lookup, and includes nest. Over 10 and SPF returns a permanent error for all your mail. Two SPF records on the same name is also a permanent error. Once a vendor signs with DKIM, it often doesn't need to be in SPF at all.

What RFC 9989 (May 2026) changed in the record

Free tool: Free sender check: every service your DNS lets send as your domain, which ones lack a DKIM key, SPF's lookup count, and a fix request for each vendor

Enter your domain: the check reads SPF, DKIM keys at the selectors 35 vendors use, and your DMARC record, in your browser, and writes the request each vendor needs.

Which vendor held up your move to reject, and what did they say when you asked?

We're researching this problem and read every answer. Tell us what happened (4 short questions, no sign-up; AI tools help us read the answers).