Emails are an integral part of any website, from the small informational sites to the monolithic web applications.

Contact and lead forms, password resets and purchase receipts are sent via email yet most small websites send email from their web server.

Web Servers are for serving web pages not for sending email

The Problem

Sending emails from your web server is a bad practice for these reasons:

  • Your email service or mailer daemon could stop and fail to restart.
  • Your web server’s IP could be flagged for spam.
    • This happens on shared hosting services where others on the same IP are spamming.
  • It opens your server to spamming exploits since the default sendmail configuration is not that secured.
  • A good number of emails you send could end up in the recipient’s spam folder.
  • Your neighbor on the same host is filling up the mail queue and your messages are delayed for hours.

The Solution

Configure your website to send emails out via a Email as a Service provider. Most are free for the 10k emails sent per month. If your website sends less than 10k emails per month these services are free.

Below are some of the ones that I recommend:

These services take around an hour to setup but your emails will be delivered by white listed servers in record speeds and in the event an email does not get delivered their systems will retry to deliver. They also have tools for you to run reports and see statistics on delivery and email opens.

For those with Wordpress sites there are plugins to send emails with these services and if you have a custom web application you can send via authenticated SMTP or pull in a package to send from these services via their API.

📬 - now your website is sending emails the right way.