Updated technical checklist + DNS tool links.
Cold email still works in 2025, but only when you respect inboxes and the rules. This guide keeps it practical: authenticate correctly, send from warmed domains, keep lists clean, and write short, useful messages with easy opt‑outs. We cover Gmail/Yahoo bulk‑sender requirements, safe ramps, and dashboards to monitor reputation.
Key takeaways: Authenticate (SPF/DKIM/DMARC) and pass alignment. Warm gradually; send from named humans; keep Day‑1 emails light. Track bounces and complaints in real time; honour opt‑outs; throttle by health. Focus on relevance over volume.
Respect inboxes; authenticate, warm, monitor, and be relevant.
Authenticate your domain, warm gradually, use short messages with one ask, always include an easy opt‑out, and watch bounces/complaints like a hawk.
Set SPF, DKIM, and DMARC (monitor first). Ramp new domains 30–50 → 80–120 → 120–150/day over three weeks. Keep bounce <3% and spam complaints <0.1% per mailbox; pause and fix if exceeded.
SPF lists legitimate senders, DKIM signs mail, and DMARC ties them together; use one SPF include chain and align From/Return‑Path.
Publish one SPF record, use DKIM with 2048‑bit keys, and set DMARC to p=none; rua= reports to observe. Align the visible From with the DKIM d= and SPF domain to satisfy modern receivers.
Start tiny, keep quality high, and add volume only when metrics stay green for several days.
Week 1: 30–50/day; Week 2: 50–80/day; Week 3: 80–120/day; Week 4: 120–150/day (if needed). Mix genuine conversations and replies; avoid links/images on Day‑1 sends.
Verify emails, de‑duplicate, and respect suppression lists and bounces. No purchased lists.
Use multiple sources and confirm fit before sending. Keep a do‑not‑contact file; remove hard bounces immediately; segment by persona so every message has a genuine reason to exist.
2–5 word subject lines; one specific reason to write; one ask; plain text; easy opt‑out.
Angles that travel: cost‑out, risk‑off, speed, revenue unlock, peer proof. Avoid clickbait, fake forwards, and image‑heavy emails—especially while warming.
Track sends, bounces, spam complaints, replies, and domain health daily; tag by angle and segment.
If bounce >3% or complaints >0.1%, pause and fix: remove the bad segment, re‑verify, and cool down sending for 48–72 hours.
Authenticate, keep complaint rates low, support one‑click unsubscribe, and send wanted mail from real domains.
Large senders must pass SPF/DKIM/DMARC, keep spam rates very low, and include one‑click list‑unsubscribe headers. Don’t spoof consumer domains; use a domain you control and sign consistently.
If people click, don’t make them wait: INP ≤200 ms, LCP ≤2.5 s, CLS ≤0.1.
Compress images, reserve space, preconnect to your CDN, and keep scripts lean. Include a fast, static PDF alternative if relevant.
Related reads: Outbound Sales Playbook, Seed Data‑room Checklist.
Keep it simple and aligned.
# SPF (one record)v=spf1 include:your-sender.example -all
# DKIM (selector s1)v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFA...
# DMARC (monitor first)v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com; fo=1
Use one SPF record; avoid nested includes where possible. Deploy 2048‑bit DKIM keys per sending platform. Start DMARC at p=none
to observe, then move to quarantine
or reject
when alignment is clean.
Move slowly and deliberately.
p=none
: fix misaligned senders; watch aggregate (rua) and forensic (ruf) reports.pct=25
at p=quarantine
once all legitimate sources align.pct=100
and finally p=reject
if spoofing risk warrants it.Support both header formats.
Add List-Unsubscribe
and List-Unsubscribe-Post: List-Unsubscribe=One-Click
where your platform allows it. Honour unsubscribes within 2 business days and keep a global suppression list.
Minimise and react quickly.
Connect provider feedback loops where available and log complaints back to contact records. If complaint rate rises, pause sends to that segment, remove recent adds, and review copy for relevance and clarity.
Three common failure modes.
Instrument before you scale.
Decode before reacting.
5.1.1
: User unknown → remove immediately5.2.2
: Mailbox full → retry later; reduce cadence4.7.650
: Rate limited/throttled → slow down5.7.26
: Authentication/DMARC failure → fix DNS & alignmentUse provider tools.
Set up Gmail Postmaster Tools for domain/IP reputation, spam rates, and feedback loop signals; use Microsoft SNDS for IP reputation if you send via dedicated IPs.
Only after DMARC enforcement.
Publish a BIMI record and obtain a Verified Mark Certificate (where supported) to display your logo in supported inboxes. Treat it as a trust boost—not a deliverability fix.
Respect local rules and expectations.
Document a legitimate interest assessment (where applicable), include a physical address, and always provide an easy opt‑out. Keep a suppression list and respect it across all tools and teams.
Run this in 5 minutes before each wave.
Alignment: Matching domains across From, DKIM, and SPF for DMARC. FBL: Feedback loop reporting spam complaints. BIMI: Logo display standard relying on DMARC enforcement. Quarantine/Reject: DMARC actions for failing mail.
Check provider policies quarterly.
Bulk‑sender requirements evolve. Review Gmail/Yahoo sender pages, your DMARC reports, and Postmaster charts every quarter; record changes in a short changelog with dates.
Send when your buyers check email—and spread the load.
Prioritise working hours in the recipient’s time zone and avoid minute‑zero bursts. Stagger sends in small batches (e.g., 20–40 every 10–15 minutes) so receivers see normal traffic rather than bulk spikes. Mix mailboxes and rotate segments daily to smooth patterns. If you sell cross‑region, set per‑region caps and respect local weekends/holidays.
Short answers on deliverability.
Want a deliverability tune‑up and playbook tailored to your motion?
© EA Partners 2025. All Rights Reserved.