If you run a site that needs to deliver email to users it can be surprisingly hard to make sure that your mail makes it to people’s inboxes.
We don’t ever send useless email to users but we still manage to deliver about 500,000 emails each month – account confirmations, CCs of in-app messages (a feature that is off by default), purchase receipts, replies from customer service… There are hosted services like SendGrid that will take care of your email for you but we certainly can’t spend $400 a month on email delivery.
Here are some things that will help you build up a good reputation and lose fewer messages to spam filters:
- First, the obvious one: Don’t send crappy unwanted mail to users.
- Make sure that your mail server has a dedicated, permanent IP that is not shared with any other senders
- Configure DNS correctly with a hostname and PTR for your mail server’s IP
- Set up SPF records in DNS. Here is a wizard that makes it easy: SPF Setup Wizard.
- Implement DomainKeys Identified Mail. Here is an tutorial that will walk you through setting this up by pairing DKIMProxy with Postfix: Setting Up DKIM and DomainKeys using DKIMProxy with Postfix in Ubuntu Hardy. If you aren’t using Postfix, I certainly hope that you aren’t using Sendmail. Unless you are a Sendmail expert, it’s a misconfiguration waiting to happen.
- Apply for AOL’s whitelist and Yahoo’s whitelist.
- You might also want to sign up for feedback loops for one or some large mail providers (Comcast’s is here) This way, you’ll be made aware of messages that are classified as spam.
Hopefully the above suggestions will help you make sure that fewer emails are canned as spam. You might also be interested in SenderScore’s reputation tool. You can use it to get a reputation score for a particular mail server.
Here’s ours – I have no idea what factors went into this or if it really means much but the SenderScore is a 1-100 scale, so YAY.