This is a canonical question about avoiding outgoing mail being classified as spam.
Also related:
I'm wondering how to prevent my emails from my site being marked as spam? I'm using sendmail.
I'm trying to send emails through my ruby-on-rails application. The mails are all written in swedish (if that does make a difference?). I don't know why they keep getting marked as spam.
Are there any things that I can do to minimize the risk?
Mail will be marked as spam by major ISPs (including webmail providers like gmail, hotmail, yahoo) for several possible reasons:
and many, many other possible reasons.
You can check the reputation of your IP address at https://www.senderscore.org/
You can check if you're on various blocklists at http://www.mxtoolbox.com/blacklists.aspx
In addition to all the steps in the excellent accepted answer a number of the largest e-mail providers have special tools and program's for (bulk) senders that will help you to prevent your valid email from getting marked as spam. Fairly typical are feedback loop programs that allow you, as the sender, to respond to spam complaints from recipients, instead of getting blacklisted immediately as a Spam sender.
There are still no guarantees though.
Microsoft responsible for among others
@hotmail.com
,@live.com
,@outlook.com
and@msn.com
offers:Google's
@gmail.com
offerings:AOL offers:
And undoubtedly many more!
Often reason for marking mail as spam is also the absence of several headers, most usually of the "To" header, which often happens when sending mail from a host's console, or with a poorly configured script.
No simple answer to that. Do the traceroute from sending host to mail server, and from mail server to destination node (host that's downloading email). Simply every node CAN be a antispam server, and can mark You email as SPAM. Not to mention that there can be transparent antispam proxies/utms/andsoons and at the end AntiVirus software installed on users computers.
Generally what You can do in first place: