"My emails go to spam" is the most common email ticket we see, and it almost never has one cause. Receivers score each message on dozens of signals and junk it when the total crosses a line. Below are the signals that matter, in the order we check them, with what to do about each.
1. Missing or failing authentication
SPF, DKIM or DMARC absent or misconfigured. Since February 2024 Gmail and Yahoo require all three for anyone sending in volume, and treat their absence as a strong spam signal for everyone. Check: send to a Gmail address, Show original, look for three PASSes. Fix: SPF, DKIM and DMARC explained.
2. No reverse DNS
The sending IP has no PTR record, or it does not match the server's hostname. Gmail rejects outright. Check: dig -x <ip> +short. Fix: ask the host to set it. Reverse DNS explained.
3. The IP is on a blocklist
A previous tenant of the IP, or a compromised site on the server, earned it a place on Spamhaus, Barracuda or SORBS. Check: mxtoolbox.com blacklist lookup. Fix: find and stop the source, then request delisting from each list; if the IP is yours by lease, ask the provider for a clean one.
4. The domain is new
A domain registered last week sending 500 messages today is the pattern of a spam campaign. Reputation is built over weeks. Fix: warm up — start with a handful of messages a day to engaged recipients, grow over two to three weeks.
5. Sending from a shared or residential-looking IP
Mail sent from a home connection, a cloud VM without a mail-specific setup, or a shared IP with bad neighbours inherits that IP's reputation. Fix: send through a server set up for mail with its own PTR, or through a transactional provider (Postmark, Amazon SES, Mailgun) for application mail.
6. The From address does not match the sending domain
A website contact form sending "from" the visitor's Gmail address through your server fails DMARC for gmail.com. Fix: send from an address on your own domain, put the visitor's address in Reply-To.
7. Content that looks like spam
All capitals, many exclamation marks, "FREE", "act now", a single large image with no text, shortened links, mismatched link text and URL. Check: mail-tester.com scores the content separately. Fix: write like a person, plain formatting, full links.
8. Broken or missing HTML basics
No plain-text alternative, invalid HTML, an unsubscribe link that does not work, a missing List-Unsubscribe header on bulk mail (required by Gmail since 2024). Fix: use a sending tool that handles this; for hand-written mail, keep it simple.
9. Low engagement
Recipients who never open, delete without reading or mark as spam teach Gmail that your mail is unwanted. This applies to bulk mail more than one-to-one. Fix: send to people who asked, remove addresses that never open, make unsubscribing easy so people do not use the spam button instead.
10. Spam traps and old lists
Addresses that were abandoned years ago are reactivated by providers as traps; sending to one proves the list was not maintained. Fix: never buy lists; remove bounces immediately; re-confirm addresses older than a year.
11. Volume spikes
A domain that normally sends 50 a day suddenly sends 5,000. Fix: ramp up over days; split large sends.
12. Forwarding
Mail forwarded from you@example.com to Gmail arrives from your server but claims to be from the original sender, failing their SPF. Fix: on the Gmail side, use Check mail from other accounts (POP/IMAP fetch) instead of forwarding, or accept that forwarded mail is judged more harshly.
How to diagnose in ten minutes
- Send a test to mail-tester.com; read every line of the report.
- Send a test to a fresh Gmail account; Show original for the authentication results.
- Check the IP on mxtoolbox.
- Read the bounce message, if any — receivers usually say why (
550 5.7.1codes include a reason and often a link).
Nine times out of ten, steps 1–3 point at items 1–3 above.
What "fixed" looks like
Authentication passing, PTR correct, IP clean, sending from the domain's own address at a steady volume, to people who expect it. From that baseline, individual messages still occasionally get filtered — that is the receiver's model, not your setup — but the pattern of "everything to Gmail vanishes" ends.
On VPSPioneer plans, items 1, 2, 3 and 5 are handled at the server level; the rest are about what you send and to whom. The full setup for a mail domain is in set up email on Plesk so it does not land in spam.