The Complete Email Deliverability Checklist [2026]

"Delivered" and "in the inbox" are not the same thing, and the distance between them is bigger than most senders suspect. A receiving server can accept your message, report it delivered, and quietly file it in spam where nobody will ever open it. Across the messages we test at Unspam, 82% pass a full deliverability check, 14% draw warnings, and 4% fail outright, while the global primary-inbox rate sits around 59%. Somewhere in that gap, campaigns bleed revenue without anyone noticing.

What follows is the pre-send routine I run before anything important goes out. It matters more than it used to: Google and Yahoo have enforced sender requirements since February 2024, and Microsoft applied the same bar to Outlook in May 2025. Every step links to a free tool you can run in seconds, and each recommendation rests on what we actually measure across real sending domains rather than on folklore.

The email deliverability checklist at a glance

  • Authenticate the domain: SPF, DKIM, and DMARC, all aligned
  • Confirm the domain and sending IP are off blacklists
  • Clean and verify the recipient list
  • Warm up any new domain or IP
  • Audit the content, formatting, and links
  • Add a one-click List-Unsubscribe header
  • Send on a consistent schedule and protect engagement
  • Run a spam test and an inbox placement test before you send

Infographic of the eight-step pre-send deliverability checklist grouped into four stages: authenticate, clean and warm up, content, and send and test

The rest of the guide walks through each step, with the data and the provider rules behind it. Skim the list now, then go deeper wherever your own setup feels shaky.

What we see across the emails we test

Most deliverability advice recycles the same tips in a slightly different order, so let me start somewhere else: with what the emails running through Unspam actually show. These numbers describe where senders really stand, not where guides assume they do. Two patterns stand out, and neither one is visible in a blended "average deliverability rate."

Inbox placement is not one number

The same test message lands very differently depending on the mailbox provider:

Mailbox providerPrimary-inbox rate
ProtonMail95%
Zoho93%
Gmail68%
Outlook48%
AOL42%
Yahoo40%

Bar chart of primary-inbox rate by mailbox provider for identical test mail: ProtonMail 95%, Zoho 93%, Gmail 68%, Outlook 48%, AOL 42%, Yahoo 40%, against a 59% global average

Identical mail, a 55-point spread. A single blended average (about 59% to the primary inbox) papers over the awkward truth that Yahoo and Outlook quietly filter more than half of what Gmail lets through. So judge yourself per provider, never on one headline figure.

The authentication paradox

Across the domains we check:

  • 90% pass SPF and 87% pass DKIM, so basic authentication is nearly universal.
  • Only 58% publish DMARC, and DMARC is precisely the record the 2024 and 2025 provider rules enforce.
  • 89% score in the safe SpamAssassin range (below 3.0), so raw content is rarely the primary problem.
  • Only 30% pass our HTML best-practice checks, the lowest pass rate of anything we measure.
  • Only 14% set a List-Unsubscribe header, despite it being a provider requirement for bulk mail.
  • Just 0.28% of domains turn up on a domain blacklist, which is why a listing stands out so sharply when it happens.

Bar chart of the share of tested senders that pass each check: SPF 90%, SpamAssassin 89%, DKIM 87%, DMARC 58%, HTML best practice 30%, List-Unsubscribe 14%

Notice what this list is really saying. The fixes that move the needle are rarely the content tweaks people obsess over; they are DMARC alignment, engagement, and the unglamorous hygiene work below.

Authentication gets your mail accepted. Reputation and engagement decide whether it reaches the inbox.

What the mailbox providers require (and where they differ)

No blog decides what reaches the inbox; the mailbox providers do. Their published rules overlap heavily but do not perfectly agree, which is worth understanding before you take advice from either camp at face value.

The two enforcement regimes

These two rule sets cover most inboxes:

RequirementGoogle & Yahoo (since Feb 2024)Microsoft Outlook (since May 2025)
Applies to5,000+ a day to Gmail or Yahoo5,000+ a day to Outlook, Hotmail, Live
SPF + DKIM + DMARCAll three requiredAll three required (DMARC at least p=none, aligned)
One-click unsubscribeRequired (RFC 8058)Expected for bulk mail
Spam complaint rateBelow 0.3%, aim under 0.1%Kept low and monitored
If you failJunk folder, then rejectionRejected outright (550 5.7.15)

The standards behind the rules

Two more authorities shape the baseline:

  • Standards bodies. The technical baselines come from the RFCs (SPF in RFC 7208, DMARC in RFC 7489, one-click unsubscribe in RFC 8058), and M3AAWG, the industry anti-abuse working group, publishes the sending best practices most consultants follow on list hygiene, warmup, and complaint feedback loops.
  • SpamAssassin. The open-source filter behind many providers scores messages and flags them above 5.0 by default. In practice, aim well below that: a SpamAssassin score under 3.0 is the safe zone, and that is where 89% of the messages we test already sit.

They differ on thresholds and on what failure costs you: Outlook rejects outright, Gmail routes to junk first, and the exact complaint limits vary. On the core, though, they speak with one voice: authenticate everything, make leaving easy, keep complaints low. Every step below serves that shared standard.

1. Authenticate your domain with SPF, DKIM, and DMARC

Start here, because for bulk senders this stopped being optional: Google, Yahoo, and Microsoft all demand it now. Publish all three records, and, just as important, make sure each one aligns with your From domain rather than merely passing.

RecordWhat it provesLives as
SPFWhich servers may send for your domainone TXT record starting v=spf1
DKIMThe message is signed by your domain and unalteredTXT record at selector._domainkey
DMARCWhat to do when SPF or DKIM fails, plus how to report itTXT record at _dmarc
  • SPF: publish a single TXT record that starts with v=spf1, names every service that sends on your behalf, and ends with -all (or ~all while you are still testing). Keep it under the 10 DNS lookup limit. Confirm it with the free SPF checker.
  • DKIM: make sure your sending platform signs with your own domain in the d= tag, not its shared domain. A mismatched d= is the single most common reason "authenticated" mail still fails DMARC alignment. Verify it with the DKIM checker.
  • DMARC: publish a policy, starting at p=none with an rua reporting address, then tighten toward quarantine or reject once your reports run clean. Check it with the DMARC checker.

Only 58% of the senders we test publish DMARC, which makes this one record the most common gap between "my email passes SPF" and "my email meets the provider rules." If the acronyms are new to you, start with email authentication explained.

2. Check your domain and IP against blacklists

Blacklists are the silent failure in this list: a single listing can sink a campaign, and nobody sends you a letter when it happens. You find out by checking, or you find out from your open rates.

Domain-level listings are genuinely rare (about 0.28% of the domains we test carry one), and that rarity is exactly what makes them expensive: providers read an unusual signal as a loud one.

3. Clean and verify your list

Nothing burns a sending reputation faster than bounces and spam-trap hits, and the damage compounds quietly: a stale list drags engagement, poor engagement drags reputation, and reputation decides placement. Before a send:

  • Remove invalid, role-based (info@, admin@), and long-inactive addresses.
  • Verify anything you are unsure about with the free email verifier.
  • Never send to purchased or scraped lists, which are the fastest route to a spam-trap hit.
  • Keep your spam complaint rate under Gmail's 0.3% ceiling, and ideally under 0.1%.

Counterintuitive but consistently true: the smaller, engaged list beats the big stale one, because providers care how people react to your mail, not how much of it you send.

4. Warm up new domains and IPs

A fresh domain or dedicated IP arrives with no history at all, and to a mailbox provider, full volume from an unknown sender is indistinguishable from a spam run. M3AAWG's guidance, and every practitioner's, comes down to the same word: ramp.

  • Start with your most engaged subscribers (recent openers and clickers).
  • Increase volume steadily over two to four weeks.
  • Watch complaints and bounces at each step, and slow down if either climbs.

Our guide on how to warm up a sending domain walks through a sample schedule. One caution that surprises people: a dedicated IP is not worth it at low volume, because thin volume on a cold dedicated IP performs worse than a healthy shared pool.

5. Audit your content and formatting

Content matters less than reputation, but it is the one lever entirely in your hands, and, oddly, it is where senders do worst: only 30% of the emails we check pass our HTML best-practice tests. Before you send:

  • Scan the subject and body for spam trigger words with the free spam word checker, and treat any match as a prompt to rewrite, not a hard rule.
  • Use tested, cross-client HTML. Broken rendering drives the low engagement that hurts placement, so it matters even though filters do not score "ugly" HTML directly.
  • Keep a sensible text-to-image balance, make sure every link resolves and check how your tracking links route, and cover the email accessibility basics like alt text and contrast, since the same fixes protect you with images off.
  • Stay under Gmail's roughly 102KB clipping point so your unsubscribe link is never hidden.
  • Aim for a SpamAssassin score below 3.0, the range where 89% of tested messages comfortably sit.

6. Add a one-click unsubscribe (List-Unsubscribe)

Google, Yahoo, and Microsoft all require bulk senders to support one-click unsubscribe through the List-Unsubscribe header, yet only about 14% of the senders we test actually set it. I keep waiting for that number to improve; it barely moves. One of the easiest compliance wins available is sitting untouched in most sending stacks.

  • Add both List-Unsubscribe and List-Unsubscribe-Post headers (RFC 8058) so the unsubscribe works in one click.
  • Keep the visible unsubscribe link in the body as well.
  • Honor requests within two days, which is the window the provider rules specify.

An easy exit lowers complaints, because recipients who cannot find the unsubscribe use the spam button instead. See the List-Unsubscribe header guide for the exact headers.

7. Send consistently and protect your reputation

Providers reward mail that people expect and open, sent on a rhythm they can model. Reputation remains the single biggest lever on placement, bigger than any wording choice you will ever make, so guard it:

  • Send on a steady cadence rather than in erratic bursts.
  • Honor unsubscribes quickly and make them easy.
  • Sunset subscribers who have not engaged in 90 to 180 days so dead weight stops dragging your numbers down.
  • Segment by engagement so your most active recipients see your mail first, which lifts the aggregate signals providers watch.

Read more in our guide to sender reputation.

8. Run a spam test and an inbox placement test before you send

Everything above is preparation; this is the proof. It is also, in my experience, the step most senders skip, usually right before the campaign that teaches them not to.

  • A free spam test scores your message against the same engines mailbox providers use and flags authentication, blacklist, and content problems in about 30 seconds.
  • An inbox placement test delivers to real seed inboxes and shows where the email actually lands per provider, which matters because, as the table above shows, placement swings from 40% at Yahoo to 95% at ProtonMail on identical mail.
  • Preview how the message renders on real devices before it goes out, across 50+ real email clients in light and dark mode.
  • Re-test after any fix to confirm it moved placement, not just delivery.

Deliverability thresholds worth memorizing

Keep these numbers on hand; they are the lines the providers and filters actually draw:

Card grid of key deliverability thresholds: 0.3% spam-complaint danger line, 5,000 messages a day, SpamAssassin under 3.0, 10 SPF DNS lookups, 102KB Gmail clipping point, 2 to 4 week warmup, 90 to 180 day sunset, and 59% global inbox rate

  • Spam complaint rate: under 0.1% good, 0.3% is the danger line (Google, Yahoo, Microsoft).
  • Bulk-sender threshold: 5,000 messages a day triggers the strict authentication rules.
  • SpamAssassin score: below 3.0 is safe, above 5.0 is likely spam.
  • SPF: one record, maximum 10 DNS lookups.
  • Gmail clipping: messages over about 102KB get truncated.
  • Warmup: two to four weeks for a new domain or IP.
  • List hygiene: sunset unengaged contacts after 90 to 180 days.

The mistakes we see most often

After enough audits the surprises stop. The same handful of errors keeps turning up across the domains we test, month after month:

  • Sending from the ESP's shared domain, so DKIM signs the wrong d= and DMARC alignment fails silently.
  • Publishing SPF and DKIM but not DMARC, which leaves you out of compliance with the very rules being enforced (only 58% publish it).
  • Going full volume from a cold domain instead of warming up.
  • Mailing purchased or long-dead lists, which drives complaints and spam-trap hits.
  • Shipping image-heavy or untested HTML that breaks in Outlook and Gmail.
  • Skipping the final test, then discovering the spam problem from falling revenue instead of a report.

The pre-send checklist (copy this)

  • SPF, DKIM, and DMARC published and aligned
  • Domain and sending IP clear of blacklists
  • List cleaned and verified, complaint rate under 0.1%
  • New domain or IP warmed up gradually
  • Content checked for spam words, tested HTML, and working links
  • One-click List-Unsubscribe header in place
  • Consistent schedule and an engaged list
  • Spam test and inbox placement test passed

There is no single big fix hiding anywhere in deliverability. There is only this small set of habits, repeated before every send until it stops feeling like a checklist. When your next campaign is ready, run it through a free spam test and an inbox placement test first, no signup required.

Frequently asked questions

What is a good email deliverability rate?

Judge it two ways. On our health score, above 85 out of 100 is excellent, and the 2026 global average is about 87. But health score and inbox placement are different things: the global primary-inbox rate is only around 59%, and it varies sharply by provider. A strong setup pairs a health score above 85 with per-provider inbox rates above 80%, so always test the providers your audience actually uses rather than trusting a single blended number.

How often should I run this checklist?

Run the full checklist before any important or high-volume send, and any time you change sending domain, ESP, or template. The authentication, blacklist, and reputation steps only need periodic re-checks (monthly is plenty for a stable setup), but the content check and a final spam test should happen on every campaign, because a single template or subject line can undo an otherwise clean setup.

What is the difference between email delivery and email deliverability?

Email delivery means the receiving server accepted your message instead of bouncing. Email deliverability means the message actually reached the inbox instead of spam, junk, or a filtered tab. The two can diverge widely: you can have a 98% delivery rate and still have a large share of those accepted messages sitting in spam, which is why delivery rate alone is misleading and inbox placement is the number that matters.

Do I really need SPF, DKIM, and DMARC all three?

Yes, if you send in any volume. Since February 2024, Google and Yahoo require SPF, DKIM, and DMARC for senders above 5,000 messages a day to Gmail or Yahoo, and Microsoft applied the same bar to Outlook from May 5, 2025, rejecting non-compliant mail outright. Even below those thresholds, all three plus alignment is now the baseline mailbox providers expect. In our own data, SPF (90%) and DKIM (87%) are nearly universal, but only 58% of senders publish DMARC, which is exactly the record the new rules enforce.

Why are my emails delivered but still going to spam?

Delivered only means the server accepted the message; the provider's filter then decides inbox versus spam based on your authentication, sending reputation, list quality, recipient engagement, and content. Weakness in any one of those can route an accepted email straight to spam. The fastest way to find the cause is an inbox placement test, which shows where the message actually lands per provider so you can see whether the problem is reputation, content, or authentication.

What is the fastest way to check if an email will land in spam?

Run the message through a free spam test before you send. It scores your subject and body against the same engines mailbox providers use, checks SPF, DKIM, DMARC, and blacklists, and flags risky content in about 30 seconds. For a definitive answer on placement, follow it with an inbox placement test that delivers to real seed inboxes across Gmail, Outlook, Yahoo, and more and reports inbox versus spam for each.

See where your campaign actually lands.

Start a free spam test Inbox placement test