Overcoming Email Delivery Problems with Your Web Host Adria Richards December 11, 2012 Best Practices, Product // SUMMARIES ?> When you’re building a new app from the ground up, everything is shiny and new. As a startup, you talk for hours with your co-founders about your vision, how to get customers and which features to roll out. You spend every waking hour together writing code. Finally you’re ready to push to production. Maybe you’ve been developing on your local box, a virtual machine or colo’d a server in a data center. The magical day comes when you launch your product to the world! Then reality sets in and you experience growing pains. webcast with Engine Yard focused on the technical challenges developers face when managing email delivery in house. You can check it out called If Your Product Emails Your Users, Good Luck!, don’t worry because you can watch it during your lunch break. I had the opportunity to work with Engine Yard to create and deliver this webcast focusing on what developers want — more free time and less hassle with technology. With Jacob Lehrbaum as the Engine Yard host, I took attendees through the three important aspects of email delivery: Reputation – Is your IP address respected on the net? If not, time to check with ReturnPath’s free tool Sender Score, which examines the IP address for sending emails and evaluates it for volume and if it’s been certified by Return Path put on their whitelist. Relevance – Are you sending the right emails to the right people at the right time and with the right frequency? In the webcast I explained the strategy of segmenting your communications by time zone to increase open rates for your emails. Infrastructure – Are you on a shared hosting provider with many other apps using the same app to send email? Is your environment secure when it comes to both physical and port security? Are you queuing your outbound email in batches? All of these can affect deliverability. Sending Email Is Easy, Getting It Delivered is Another Story How email is delivered from your application to your customer’s inbox is not a direct process as the email request goes through several checkpoints to filter out spam and all of them can prevent your email from being delivered. Spam is Everywhere According to a 2011 study conducted by Symantec MessageLabs, 76% of emails each day are spam. This causes huge headaches for ISP’s, network administrators and everyone who has to trudge through their inbox. Keep It Legal And Don’t Spam The Internet The CAN-SPAM Act was enacted in 2003 to provide companies and individual protection and relief from spammers. While you cannot directly sue a spammer, the FTC, ISP’s and federal agencies can pursue criminal and civil action against spammers. Writers Aren’t The Only Ones Who Worry About Blacklisting Email blacklisting occurs when your mail server’s IP address is added to a list and other mail servers begin rejecting your email. This occurs because the list you were added to is meant to protect companies from spam. One way to end up on this list is to send an email to a honeypot — this is a fake email address setup on the internet to catch spammers. If your company purchases email lists (a big no no) then there could be a honeypot email address on it and once notified, companies that maintain email blacklists like Spamhaus, will block you. You can check to see if your domain’s mail (MX) records or IP address has been listed using sites like MXToolbox. It’s a hassle to get off these lists, so: Best Practices To Increase Deliverability With Your Own Email Server Your goal is to increase the level of trust between your email server and your customer’s receiving servers. Be specific and explicit whenever possible. One way to do this is to append information to your DNS records and sent emails. SPF Records can be added to your domain DNS records to specify the IP addresses that have permission to send email from your domain. This reduces the chances of email spoofed from your domain affecting your deliverability and many email servers look for these records. DKIM allows receipient mail servers to verify the message was sent from your domain by comparing the key that arrived with the email against the public key associated with your domain name through your DNS records. There are a few more steps to follow compared to SPF records. You’ll need to generate a DKIM key, attach it to your DNS via a TXT file and then turn on authentication so receiving mail servers can validate emails by comparing the public key. Audience Question: Why is my email being delayed to the inbox? This is a common question developers have and it can happen when you send a large volume of email to a server and you appear to be a spammer. The receiving mail server puts your email in a queue until it can assess your reputation based on your IP address, if there is a valid SPF entry in your DNS records and if your domain or IP has been blacklisted. If this all sounds a bit too much just to send email, it’s a great time to explore SendGrid that makes this process a snap. Getting Signed up for SendGrid If this all sounds like a lot of effort to ensure your customer emails are getting through, it is! Engine Yard want you to focus on your code, not spam reports and has partnered with SendGrid to offer you the ability to send email via their web API or SMTP relay. To get started with sending emails from your EngineYard, head here. There is a free developer plan that allows you to send 200 emails per day and gives you full access to all of the API’s. SendGrid is easy to setup (SendGrid documentation) and you will find libraries, code examples and best practice recommendations. SendGrid gives you delivery analytics for your emails such as open and click rates, bounces, delays and more. Here are links new customers find helpful: Warming up your IP with Sendgrid [https://sendgrid.com/docs/User_Guide/warming_up.html] Test your API calls with SendGrid’s API Workshop [https://sendgrid.com/docs/API_Reference/Web_API/index.html#-Interactive-Documentation] Support If you have questions about using SendGrid, head over to their support area where they offer 24/7 support via live chat, support tickets and phone or submit a request to Engine Yard. Want to learn even more? Check out our webcast on the topic of email best practices.