Okay, the Mailtrap team, including me, helps send millions of transactional emails every month. And yeah, it takes a lot of expertise to support the infrastructure that delivers just in time regardless of the email client.
So, I want to give you a comprehensive guide covering all the tips and tricks we collected along the way.
It’s designed so that you – the software engineers, product managers, email marketers, and other email-sending junkies set up transactional emails with ease.
Now, let’s dive right in.
What is a transactional email?
A transactional email is an automated email sent in response to a specific action you take on a website or app.
Here are some key points about transactional emails:
- Triggered by your actions: They are sent as a result of something you do, such as making a purchase, creating an account, or resetting a password.
- Personalized information: They contain details relevant to your specific transaction, like order confirmation details or unique login credentials.
- One-to-one communication: Transactional emails are typically sent to individual recipients, though some notification emails may go to a small group.
Each action prompts a corresponding email, tailored to provide messaging relevant to the action trigger. Here’s a quick breakdown of the common actions/use cases:
- A user requests a password reset and successfully does so.
- A user signs up to a platform or joins a mailing list.
- A double opt-in is in place.
- A credit card has been added or removed.
- A user was verified (or, quite the opposite, their verification failed).
- A user used a vital feature and needs to know what to do.
- A purchase is made and a receipt needs to be sent.
- A payment fails and an action is needed from a user.
- A user’s trial period is about to expire and they need to be sold on a premium plan.
- Terms of service or any other legal files are amended.
Note that transactional emails may look very different for a Tinder-like app than a government taxation platform, for example. The key is to carefully go through the entire customer journey and figure out where such triggers should be placed.
So far so good, but what’s the difference between marketing and transactional emails?
In contrast to transactional, marketing emails (or promotional emails) are initiated by businesses and sent in bulk to multiple recipients, typically as an email campaign.
5 examples of transactional emails
Following the definitions, I’d like to give you five emails that exemplify good practice with a brief explanation for each one.
- Slack – Welcome email
Slack’s welcome email ticks all the right boxes. The subject line is short and to the point with a preheader text that clearly shows what the email is about.
The main CTA is positioned to be accessible without scrolling and has a copy that explicitly tells the user what happens after the click. Additionally, there are well-structured tips on how to get started with links that lead directly to the tutorials under the cloaked links.
The whole copy and structure of the email is very short, focusing only on the information relevant to getting started.
- Coinbase – Email address verification
This email verification notification from Coinbase is as lean as they come. It contains just the information about the verification process and a CTA, thus focusing only on the functionality of the email.
Typically, I wouldn’t recommend adding more information than that since it may only confuse new users.
- Basecamp – Account notification
The Basecamp account notification below has a compartmentalized layout which helps recipients skim through a few levels of information.
First, there’s a bold preheader explaining the action. Next, the email body is sectioned so that it clearly leads the user back to the account. Plus, there’s a feature reference that helps users better manage the account.
It’s a bare-bones example of a notification, but it should be like that. These types of transactional messages often don’t require any action from the user. So, there’s no need to bloat them with copy or CTAs.
- Warby Parker – Order confirmation
I chose the order confirmation from Warby Parker since their transactional email template cleverly bends the rules. Here’s what I mean:
- The email looks like a marketing message, but it’s not.
- The copy is transactional yet it hides marketing lingo within the product name and the custom nature of the order.
- The email lists products as images with great use of white space adding to the exclusive appearance of the email and the order.
- The email contains critical shipment arrival information with a bit of hype since it’s a quick delivery.
Now, although I like this email a lot, it has limited use.
I’d argue it’s only suitable for e-commerce leaning towards more exclusive or custom offerings. Here the design plays into the branding and perceived product value. More often than not, that approach doesn’t move the dial with SaaS customers, for example.
- Houzz – Account update notification
Lastly, the account update notification from Houzz has a minimal copy and relays only the information relevant to the email trigger action. And there’s the expected level of personalization – the email contains the account holder’s name.
But there’s one point of improvement here. Houzz may want to move the “The email address for your…” sentence to the first line of the email so that it clearly displays in the preheader.
Why are transactional emails important?
I already hinted at some of the reasons why transactional emails are important. But it pays to take a closer look to have a better idea of their place in the grand scheme of product or service development.
- Confirmations of user actions:
As mentioned, transactional emails are essential for fundamental interactions such as password resets, two-step verifications, and failed payment notifications. Users need these communications to continue their activities smoothly on a platform.
- Meeting user expectations:
Users expect certain types of transactional emails as part of their online experience. Common examples include order confirmations, receipt notifications, and welcome emails immediately after registration. The absence of these can lead users to suspect that something went wrong, which can lead to higher churns.
- Driving e-commerce sales:
Transactional emails can help improve sales by addressing cart abandonment or prompting late/failed payments. They are an effective tool for re-engaging customers who have shown interest but didn’t complete a purchase.
However, be very careful with the copy. Transactional emails should state the facts of cart abandonment and late/failed payment, but shouldn’t try to squeeze in email marketing messaging and mannerisms.
- Building brand loyalty:
By providing timely and relevant information, these emails strengthen the customer’s relationship with the brand, foster customer loyalty, encourage repeat business, and improve user retention.
What are the types of transactional emails?
Here’s an overview of different types of emails, briefly explaining their purpose and the action that triggers them.
- Account creation emails:
Sent to confirm the creation of a new account, these emails help verify the user’s email address and provide initial login details or activation links. They are a critical part of the onboarding email sequence.
- Order confirmation emails:
These are post-purchase emails to confirm the order and provide purchase details, order numbers, expected delivery info, bookings etc. You can find a detailed guide for other types of confirmation emails at the link ◀️.
- Shipping notifications:
Sent to update customers beyond shipping confirmation. They may contain the status of their orders, including tracking numbers and links to monitor shipment progress.
- Password reset emails:
These are security-related emails sent in response to a password reset request. They include a link that the recipient must follow to reset their password.
- Account notifications:
These notification emails inform users about changes to their account settings, privacy policy updates, or other significant information relevant to their account security or status. Depending on their nature, they may contain a CTA or a link—for example, a CTA to accept a new privacy policy.
- Billing updates:
Sent to inform customers about billing information, these emails may include business invoices, payment receipts, or notifications of billing problems.
- Abandoned cart emails:
Sent to users who have added items to their online shopping cart but didn’t complete the purchase, these emails aim to encourage the user to return and complete the sale.
Again, I’d like to stress that you shouldn’t attempt to sneak in marketing information, messaging, or offers within transactional emails. This goes double for account notifications and cart abandonment emails. However, there could be very specific exceptions, which I discussed in the examples section.
How to write a transactional email?
You write a transactional email message as concisely and precisely as possible. No fluff, no marketing lingo, only relevant transactional information.
Still, I want to give you a blueprint for these emails regardless of their type. Below, you’ll find specific email elements with references to the best practices on how to write them.
- Subject line
With subject lines clarity always trumps cleverness. You need to make the subject as clear and concise as possible. It should indicate the content of the email without needing to open it.
From the technical perspective, keep the subject under 35 characters to ensure it displays fully on mobile devices.
- Preheader text
View the preheader as the supporting act for the subject line. It should complement the subject by providing a teaser for the email content, encouraging the user to engage.
For instance, if there’s critical timeliness info, include it in the preheader – something like “….Your password reset link expires in an hour…” Also, try to keep it short; typically, less than 100 characters displays well on most devices.
Lastly, the preheader is a good place for email personalization. Consider including the user’s or the account name and other data relevant to the action that triggered the email.
- Email body
Continue where you left off with the preheader text focusing only on the information relevant to the action that triggered the email or the action you need the user to take.
I know I keep repeating the above, but consider it as a reminder not to let your email meander beyond its transactional nature.
To that, the body needs to be super clear and concise. Remove all the fluff and make sure the recipients can focus on the necessary actions or information.
Don’t forget to account for the visual hierarchy. For example, it’s okay to use bullet points to make the email easy to skim.
- Links and Calls to Action (CTAs)
The primary CTA needs to be highly visible; place it above the fold so it’s visible without scrolling. Use action-oriented copy for your CTAs like “View your order” or “Reset your password,” which directly tells the user what to expect when they click.
The same applies for links – it needs to be blatantly obvious why a person needs to click a link and where the action takes them.
Ideally, you’d test all the CTAs and links before they reach the recipients. I’ll be talking more about that in the coming sections.
- Sign-off
Choose a sign-off that suits the tone of your brand, such as “Best regards,” “Sincerely,” or something less formal depending on the context.
Pro Tips:
- Transactional emails don’t require an unsubscribe link.
- You may include social media widgets in the email footer.
How to design a transactional email?
With writing tips out of the way, I’d like to focus on some technical tips on how to design the email. Here, it’s not only about making your email “beautiful” – the goal is to make it highly deliverable and create a transactional email template that displays well across different email clients.
The HTML and CSS needs to be clean and well structured for optimal deliverability. Technically, it means the following:
- Keep the email with between 600 and 800 pixels max.
- Grid layers are the safe zone, avoid elements that need HTML floats, for example.
- Don’t go crazy with the fonts, the oldies but goldies like Arial, Georgia, or Verdana are your best bet.
- JavaScript can make your email almost underivealble. If you really need motion elements, use .gif.
- Leverage the table element to code the email structure. If you need a complex layout, nest the tables.
- ‘cellpadding’, ‘width’, and ‘valign’ attributes are usually the best choice for table dimensions.
- With CSS, you should avoid compound style declarations, layout properties, shorthand code, and complex selectors.
- Prior to sending, the CSS needs to be inlined.
Now, embedding images in transactional emails isn’t generally recommended. But if you really need to do it, keep the following in mind:
- Host the images somewhere safe.
- Use absolute links (the URLs that have the whole address from HTTPS to the domain name).
- Mind the image size.
- Be careful about the text-to-image ratio (The safe zone is 80-to-20% in favor of the text, but I’d recommend going down to 90-to-10%).
Also, don’t forget about mobile-friendliness. For instance, you should have about 46×46 link hit areas. And increasing the text size with media queries also helps.
Pro Tip: Mailtrap Email Delivery Platform allows you to create, store, and test transactional email templates.
How do you send transactional emails?
There are two ways to send transactional emails – SMTP and API. But first, you need to choose a reliable email service provider to ensure high deliverability.
In this guide, I’ll be using Mailtrap Email Delivery Platform, which is one place to test, send, and control your email infrastructure.
More precisely, I’ll use Mailtrap’s transactional email service. It’s a separate email stream allowing you to delineate transactional from bulk emails which has a significant effect on email deliverability.
Now, the first thing to do is create a Mailtrap account, if you haven’t done it, click here.
Then, proceed to add your domain under Sending Domains, and verify it. Note that this is a critical step to ensure high deliverability of your emails. (Yeah, I mentioned deliverability like five times in three paragraphs, but there’s a method to my madness 😀)
Domain authentication is a necessity as per the latest sender’s requirements updates from Google and Yahoo. Check the video below.
Also, adding the provided DNS records to your domain provider’s records and verifying the domain ‘tells’ mailbox providers like Gmail that you’re a trusted sender. In other words, it’s a significant step towards ensuring your emails land in the inbox, not the spam folder.
Now, after you’re done, it’s only a matter of choosing the Transactional Stream, copy-pasting the credentials into your app or service, and you’re ready to send via the SMTP method.
Even so, I know transactional emails may require a greater level of automation and flexibility. Mailtrap provides you with a well-documented email API and SKDs for major programming languages.
With all that in place, you’ll only need to keep an eye on conversions. And with Mailtrap, you get the industry-best analytics with one helicopter-view dashboard and one-click drill-down reports.
Speaking of stats and dashboards, there are some peculiarities related to transactional emails:
- The deliverability needs to be higher than 90%.
- Open rates need to be at ~80% or more (this applies only to transactional emails).
- Click rates may vary depending on the nature of the transactional emails.
- The bounce rate should be less than 2% (if not, you need to clean your email list).
- Ideally, there shouldn’t be any spam complaints for transactional emails.
Before moving onto email testing, and its relevance, I’d like to make and honorary mention of other transactional email services. These include Amazon SES, Mailgun, and Sendgrid.
But note that each one comes with specific limitations and nuances. If you want to learn more about best transactional email providers, check this article.
Why you should test your emails and how to do this right
Finally, let’s assume that you have chosen the tool (Mailtrap of course 😀), set up the right triggers, and configured the most effective emails to be sent at just the right time. Can you move on to other tasks now?
By all means, don’t. Actually, don’t send any communication before you test it first. There are many things that can go wrong:
- Password reset links won’t work.
- Buyers won’t be able to download their invoice (or worse, they’ll download someone else’s!).
- You’ll send some hints for completing an important step days after a user reached this goal.
- The formatting of an email will make it impossible to read or click-through.
- You’ll let someone know that their card was declined when it was not.
And these are just a few of the many examples. We strongly recommend that you test each message before it’s delivered to a real person.
You can do the tests with Mailtrap Email Testing, which is part of Mailtrap Email Delivery platform. You get an email sandbox to inspect and debug emails in staging, dev, and QA environments before sending them to recipients.
Here’s a quick list of all the Mailtrap Email Testing features:
- Fake SMTP Server
- HTML/CSS check
- Spam score check
- API for QA automation
- Ready-to-use integrations in 20+ languages ( like Ruby, Python, PHP, Node.js, .Net, etc.)
- Emails preview
- Multiple inboxes for different projects and stages
- User management, SSO
And you can easily test email templates in sandbox using API, then move to production and send via Mailtrap Transactional Stream.
Final words
At the end of the day, transactional emails are a huge topic. In this guide, I’ve given an overview of all the important aspects you should know about when working with this type of email.
Each of them deserves a separate article — and we have a bunch of them on our blog — so it wouldn’t ever have been possible to squeeze all the information into one article.
We hope that after reading this post you have the whole picture of transactional emails and know what specific guidelines to look for and where to find them.