Dont Send Your Own Emails

Well, at least not directly from your own application servers.

Most web applications send out emails, either for registration confirmation or other transactional proposes. This usually involves writing up a small handler that sends out the email directly from the local server, that is running Postfix, Sendmail or *shrug* IIS .
If you are administrating your own server, it may require a bit more time in configuring the MTA (mail transfer agent) to actually send out the emails but once you are done with it, you dont have to touch it ever again. Which is nice, in theory.

The problem is that your delivery rate may suffer. Misconfiguration or the lack of proper settings on the MTA may cause your emails to be rejected or end up in the spam folder.
And what about large email transactions that your application sends once a month to all of your users? A Sudden “surge” of 2000 outgoing email from your server might get you black listed for a while.

Use a third party solution

If you are not sending out large amounts of email, this will most probably be free and you will even get a nice dashboard with statistics and shinny gauges.
What is the added value?

  • They monitor their IP address reputation, which includes whitelisting, RBL monitoring and “breaking in” new servers. Reputation takes time and thought.
  • They handle the PTR records. These are reverse DNS records for the IP addresses.
  • An easy to use interface for configuring DKIM signatures. The signatures validate that you are the sender of the email. Setting it up on your own server usually involve pain.
  • Monitoring of bounced emails. You will be able to query each email status to see if it bounced, allowing you to remove obsolete addresses from your list. Ignoring such bounce messages may get you black listed soon enough.
  • Rate limit your outgoing emails. ISPs are very touchy when it comes delivery rates, you need to be polite and limit the number of concurrent connections.
  • You will actually be able to visually see the delivery rate.


What are some common email delivery services available?

I’m just throwing a few names. The prices are as the time of writing this post:

  • Mandrill by MailChimp – free up to 12k emails per month
  • Sendgrid – Free for under 200 emails a day
  • Mailgun – Free for under 200 emails a day
  • Amazon SES – For AWS users, up to 2,000 emails a day, traffic not included.

How to integrate these services in your application?

Usually it involve using their API and publicly available, and documented classes. Another option is to use the SMTP protocol, by either directly sending the mail from your application, specifying it as the server, or by configuring a “smart host” on your local server.

Oh, and if you still want to send directly from you server and need help setting it up, feel free to contact me using the feedback form.


Powered by WordPress. Designed by Woo Themes