Why your email goes to spam
Most advice starts with subject lines. That is the last thing to look at. Work in this order
— each stage is cheaper to check and more likely to be the cause than the one after it.
1. Authentication (fix this first — it is binary)
If SPF, DKIM or DMARC is missing or misaligned, nothing else you change will help. This is
also the only stage you can verify in seconds and fix definitively.
Three failures that look fine in a naive checker:
- SPF over the 10-lookup limit —
permerror, treated as no SPF.
- DKIM signed by your vendor's domain, so it passes but does not align.
- DMARC published as
p=none, which reports but enforces nothing.
Check all three now — free →
2. Reputation
- Spam complaints — over 0.3% and Gmail filters everything you send. Check Google
Postmaster Tools.
- Spam traps — recycled dead addresses on an old or purchased list. One hit can
sink a domain. Never buy a list; re-permission anything over a year stale.
- Blocklists — check your sending IP and domain against Spamhaus.
- A cold IP or domain — volume from a brand-new sender looks exactly like a
spammer. Warm up over 2–4 weeks.
- Shared-IP neighbours — on cheap shared infrastructure you inherit their
reputation.
3. Engagement
Gmail weights whether your recipients open, reply and move mail out of spam. Sending to
people who never open is actively harmful — suppress non-openers after 90–180 days.
A smaller engaged list outperforms a big dead one, every time.
4. Content (last, and least)
- A link shortener, or a link domain with worse reputation than your own.
- Image-only mail with almost no text.
- A From: display name that does not match the sending domain.
- Mixing transactional and marketing mail on one domain — split them onto subdomains so
password resets never inherit newsletter complaints.
The order matters
Rewriting copy while SPF is in permerror wastes weeks. Confirm stage 1 is clean,
then move down.
Start with the authentication check →Related guides
MailGate — free SPF, DKIM & DMARC checker.
Check any domain →