DroidCrunch
  • About
  • Blog
  • Categories
    • Automation
    • Tech
    • SEO
    • WordPress
    • Software
    • Hosting
    • Proxy
  • AI
    • AI Writing
    • AI Image
    • AI Tool
    • AI Video
  • Deals
  • Contact
Subscribe
No Result
View All Result
DroidCrunch
  • About
  • Blog
  • Categories
    • Automation
    • Tech
    • SEO
    • WordPress
    • Software
    • Hosting
    • Proxy
  • AI
    • AI Writing
    • AI Image
    • AI Tool
    • AI Video
  • Deals
  • Contact
Subscribe
DroidCrunch

How to Set Up Email Authentication (SPF, DKIM, DMARC) for Cold Email 2026

Lokesh Kapoor by Lokesh Kapoor
October 19, 2026
3
0

Your cold emails keep landing in spam, and the missing piece is almost always email authentication.

Set up SPF, DKIM and DMARC on every domain you send from, in that order. SPF lists who may send, DKIM signs the message, and DMARC tells receivers what to do on a fail.

Below: DNS for Google Workspace and Microsoft 365, plus the cold-email traps most guides skip. Research from public docs only; we did not touch your live domains for this post.

What SPF, DKIM and DMARC each actually do

  • SPF (Sender Policy Framework). A DNS TXT record that lists which servers may send mail for your domain. If the sending IP is not on that list, SPF fails.
  • DKIM (DomainKeys Identified Mail). A cryptographic signature on the message. The receiver looks up your public key in DNS and checks that the body and key headers were not altered.
  • DMARC (Domain-based Message Authentication, Reporting and Conformance). A policy that says what to do when SPF or DKIM fail to align with the visible From domain: monitor, quarantine, or reject. It also sends you reports.
SPF lists allowed senders, DKIM signs the message, DMARC sets the fail policy
SPF answers who may send. DKIM proves the message was not altered. DMARC decides what happens on a fail.

Gmail and Yahoo both require authentication for personal inboxes. Over about 5,000 messages a day to Gmail, you need SPF, DKIM and a published DMARC record, with the From domain aligned to one of those checks. That rule is in Gmail's email sender guidelines.

Who this is for, and what you need ready

For founders and SDRs wiring a new outbound domain. If the root is already authenticated and you only need a sending subdomain, skim to the cold-email section. Before DNS:

  • Access to your DNS host (Cloudflare, Namecheap, GoDaddy, Route 53, or whoever holds the zone).
  • Admin access to Google Workspace or Microsoft 365 for the domain you will send from.
  • A mailbox you control for DMARC reports, such as [email protected].
  • A clear list of every service that sends as that domain: your ESP, CRM, form tool, billing app.

Our take: Put cold volume on a subdomain such as mail.yourbrand.com, authenticate that subdomain, and keep corporate mail on the root. One burned subdomain is cheaper than a burned brand domain.

The order that keeps you out of trouble

Do not publish p=reject on day one. Wait about 48 hours after SPF and DKIM pass, then start DMARC at p=none.

Email authentication in three layers

SPF first, then DKIM, then DMARC

  1. 1
    Step 1 of 5

    Publish one SPF TXT record

    Merge every legitimate sender into a single record for that domain or subdomain. End with ~all while you are still learning who sends.

  2. 2
    Step 2 of 5

    Generate and publish DKIM

    On Google Workspace prefer a 2048-bit key. On Microsoft 365 add both selector CNAMEs, then turn signing on. Wait for DNS to propagate before you enable signing.

  3. 3
    Step 3 of 5

    Add DMARC at p=none

    After SPF and DKIM have been passing for about 48 hours, publish a monitor-only DMARC record with a rua mailbox you actually read.

  4. 4
    Step 4 of 5

    Tighten to quarantine, then reject

    When aggregate reports show only known senders, move to p=quarantine. Move to p=reject only when you are sure nothing legitimate still fails.

  5. 5
    Step 5 of 5

    Verify on a real received message

    Send to an external inbox, open the original headers, and confirm SPF=pass, DKIM=pass and DMARC=pass with alignment.

Set up SPF: one TXT record, every sender listed

SPF is a TXT record on the domain (or subdomain) in the SMTP MAIL FROM / Return-Path. One SPF record per name. Two on the same host return a permanent error.

Example records you can adapt

spf-google.txt Plain text
v=spf1 include:_spf.google.com ~all
spf-microsoft.txt Plain text
v=spf1 include:spf.protection.outlook.com ~all
spf-google-plus-esp.txt Plain text
v=spf1 include:_spf.google.com include:servers.mcsv.net ~all

In Cloudflare or Namecheap, the host for the root is usually @. For mail.yourbrand.com, the host is mail and the SPF record sits on that subdomain.

~all vs -all, and the 10-lookup trap

~all (softfail) marks unauthorized mail as suspicious, usually spam. -all (hardfail) asks receivers to reject it. Google recommends ~all for Workspace. Start there while you audit senders, then move to -all once the list is clean.

Never use +all. That authorizes the entire internet to send as you.

SPF allows at most 10 DNS lookups. Each include, a, mx, exists or redirect counts, including nested vendor includes. ip4, ip6 and all do not. Cross the limit and you get a permerror that often fails DMARC.

Three ESPs on the root will blow that budget. Fix it with subdomains, not SPF flattening that hard-codes today's IPs and breaks when a vendor rotates them.

Set up DKIM: sign every outbound message

DKIM proves the message left a server that holds your private key and that key headers and the body were not rewritten. Receivers look up the public key at selector._domainkey.yourdomain.

Google Workspace

DKIM on Google Workspace

2048-bit key, then Start authentication

  1. 1
    Step 1 of 5

    Open Authenticate email

    In the Admin console go to Apps, Google Workspace, Gmail, then Authenticate email. Pick the domain.

  2. 2
    Step 2 of 5

    Generate a 2048-bit record

    Click Generate new record. Choose 2048-bit if your DNS host accepts long TXT values. Leave the selector as google unless that name is already taken.

  3. 3
    Step 3 of 5

    Add the TXT at your DNS host

    Host is usually google._domainkey. Paste the full TXT value Google shows, including the p= public key. Save.

  4. 4
    Step 4 of 5

    Wait, then Start authentication

    Give DNS time to propagate, often several hours and up to 48. Only then click Start authentication. Enabling too early fails quietly.

  5. 5
    Step 5 of 5

    Confirm on a real message

    Send to an external Gmail address. Open Show original and look for DKIM=pass in Authentication-Results.

dkim-google-host.txt Plain text
Host: google._domainkey
Type: TXT
Value: v=DKIM1; k=rsa; p=<your-public-key>

Microsoft 365

Microsoft publishes two CNAMEs instead of a long TXT key, so it can rotate keys without another DNS edit. Signing stays off until you enable it after the CNAMEs resolve.

dkim-m365-cnames.txt Plain text
selector1._domainkey  CNAME  selector1-yourdomain-com._domainkey.yourdomain.onmicrosoft.com
selector2._domainkey  CNAME  selector2-yourdomain-com._domainkey.yourdomain.onmicrosoft.com

In Defender: Email authentication settings → DKIM → your domain. Add the two CNAMEs shown, wait for DNS, then toggle Sign messages for this domain.

Set up DMARC: monitor first, then enforce

DMARC is a TXT at _dmarc.yourdomain. It only helps after SPF or DKIM already authenticate mail, and the authenticated domain aligns with the From the recipient sees.

DMARC policy path: p=none monitor, then quarantine, then reject
Start at p=none so you get reports without dropping mail. Tighten only when the reports are clean.

Phase 1: p=none

dmarc-none.txt Plain text
v=DMARC1; p=none; rua=mailto:[email protected]; pct=100

p=none is monitor mode: receivers still check alignment and email aggregate reports to rua, but nothing is quarantined or rejected. Read those reports for two to four weeks before you change policy.

Phase 2 and 3: quarantine, then reject

dmarc-quarantine.txt Plain text
v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=100
dmarc-reject.txt Plain text
v=DMARC1; p=reject; rua=mailto:[email protected]; pct=100

Quarantine usually means the spam folder; reject means the message never lands. For many cold-email setups, quarantine is the practical long-term setting. A forgotten billing app under p=reject is mail you will never see bounce in your ESP UI.

Alignment: the part cold emailers miss

SPF can pass on a return-path domain and still fail DMARC if that domain does not align with the visible From. DKIM can pass on a signature domain that is unrelated to From. DMARC needs at least one aligned pass.

Relaxed alignment (the default) lets mail.brand.com align with brand.com. Strict alignment (aspf=s or adkim=s) demands an exact match. Start relaxed; flip to strict only after every sender is audited.

Cold email caveats most setup guides skip

Authentication is the floor, not the ceiling. Passing SPF, DKIM and DMARC does not warm a new domain or fix a purchased list. It stops you failing the checks Gmail and Yahoo now enforce.

  • One authenticated domain per sending stream. Do not share one SPF record across five outreach tools on the root. Give each major stream a subdomain with its own SPF, DKIM and DMARC.
  • Authenticate every domain you From. If Reply.io (no affiliate link on our site) sends as [email protected], get.brand.com needs the full trio. A tool that only signs its own domain will not save a From on yours.
  • Custom tracking domains need DNS too. Click and open tracking hosts often need CNAME records the ESP provides. Leave them half-set and you break links or dilute reputation.
  • Warm before volume. New domains and mailboxes need a gradual ramp. Auth first, then warm, then scale. Reversing that order burns the domain while the DNS is still wrong.

Still building the list? Our email scraping tools roundup and Hunter.io review cover sourcing. Try Hunter via droidcrunch.com/go/hunter.

Affiliate disclosure: some links are affiliate. If you buy through them, we may earn a commission at no extra cost to you.

How to verify the setup without guessing

After DNS has had time to propagate:

  • Confirm there is exactly one SPF TXT on the sending name.
  • Confirm the DKIM selector resolves (TXT for Google, both CNAMEs for Microsoft) and signing is enabled in the admin console.
  • Confirm _dmarc returns your policy string.
  • Send a real message to an external inbox you control. Open the original headers. You want SPF=pass, DKIM=pass and DMARC=pass.

Free DNS checkers are fine for a second opinion. Trust Authentication-Results on a real received message over a green badge on a marketing site.

Common mistakes that fail authentication

Fixes for the failures we see most

Duplicate SPF, early reject, broken alignment

  1. 1
    Step 1 of 6

    Two SPF TXT records on the same host

    Merge them into one v=spf1 line. Multiple SPF records cause a permerror.

  2. 2
    Step 2 of 6

    include: for a tool you no longer use

    Stale includes waste lookup budget and confuse audits. Remove them.

  3. 3
    Step 3 of 6

    DMARC p=reject before the report mailbox is clean

    You will silently drop legitimate mail from a forgotten SaaS. Stay on p=none until the rua reports are boring.

  4. 4
    Step 4 of 6

    From domain does not match the signing domain

    Point the ESP to send and sign as the domain in From, or change From to the domain you authenticated.

  5. 5
    Step 5 of 6

    Start authentication clicked before DKIM DNS exists

    On Google Workspace, wait for the public key to resolve, then enable. Retry after a full day if it failed early.

  6. 6
    Step 6 of 6

    Strict alignment on a subdomain-heavy stack

    aspf=s and adkim=s break mail.brand.com From brand.com setups. Keep relaxed until you mean it.

Where this fits the outreach tools we cover

Cold email platforms assume you bring authenticated domains. Our Reply.io review covers sequences on that stack. For a lighter ESP, see the Brevo review or start via droidcrunch.com/go/brevo.

Copy tools such as email writing software and ChatGPT for emails help the message. Auth keeps it out of spam. Inside WordPress, FluentCRM is an owned-list CRM, but the same DNS rules apply if it sends from your domain.

How we checked this

Facts above come from Google Workspace Help, Microsoft Learn Defender docs, and Yahoo's sender best practices, checked on 19 Oct 2026. We did not publish records on a live DroidCrunch domain. Treat the example strings as templates.

Frequently asked questions

Do I need SPF, DKIM and DMARC for cold email?

Yes if you want reliable inbox placement in 2026. Gmail requires SPF or DKIM for all senders, and all three once you cross roughly 5,000 messages a day to Gmail. Yahoo has matching bulk rules. Most cold sequences hit that bar within weeks.

Can one SPF record cover Google Workspace and my outreach tool?

Yes, as one merged TXT line with both include: mechanisms. Keep the total DNS lookups at 10 or under. If you add a third ESP, move that stream to its own subdomain instead of stacking more includes on the root.

Is p=none enough for Gmail bulk sender rules?

Yes. Gmail accepts a DMARC policy of none for the bulk-sender requirement. You still need SPF and DKIM passing with From alignment. Tighten to quarantine later for spoofing protection, not just for compliance.

Why does SPF pass but DMARC fail?

Usually alignment. SPF checked a return-path domain that does not match the visible From domain under your DMARC alignment mode. Fix the From, the MAIL FROM, or the DKIM signing domain so at least one aligned check passes.

How long before DNS changes take effect?

Often under an hour on modern DNS, but plan for up to 48 hours. Google asks you to wait about 48 hours after SPF and DKIM authenticate before adding DMARC. Do not enable DKIM signing until the public key resolves.

What is the SPF 10 lookup limit in plain English?

Receivers will only follow ten DNS lookups while evaluating your SPF record. Nested includes inside vendor records count. Go over ten and SPF returns a permanent error, which can fail DMARC under quarantine or reject.

Can I use the same DKIM key for Google and Microsoft?

No. Each provider issues its own key material. Google uses a TXT at google._domainkey by default. Microsoft uses two CNAMEs at selector1 and selector2. Publish both sets if both platforms send for the domain.

Does authentication replace email warmup?

No. Authentication only proves you are allowed to send as that domain. Warmup is a separate ramp of daily volume and positive replies that builds mailbox reputation. Do auth first, then warm for one to two weeks, then scale sequences.

Bottom line

Publish SPF, then DKIM, wait until both pass on real mail, then add DMARC at p=none. Tighten only when the reports are clean. Put cold volume on a subdomain, and authenticate every From domain you use.

That is the deliverability floor under Reply.io, Hunter and Brevo. Get the DNS right once, then spend your energy on the list and the offer.

Share4Tweet2Share1Share
Previous Post

What Are Webhooks? How They Work in n8n, Make and Zapier 2026

Lokesh Kapoor

Lokesh Kapoor

I am Lokesh Kapoor who loves to write blogs, create videos and watch sci-fi movies on Netflix and Jio Cinema. DroidCrunch is my first love and a crucial part of my life.

Related Posts

Semrush pricing title card showing the SEO, Starter, Pro+ and Advanced plans — Advanced is custom pricing (request a demo)

Semrush Pricing (2026): Features, Plans & Benefits

October 18, 2026
303
What are webhooks: an app sends a JSON payload to a workflow the moment an event happens

What Are Webhooks? How They Work in n8n, Make and Zapier 2026

October 18, 2026
298
Browser automation vs web scraping title card: a script clicks a login button in a browser window, next to a table of collected data

Browser Automation vs Web Scraping: The Difference

October 16, 2026
301
Best text to image generator tools ranked: ChatGPT, Google Gemini, Midjourney and Ideogram

12 Best Text to Image Generator Tools in 2026, Ranked

October 15, 2026
360
Load More

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

I agree to the Terms & Conditions and Privacy Policy.

Youtube Instagram Telegram Discord Facebook Whatsapp Twitter LinkedIn

About

DroidCrunch Logo Dark

DroidCrunch is your trusted blog & YouTube channel dedicated to SAAS lovers, WordPress enthusiasts, and Technology Freaks.

Quick Links

  • About Us
  • Editorial Policy
  • Contact Us
  • Help & Support
  • RSS Feed

© 2026 DroidCrunch - Best Place for Tech NomadPrivacy PolicyTerms & ConditionsCookie PolicyGDPR RightsAffiliate Disclosure

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In

Add New Playlist

No Result
View All Result
Subscribe
  • About
  • Blog
  • Categories
    • Automation
    • Tech
    • SEO
    • WordPress
    • Software
    • Hosting
    • Proxy
  • AI
    • AI Writing
    • AI Image
    • AI Tool
    • AI Video
  • Deals
  • Contact

© 2026 DroidCrunch - Best Place for Tech NomadPrivacy PolicyTerms & ConditionsCookie PolicyGDPR RightsAffiliate Disclosure

DroidCrunch Giveaway

Amazon Gift Card worth $15

Participate now and get a chance to become a lucky winner to receive the reward.​

Join Giveaway