Tips that prevent your mailing being marked as 'spam'

Introduction

The last couple of weeks I was working on writing a mailing/newsletter system myself. One of the first questions that came up was “how do I prevent that my newsletter will be marked as spam”. Although this article has nothing to do with PHP I still like to put it in the spotlight. I will give some tips on how to avoid your mail being marked as spam, some you will know, others you won’t.

How is determined if my email is spam?
Mostly this is done by so called spam filters (server side or client side), some well known examples:

Some of them work with the Bayesian filter. This filter is one of the most accurate filters available. It will detect 98% of the spam mails by an algorithm. Essentially the filter will check if words occur a lot in spam mails but not in normal mails, if spam words occur a lot in a mail we can assume we are dealing with a spam mail. Before we can use this filter we need to build a database with legitimate words. This database is build by the filter, it monitors all outgoing mails from the user and the incoming mails. By checking which words are used in the outgoing mails from the user it can “learn” which words are legitimate. Each word will get a score, the score will represent the probability of the mail being a spam mail (the mail in which the word appears).

An example:
We take the word “casino”, let’s suppose this word occurs in 100 of the 500 spam mails and only in 5 of the 500 legitimate mails. The spam score for this word will be:

(100/500) / (5/500 + 100/500) = 0,95

Off course spam filters use a lot of other techniques too.

Tips to lower your spamscore
I hope you now have a more clear understanding of how the most spam filters work. So lets start with some tips.

A last one, but nevertheless an important one “don’t prevent your mail being marked as spam”. Okay that sounds silly right? What I mean is that if you write a whole paragraph in your mailing about how someone can unsubscribe this will be seen as suspicious also avoid text like “this is not spam”.

More tests that will possibly increase your spam score can be found on the website of SpamAssassin. Some tests that caught my eye:

Keep the above in mind when writing your next mailing ;) good luck!