SPAM filters do a wonderful job at keeping the endless offers for viagra, online gambling and inheritance from my long lost Nigerian uncle out of my inbox. But SPAM filtering is by no means a science and sometimes it gets things wrong. Really wrong. Not just for mass email sent by companies, but also for individuals sending one-to-one communications.
How to Avoid SPAM Filters
Assuming you have a legitimate reason to be sending email, and your messages are not spam, it’s kind of imperative that your email makes it into the inbox. After all, isn’t this how the democratic web should work? The good news is that SPAM filtering is at it’s core an algorithm. Moreover, a set of checks are performed on each email to determine whether the message is legitimate or not. This is good news as algorithms are engineered… which means they can also be reverse engineered. Furthermore, the factors being evaluated by the SPAM algorithm are largely in our control (so we can influence them as well).
Factors that affect your SPAM score
Here is a simple checklist of the key factors that affect your email’s SPAM score, starting with those that are most likely to be the culprit:
- Being on a blacklist
- Unclear sender identity
- Missing Reverse DNS Lookup (PTR Record)
- Missing Sender Policy Framework (SPM)
- Missing DomainKeys Identified Mail (DKIM) Policy
- Not having a dedicated IP address*
*Typically only relevant for mass email senders, not one-to-one communications such as Gmail or Outlook.
Now let’s look at each of these factors in isolation. How do we test them? How do we monitor them? How do we fix them?
How to check if your email is on a blacklist
This is both the easiest and best place to start when trying to identify why your emails are being spammed. Put simply, you might be on a blacklist. You can use online tools to check whether you are, I prefer MX Toolbox as it’s extremely comprehensive and it’s free. Here’s a quick demo of how it works. Also, be sure to check both your IP address and your domain name.
Unclear sender identity
Mismatching sender domain and from addresses, or inconsistent sender addresses result in the inbox being unable to identify you as a sender. Email identity is primarily handled by two values, one being your IP address or domain, the other being your from address. Trust is built through either of these over time.
The goal here is to try and send from the same domain and address at all times. If you have to change one of these values, be sure to only change one, not both. Here’s why…
If a user regularly receives and opens email from the address email@example.com and the sender IP address suddenly changes, the inbox will still trust new email coming from this address as the from address is constant. Similarly, if the from address is changed to firstname.lastname@example.org but his sender IP remains the same, the inbox will fall back to the IP address and continue to trust the sender. However, if the email from address and the IP address are both changed the inbox will treat this an entirely new sender. Why? Because all links to the original identity have been lost. The IP has never sent to this inbox before, nor has this from address.
You can fix this by either always sending from the same from address, or at the very least always sending from the same underlying IP address. You will need a dedicated IP address to be able to do this (more on this later).
Missing PTR Record
A PTR or Pointer record is used to map a network interface (IP) to a host name. These are primarily used for reverse DNS lookups. They help a mail client identify a sender by tracing back an IP address to the sending domain and matching that with the domain in the sender’s from address. If you know your domain’s IP address you can use MX Toolbox to do a quick reverse DNS lookup or ptr request.
If you don’t know your domain’s IP address, you can use the command line to both find it out and to do a reverse DNS lookup. You’ll need a program like Terminal or Console and the following commands:
dig -x [your ip address]
Here’s a quick demo of how to do this. Notice in the response of the dig command that an answer is returned, this is what we want to see.
If you want to know more about how to add a reverse DNS record or PTR record to your mail server, I recommend reading this article.
Missing Sender Policy Framework (SPM)
Whilst this is not an essential inclusion and is more of a best practice, it will certainly help to give your emails a greater chance of landing in the inbox. The MX Tools provides this great explanation of what an SPF is:
Sender Policy Framework (SPF) records allow domain owners to publish a list of IP addresses or subnets that are authorized to send email on their behalf. The goal is to reduce the amount of spam and fraud by making it much harder for malicious senders to disguise their identity.
You can use the SPF tool on MX Tools to ascertain whether you have an SPF policy in place. Here’s a quick demo of the tool in action.
To add an SPF record to your site you will need to add a text record to the DNS values on your domain name. Here’s a quick example of what that might look like.
v=spf1 mx a ptr ip4:123.456.789.0 a:example.com include:example.com ~all
A deeper explanation of the SPF concept is available on the mailbird website, including more advanced instructions on how to set one up.
Adding a DomainKey Identified Mail record
A DKIM record seems to be becoming increasingly important in recent times. This process basically signs your e-mail with a private key (generated by you), and you generate a DNS record with the public key so any recipient domain can verify if the mail content has been or not forged. It’s basically a mechanism to help protect both email receivers and email senders from forged and phishing email. Further information on this is available directly from the DKIM project website.
For an even more advanced implementation you may like to consider adding a DMARC record. This article will help you do that in just 15 minutes.
Not having a dedicated IP address
Although there are many sceptics out there when it comes to the question of whether a sender needs a dedicated IP address, the pure technical factors at plat leads one to think that it must play a part. A dedicated IP is offered as an additional upgrade by most mail hosts, and even email vendors such as Mailchimp or Vero.
There are few key benefits of having a dedicated IP address. Firstly, you’re 100% responsible for it so the reputation you build on it is yours for the keep. You can take it with you to your next email vendor for example. You can send from multiple from address without worrying about your identity being lost. Also, your not sitting on a server with 100s of other marketers (who know what rubbish they might be sending out, and who knows where they got their lists from).