Email communications over the internet follow a well-defined protocol just as other means of digital communications such as mobile texts, voice-over-IP, online chat and for that matter even the regular snail mail message deliveries.
This protocol is called the Simple Message Transfer Protocol or SMTP and it allows clients to send emails to their recipients either directly or through specialized software called as SMTP servers.
In this article, we review the process of sending an email via SMTP and also provide a brief discussion of the various components that are used along the way.
We put specific focus on the sending part of an email rather than discuss the receiving part and eventual routing to the intended target’s mailbox.
What is Outbound SMTP?
At its core, this process of sending and receiving email is fairly simple and involves the following key steps-
- An email client sends a message to a specialized software called as the ‘SMTP Server’ where SMTP stands for Simple Mail Transport Protocol.
- The SMTP Server understands the SMTP protocol and typically starts by authenticating the sender. It then breaks down the incoming message and sniffs out the domain address of the intended recipient of the email. Next, it obtains the DNS server of the recipient domain and checks its DNS entry to finally obtain the IP address of the SMTP server of the recipient.
- The recipient SMTP server passes on the message to its inbound counterpart which is responsible for unpacking the message and making it available to the recipient’s email client. This counterpart may be physically hosted on the same machine as the SMTP server or on a different host.
- The incoming mail server holds the message in the recipient’s inbox and from where it can be finally pulled out by the client program used by the email recipient.
Outbound SMTP refers largely to activities in Step 2 above. Their exact nature and extent differ from provider to provider but at their core, involve authenticating the sender, unpackaging the wire message, checking DNS entry of the intended recipient and then doing a ‘relay’ to the target SMTP server if necessary or sending it over to the POP3/IMAP server for final delivery to a recipient. Other common capabilities in outbound SMTP involve providing robust scalability (handling large batches of emails, and very frequently), queuing and scheduling, advanced analytics, and dedicated IP although these are offered mostly as value-added services rather than as part of core SMTP functionality.
What about the SMTP Server?
At the very minimum, the SMTP server is the physical component that implements outbound SMTP as identified above. It implements the SMTP protocol which is responsible for retrieving, unpackaging and parsing messages sent over the wire by the email client or another SMTP server. In cases where the recipient domain is not directly connected to the SMTP server, the message is relayed to another SMTP server closer to the recipient domain. This process continues until the message is delivered to a server that is connected directly to the recipient’s domain, at which point the email is offloaded to another specialized software that finally routes the message to recipient’s inbox.
While the above describes the basic SMTP server implementation, many tools enhance this basic SMTP functionality by adding a load of other goodies that turn them into commonly called as full-fledged ‘Mail Servers’.
What is the Mail Server?
A Mail server typically represents a software bundle that offers more than just the basic SMTP implementation. Some of these value-added capabilities include
- Sender authentication
- SMTP Port forwarding
- Spam detection including malware and phishing protection on incoming emails
- Checking the reputation of email sender’s domain in order to assess whether email should be processed further or dropped
- Maintaining a list of sender domains that are currently not flagged as spurious, but which may well need to be blocked in future based on a number of signals
- Collecting deliverability feedback from recipient servers and adjusting email sender domain blocks for ones that consistently receive bad feedback from downstream processors
- Hosting the email retrieval and delivery functionality which uses POP3 or IMAP protocols to route the message to actual end-user
While this is a representative set of capabilities, Mail server vendors vary largely in terms of the exact functionality that they offer and also price points.
What is external SMTP?
SMTP is a simple protocol and it is almost trivial to write a software application to use it to send out emails. However, sending out emails through directly implemented programs may cause deliverability issues for the following reasons
- Direct implementations are usually done by individuals or free software that is deemed as more likely to result in spam or spread of malware. Mail servers typically reject such direct communications
- It is likely that direct implementations are done from home-based internet connections that do not have a static IP. This is another prominent signal for Mail servers to flag communications for fear of spam
- Even if direct implementations are done using a static IP but from a domain that lacks public reputation and any history of email discipline, clever Mail servers may still end up blocking such emails
- Mass mailings (e.g. for newsletter) are almost always going to be blocked by commonplace SMTP servers in view of their spam potential
In order to avoid these deliverability issues, it is a common practice to use an external SMTP service to send emails. Instead of talking directly to the recipient mail server, the sender sends the email to an external SMTP service that implements a number of safeguards and best practices in order to prevent or mitigate deliverability issues.
What is secure SMTP?
Secure SMTP or SMTPS is a method for securing communications over the SMTP protocol using transport layer security (TLS) which is a successor of the ubiquitous Secure Socket Layer (SSL). With SMTPS, communications are secured at the network rather than the application layer which means that the sender and recipient need to know nothing about the actual message. Two email servers that communicate using TLS use SSL technology to encrypt and decrypt the email message as it travels from source to target. The inbuilt security of the SSL certificates ensures that emails cannot be tampered with in-transit without the sender knowing.
Notice that using SMTPS simply secures the transmission of a message and that it provides no protection before the message is sent by source or after it arrives at the target.
What is mail relay and what is SMTP relay?
Mail relay refers to the process of sending an email from domain A to an address on domain B. This is done by the sending email client contacting the SMTP server of domain A, which then figures out the SMTP server of domain B and ‘relays’ the email to it for onward processing. If the sender of the email is on domain A and so is the recipient, then there is no relay and the message is delivered locally.
The SMTP relay is a more specific form of SMTP server which is solely responsible for routing emails from one incoming SMTP server to another. Unlike an SMTP server, the relay service focuses simply on identifying nearest SMTP servers and routing messages to them. The SMTP server, on the other hand, is typically also responsible for directing the email to a POP3/IMAP server and has more functionality (e.g. spam detection, domain assessments, etc.) than a pure-play SMTP relay service.
As an analogy to physical email processing, the SMTP relay service can be thought of as the post-office sorting facility that is responsible for directing incoming mail to the branch closest to the intended recipient. The SMTP server, on the other hand, is more like the destination post-office branch which is not only equipped to receiving, and storing incoming email, but also directing it to the actual address.
What is a Bulk SMTP server?
Email servers cater to different needs including
- Normal, direct communication between a recipient and a sender
- Sending out automated emails as part of enterprise jobs (e.g. transaction alert, chat notification, cart abandonment message etc.) and finally
- Bulk emails such as the ones encountered in mass email marketing (e.g. newsletters)
Each of these use cases requires the email server to implement specific features that will ensure consistent deliverability. Bulk SMTP servers are designed specifically for handling large volumes of automated emails such as transaction alerts and marketing newsletters. Unlike SMTP servers designed to handle individual emails, bulk SMTP servers implement a number of features including auto-scaling, queuing, scheduled delivery, and detailed email audit. Unlike the SMTP servers used by ISPs, dedicated SMTP servers typically do not impose a limit on the volume of emails (unless it is subject to pricing control) in a given period of time and are better suited for handling commercial email communications.
What is Auth SMTP?
AuthSMTP is an SMTP server from authsmtp.com and which allows you to send out emails using a simple username/password-based authentication. The SMTP server used by your ISP will likely limit you to send/receive email only from your ISP domain email. AuthSMTP, on the other hand, will allow you to exchange emails from any domain as long as you have a username/password for your email account. Unlike general purpose ISP servers, the AuthSMTP service is designed from grounds-up to provide a high degree of availability and deliverability to your email communications, meaning that you rarely have to worry about your emails landing in spam.
What is an Open Outbound SMTP Server?
An open outbound SMTP server or an open email relay allows anyone to send emails regardless of whether that person has an account on the server. Under authenticated (closed) SMTP, the server enforces a login requirement which means that email can only be sent by users with a valid account and who can successfully authenticate.
No email can be sent if the authentication fails.
While an open SMTP server without authentication usually maintains a high standard of service, it still has the potential for abuse and is unsuitable for mass mailing campaigns or even personal, direct communications that require high deliverability.
In the early days of the internet, open outbound SMTP servers were the de-facto choice for sending out email given their simplicity of use and minimal set-up required on part of sending clients. However, their popularity has declined given the inherent security risks. Most services have either been closed or put on blacklists by mail servers.
A note about dedicated, personal and private SMTP services
Any server that can implement the SMTP protocol can be theoretically used as an SMTP server. So, for example, a simple PHP script running on a local computer can be used to send email using the PhpMail utility. If you are a beginner and unsure on how PHP works, you can learn PHP from this tool and send custom PHP mail via SMTP. This may well suffice if all you need to do is to send out a low volume of emails for targeted, direct communications. But what if you need to send out automated emails such as transactional alerts of run mass outbound email campaigns (e.g. newsletters)?
Sending out automated emails of any kind will likely be an uphill task if you try to use a personal SMTP server implementation (e.g. Postfix). The biggest issue here would be deliverability and passing through those ever-evolving spam filters of mail servers. In addition, you may have to make a significant development investment in order to get even basic value-added facilities such as scaling, queuing, webmail, or showing analytics for your outbound campaigns.
An alternative is to ‘outsource’ mail sending to a professionally managed, dedicated SMTP server that implements all the safeguards in order to ensure deliverability. Additionally, it may also provide bolt-on capabilities such as webmail, scheduling and advanced analytics. Such a dedicated SMTP service will not only provide a highly available environment for sending out emails securely but also make ongoing investments in detecting and filtering out spam and by virtue of which, it will maintain a consistently high reputation with mail servers.
Things to look for in a top SMTP service provider
With literally hundreds of options for SMTP service providers, buyers must consider a holistic set of factors when making their selection. Following are some of the key parameters to consider when making this decision-
Delivery rates-This is perhaps the most deciding factor in favour or one provider over another. Most vendors publish delivery rates, and these could also be obtained from secondary research. Look for vendors that can offer high delivery rates under varying messaging conditions.
Availability-Vendors must be able to guarantee (through formal SLAs) a high availability time for you to be able to send out messages reliably. Small vendors that operate on small, shared infrastructures should be subjected to extra scrutiny around availability.
Scaling-This is important if you wish to send out large email campaigns to thousands of users and which must all be delivered in time. Typically, this is done by distributing the workload across several servers but not all providers offer this functionality.
Security-SMTP servers must implement robust security in order to avoid man-in-the-middle attacks using which, scammers could potentially use communications from a brand to send out malicious emails that can cause significant reputational and financial loss.
Analytics-Again, this is important if your primary use case is to send out large email blasts and where you would need to track email open, bounce, unsubscribe rates or some other custom call-to-action. Most vendors offer analytics through web-based portals and with varying degree of drill-down reporting sophistication.
Support-This is critical when using a service for outbound email marketing and where there will inevitably be issues around deliverability and compliance. It is important for the vendor to be able to offer multi-channel (phone, email, chat) support at least during office hours if not 24X7.
The above list is by no means exhaustive, but most requirements should be able to derive from one of the categories above.
Pricing and other contractual issues (e.g. length of contract, number of emails allowed per day etc.) would also play a big role in any considerations but in terms of functional requirements, the above list should be able to serve as a good start point.
Best providers to buy email SMTP server
Most SMTP service providers offer a core set of features such as deliverability, email marketing, transactional emails, and also a robust API that developers can use to build advanced push-workflows. Some offer plans that come with a limited number of emails free per month, while others restrict free emails (set quota) only for a limited trial period.
Mailgun-A popular service that is heavily used by developers of enterprise apps that implement automated emails (e.g. transaction alerts or automated notifications).
- Up to 10,000 emails per month free
- Free personalized DKIM
- Supports emails for marketing as well as transactional emails
- Providers dedicated IP
- Pay-as-you-go option with no long-term contract commitments
Amazon SES-The Simple Email Service or SES is Amazon’s hosted SMTP solution for budgets of all sizes. The service benefits from Amazon’s formidable cloud infrastructure and scale and can be used for both batch transactional emails and automated marketing campaigns
- Up to 60,000 emails free for existing Amazon EC2 users
- Free personalized DKIM but no dedicated IP option
- Can support emails for both automated alerts and email marketing
Sendgrid-This is another popular service that is used heavily by developers via its API and also by email marketers to send out automated email blasts.
- 45-day free trial, 12,000 per month, 400 emails per day
- Dedicated IP option for paid plans
- Supports both marketing and transactional emails
Mandrill-This is the transactional email processing platform from the popular email marketing platform MailChimp.
- 2000 trial sends with an hourly limit of 25 per hour
- Offers a dedicated IP option as a paid upgrade
- Supports both transactional emails (e.g. personalized one-on-one emails to existing customers within Mailchimp) and also mass marketing campaigns