Email marketing checklist
Twenty-six email checks in five groups, tickable on this page, plus a printable PDF and an Excel send log that flags deliverability from bounces and complaints. SPF, DKIM and DMARC are group one because a good email in a spam folder is worth nothing, and there is no open-rate column anywhere — mail clients pre-fetch images, so an open is no longer evidence a human opened anything.
- CHECKLIST
- XLSX
- FREE
- Best for
- Anyone sending marketing email who has never checked their DNS records
- Includes
- 26 tickable checks + Excel send log + printable PDF
- Time to use
- An afternoon for the setup, 30 minutes a month after
Free to download and use in your own client work. No email address required.
Problems this solves
Recurring complaints about this task, and what this resource does about each one. If it does not solve your version of the problem, that is worth knowing before you download anything.
- SPF, DKIM and DMARC are all set and mail still lands in spam
- Authentication is necessary and not sufficient, which the checklist is ordered to reflect: after the DNS group come list health and engagement, because receivers also weigh complaints, bounces and whether anyone opens anything.
- You do not know whether the list or the content is the problem
- The send log flags each send from bounce rate above 2% and complaints above 0.1% — the two signals that actually threaten a sending domain — so you can tell a list problem from a creative one.
- Open rate is the only number anyone asks about
- There is no open-rate column in the workbook at all. The page explains why in one paragraph you can forward to whoever is asking, and gives you conversion per send instead.
Most email advice starts with the subject line. Start with your DNS records instead — a good email in a spam folder is worth exactly nothing, and deliverability is an afternoon of work you do once.
The checklist
Deliverability — do this first 8
List health 6
The emails themselves 5
Automation 4
Measurement 3
The three records, plainly
SPF says which servers are allowed to send for your domain. DKIM signs each message so the recipient can verify it was not altered. DMARC tells receivers what to do when the first two fail, and sends you reports about it.
Publish all three. Start DMARC at p=none so nothing gets rejected while you read the reports, then
tighten it once you know every legitimate sender. The whole job is an afternoon, and it is the highest
return per hour available anywhere in email marketing.
Use a subdomain for bulk sending
Send marketing from something like news.yourdomain.com and keep transactional email — receipts,
password resets — on a separate stream. A bad campaign can then damage the reputation of the marketing
subdomain without taking password resets down with it. Deliverability is per-sending-identity, and this
is the cheapest insurance available.
“Everything is set up and mail still goes to spam”
Authentication is necessary and not sufficient, which trips up the people who did the hard part properly. SPF, DKIM and DMARC get you eligible for the inbox; they do not get you into it. Once they pass, placement is decided by reputation, and reputation is mostly about engagement.
Work down this list — it is roughly ordered by how often each turns out to be the cause once DNS is clean:
| Cause | How to tell | What to do |
|---|---|---|
| Poor engagement | Sends to your whole list underperform sends to recent subscribers | Segment out anyone inactive for six months. Reputation is per-recipient-behaviour, not per-record |
| Bad addresses on the list | Bounce rate creeping above 2% | Remove hard bounces automatically. Never re-send to them, and never import a list you did not collect |
| A new sending tool | It broke the week someone added a service | Every tool sending as your domain must be in SPF and signing with DKIM. This breaks silently and nobody connects the two events |
| Sudden volume change | You sent 20,000 after months of 500 | Warm up. A cold domain sending at volume looks exactly like a compromised one |
| Content signals | One campaign lands and another does not | Single-word subject lines, all-image emails, link shorteners and spam-trigger phrasing. Send yourself a copy with images blocked |
| A shared IP with bad neighbours | Nothing you did changed and delivery got worse | Ask your provider. On a shared pool you inherit other senders’ behaviour |
The check that resolves this fastest
Send the same campaign to a personal Gmail, an Outlook address and one on your own domain. If it reaches some and not others, it is reputation with a specific receiver — not your setup. That single test tells you which half of this table to read.
Which metrics to trust
| Metric | What it is good for | The warning |
|---|---|---|
| Open rate | Rough direction only, within one campaign | Inflated by privacy features that pre-fetch images. Do not report it as a result, and never target it. |
| Click-through rate | Whether the content matched the promise | Report clicks on the primary action, not total clicks — a footer click is not engagement. |
| Click-to-open | Comparing creative when volume differs | Inherits the open-rate problem in its denominator. Useful for comparison, not for reporting. |
| Conversion per send | The number to report | Needs link tagging and conversion tracking in place first, or it reads as zero. |
| Revenue per subscriber | Deciding what a subscriber is worth acquiring | Only meaningful over a period long enough to include repeat purchase. |
| Bounce and complaint rate | Early warning on deliverability | The two that get your domain blocked. Check these before volume, always. |
Open rate is the one to stop reporting. Mail clients pre-fetch images, so an “open” often means a server fetched a pixel rather than a human reading anything. It is still faintly useful for comparing two sends of the same campaign, and it is actively harmful as a target — optimising for it means writing subject lines for a number that no longer measures attention.
The send log therefore has no open-rate column at all. It flags deliverability from bounce rate above 2% and complaint rate above 0.1%, because those are the two numbers that actually get your domain blocked.
List health
The unpopular part: a smaller list usually performs better. Contacts who have not opened in six months depress your engagement signals, which is one of the inputs receivers use to decide whether you reach the inbox. Segment them out, run one re-engagement sequence, then delete the ones who ignore it.
That is a genuinely uncomfortable recommendation, because list size is the number people report upward. Revenue per subscriber is the one that matters, and it moves in the opposite direction to a bloated list.
Common mistakes
- Sending before SPF, DKIM and DMARC are published and passing.
- Reporting open rate as a result, or worse, targeting it.
- Keeping unengaged contacts to protect the list-size number.
- Sending marketing and transactional email through the same stream.
- Four calls to action in one email, so none of them is the action.
- Sending from a no-reply address, which discards your best responses.