Explainer

SPF, DKIM and DMARC explained for cold email

The three email authentication records decide whether you reach the inbox — and most cold outreach fails because one is missing or wrong. Here's each one in plain English.

Key takeaways
  • SPF authorizes sending servers, DKIM signs your mail, DMARC ties them together and sets policy.
  • Since 2024, major providers require proper authentication for bulk senders — missing records means spam or rejection.
  • DMARC should start at p=none for monitoring, then move to quarantine or reject once you've verified alignment.

Three DNS records stand between your cold email and the inbox: SPF, DKIM and DMARC. They sound like plumbing because they are — and like plumbing, you only notice them when they're broken, at which point nothing works. Since Google and Yahoo tightened requirements for bulk senders, getting these right went from best practice to mandatory. Here's each, in plain English.

SPF — who's allowed to send

SPF (Sender Policy Framework) is a DNS record listing the servers permitted to send email for your domain. When a message arrives, the receiving server checks whether it came from an authorized source.

Think of it as a guest list. If your sending tool's servers aren't on the list, the receiver gets suspicious.

DKIM — proof it's really you

DKIM (DomainKeys Identified Mail) adds a cryptographic signature to every message. The receiving server uses a public key in your DNS to verify the mail genuinely came from your domain and wasn't tampered with in transit.

If SPF is the guest list, DKIM is the tamper-proof seal.

DMARC — the policy that ties it together

DMARC (Domain-based Message Authentication, Reporting & Conformance) does two things:

  1. Tells receivers what to do when a message fails SPF and DKIM — nothing (p=none), send to spam (p=quarantine), or reject outright (p=reject).
  2. Sends you reports on who's sending mail claiming to be your domain — invaluable for spotting problems and spoofing.

Roll it out safely: start DMARC at p=none and read the reports for a week or two. Once you've confirmed your legitimate mail passes, tighten to quarantine, then reject. Jumping straight to reject can bury your own email.

Why cold email fails here specifically

Cold outreach usually runs on a fresh sending domain — which means fresh, often-forgotten DNS. The classic failure modes:

  • No SPF/DKIM at all on the new domain → straight to spam.
  • SPF that doesn't include the sending tool's servers → authentication fails.
  • No DMARC, so providers have no policy to trust and err toward caution.
  • A too-aggressive DMARC set to reject before alignment was verified → self-inflicted bounces.

The checklist

  1. Add an SPF record that includes every service that sends for the domain.
  2. Enable DKIM and publish the public key in DNS.
  3. Publish a DMARC record at p=none, monitor, then tighten.
  4. Re-check after any change to your sending setup — these break silently.

Because getting this right by hand is fiddly and easy to get subtly wrong, OutboundLeadPro includes DNS auto-fix: it detects missing or misconfigured SPF, DKIM and DMARC and corrects them, so authentication stops being the reason your campaign lands in spam.

The OutboundLeadPro Team

Deliverability & outreach

We build the tool that gets cold email into the inbox and books meetings — deliverability, warmup, and sequences that get replies. These are the tactics behind it.

Outreach that reaches the inbox

Cold email that lands and fills your calendar

OutboundLeadPro runs cold outreach from your browser: a lead finder with a free Smart check on every email, AI sequences with A/Z testing, unlimited mailboxes and warmup, and DNS auto-fix for SPF, DKIM and DMARC.

Check an email free