Email Deliverability Testing: What to Check Before You Ship
"It sent" and "it arrived" are different claims
An SMTP server returning 250 OK means it accepted the message for delivery, not that it reached the inbox. Between that acceptance and a human seeing the email sits spam filtering, domain reputation, and provider-specific rules that have nothing to do with whether your code works. Deliverability testing is checking that second half, separately from whether the send itself succeeded.
What actually affects whether you land in the inbox
- SPF, DKIM, and DMARC: whether the sending domain is authenticated to send on your behalf, the single biggest lever and the one most new senders skip
- Sender reputation: a new domain or IP with no sending history gets treated with more suspicion than one with an established, consistent pattern
- Content signals: spammy subject lines, link-heavy HTML with little text, and mismatched From/Reply-To addresses all raise a message's spam score
- Engagement history: providers like Gmail weight whether previous recipients opened, replied to, or marked similar mail as spam, which compounds over time in either direction
- List hygiene: sending to addresses that bounce, no longer exist, or never opted in drags down reputation for every message after it
Checks worth running on every release
- Verify SPF, DKIM, and DMARC are passing for the actual sending domain, not just configured and forgotten, a DNS change elsewhere can silently break one
- Send a real test message through the exact template and code path a user would trigger, and read the actual headers it arrives with, not a preview rendered locally
- Check the rendered HTML for a reasonable text-to-link ratio and a working plain-text fallback, both are common, overlooked spam signals
- Confirm the From address matches the domain you've authenticated, a mismatch is one of the fastest ways to fail SPF alignment without any obvious error
None of this requires a dedicated deliverability platform to get started. A private inbox you control, that shows the raw headers and source of what actually arrived, covers the first and most useful check: did the thing you shipped show up looking the way you expected. Catch that before a release, and the harder reputation and engagement work has something solid to build on.