Explore our email newsletter set up and how we send thousands of emails every week to our customers and clients!
When it comes to setting up email notifications, marketing and day-to-day operations, it can be a bit confusing and overwhelming with what you need to do. We’ll take you through the ‘essential’ emails that form part of any business or website’s operational and growth strategy. Ensuring these email are properly set up and don’t land in spam, can help retain users and increase overall sales.
If you’re looking to elevate your marketing and transactional emails to the next level, in this article, we’ll share with you what we use, how our no-code/low-code approach is super easy for anyone to implement, and the results we’ve achieved.
For us at PostApex, our emails largely fall into four discrete categories:
Marketing Emails
These are emails we schedule to send to subscribers on our newsletter list for promotional and marketing purposes (this is also where our sponsored content/ads go!)
Transactional Emails
These emails are sent automatically by our website when a user makes an interaction and needs to be either notified or confirmed via email (e.g. ad booking confirmation, new direct message etc.)
Automation Emails
When a user performs a certain action (e.g. signing up, subscribing etc.) they are placed into an email funnel that queues a sequence of time-delayed emails to be sent to them
Client Emails
These are emails that our team send to clients/prospective advertisers.
Here’s an illustrative graph that visually shows the volume of emails we send over a 24 hour period based on the type of email we send. The vertical axis represents the relative volume (number) of emails that are sent, while the horizontal axis shows the 24 hour time series. Notice the HUGE spike in marketing emails we send, vs. the far flatter and consistent stream of emails that are sent from transactional and automation emails.
For each of these email types we use different pieces of technology that integrate in various unique ways. We’ll explore each of these in turn in the remaining of the article.
How we save thousands, sending thousands of marketing emails using AWS Simple Email Service
When we first started our email newsletter we solely used Mailchimp. This was good while we were first starting out as they provided a full email marketing suite of tools, from email design, subscriber management and click tracking.
As PostApex and our email newsletter started to grow, we realised that paying $20 a month for Mailchimp when our site (at the time) was not monetised, made little sense to us. We’re fully bootstrapped so every little saving we can make counts.
We then started investigating other alternatives and were shocked to learn how cheap (and reliable) Amazon’s Simple Email Service (AWS SES) is. We’ve summarised the cost per 10,000 emails between Mailchimp, Campaign Monitor and AWS SES, in the table below.
Since we adopted AWS SES, it now costs us $0.20 to send out our email newsletter to our subscribers. Far cheaper than the $20 that Mailchimp wanted from us for the same.
Email reliability was a large concern for us, however we’ve not noticed any issues with our open/click rates since switching.
Here’s our open rates and click through rates using AWS SES.
This is what our open rates and click through rates on Mailchimp used to be. Given that industry average is around 20% open rate and 5% click rate, we’re pretty pleased with our statistics overall, and there’s little deviation between the two platforms.
You can’t really used AWS SES on its own as it doesn’t have an interface to manage campaigns, store contacts nor handle bounces/unsubscribes. AWS SES really just provides the SMTP API relay that allows you to use their network of servers (we’re using their Ohio AWS facility) to send emails.
Thankfully there are a whole host of web apps that you can use that integrate directly with AWS SES. For this, we chose Sendy.
What is Sendy?
Sendy is the application that sits on top of AWS SES and is something that you can install on your own servers. It provides the core email sending functionality allowing you to manage contacts and subscribers and create campaigns to send to your subscribers. You can think of Sendy as being the direct replacement of the Mailchimp UI.
For a one time fee of $69 we were able to download Sendy and install it using cPanel on our own hosting servers. It took about 20mins to install and they have a really good guide on their website about how you should set up your AWS SES account and Sendy so that they work smoothly.
Sendy essentially replaces the frontend of Mailchimp, whereas AWS SES replaces the backend. Together they work as a email powerhouse, a formidable beast to take on any major competitor in the email marketing space.
We also have a daily quota of 50,000 emails we’re allowed to send via SES (thank you Amazon!) which is crazy given that we don’t utilise it all at all. That amounts to 18.2 million emails a year!
When you get into the Sendy interface, you can see that it pretty much has it all. Campaigns, templates, subscriber lists, rules and reports are all part of its core functionality.
For what we need, it is thus perfectly suited to us and we couldn’t be happier.
If you’re interested in using Sendy but don’t want to set it up/manage the hosting server and AWS setup, reachout to us and we’d be happy to help you out for a small fee, at a fraction of what’d you’d pay any big commercial website. We’ve got about 18.1 million emails to spare and we’d be happy to share.
Why we obsess over our transactional email metrics!
Transactional emails are basically a bunch a pre-set templates that our website populates with user data when an action is performed on the site. They either provide the user with a confirmation or give them a notification which requires them to perform an action.
Some of our transactional emails that we send are:
Plus there are a whole host of emails that get sent to us (PostApex admins) when certain actions are performed by our users, for example:
There are quite a few more we won’t get into, but the gist is that when a critical action is performed on the website, emails are triggered by our website.
Here’s an example of a transactional email that is sent when a user tries to contact us using our contact us webform. We created our sleek and stylish template (using this email designing tool) set some tags like [NAME] and [EMAIL] within the template and our contact us plugin did the rest.
A lot of the coding for the transactional emails are actually done autonomously and is either handled by WordPress or plugins we use such as Woo Commerce. This works well for us as we just have to set the template structure and WordPress takes care of populating the email with the correct data.
You may be wondering, how our website actually sends transactional emails? We use something called an SMTP API relay.
What is an SMTP API?
SMTP stands for Simple Mail Transfer Protocol and it’s basically the language that email servers use to send and receive mail messages. If we wanted our emails to reliably get to their intended recipients without going into spam we knew we had to use an SMTP relay to get our messages delivered without a hitch.
In this setup, our website would essentially parse emails from our website into a service that has an SMTP relay to send the emails on our behalf.
We thought about using AWS SES but were a little disappointed with the lack of available metrics (open rates, CTR etc.) that could be easily displayed using it. As a result, we decided instead to try out using SendInBlue. They let you send 200 emails a day for free, so it was perfect for us to get started with. PLUS using the WP Mail SMTP plugin we were able to connect to SendInBlue using an Application Programming Interface (API) which gives us email-by-email statuses and metrics.
Here’s what it looks like on our website admin, we’ve connected to SendInBlue using their API key and the plugin sends all outgoing emails from the website directly to them to send to the recipient. When we do testing, we can also easily switch off all outbound emails from our WordPress site.
The beauty of using SendInBlue really comes out when logging into their website. On their transactional email dashboard, we are able to see a number of different metrics, including:
They also provide some very detailed statistics, aggregating the open and click rate. As you can see, compared to our marketing emails, our transactional emails perform better, with a 60% open rate and 32% click rate.
For those extremely tech savvy who want to see what a message header looks like for a transactional email sent via SendInBlue, take a look at the screenshot below. The message ID corresponds to the same ID in SendInBlue.
Note, that we had to set our SPF policy on our DNS Zone File to allow emails to be sent on our behalf by SendInBlue and you can see our DKIM results pass in the message header above. This validates that the email coming from SendInBlue is genuine and not an imposter, thus keeping our emails spam free!
How we maximise upselling using autonomous emails
Admittedly we don’t really use this very well, however it’s worth a mention because of how powerful a marketing tool it is in ensuring customer/client retention.
Autonomous emails are a form of sudo-transactional/sudo-marketing email that essentially places a contact into an email workflow and sends them periodic emails over a period of time.
Usually that means that when a user performs a certain action (e.g. signing up, subscribing etc.) they are placed into an email funnel that queues a sequence of time-delayed emails to be sent to them.
The benefits of this setup are huge and entire email marketing businesses tools (e.g. Intercom and Drip) exist purely for this.
Autonomous email sequences require an entry point (a trigger that places an email contact into the workflow) and an exit point (a condition, or set of conditions, that allows the email contact to exit the workflow). There are also intermediary steps (that cannot be an exit point) such as a time delay.
You can see below just some of the automation trigger points that SendInBlue offers. Any of the below will allow a user to enter into an autonomous email workflow:
There are then a number of exit points (can also be intermediary steps in the workflow) that we can include:
Since all of our transactional emails go through SendInBlue, it’s really easy for us to know which email gets sent and to whom, allowing us to build custom workflows.
There are a number of pre-built email workflows that we can chose from to either (1) improve engagement, (2) increase traffic, (3) increase revenue or (4) build relationships.
The workflow below shows a trigger point of a transactional email being opened and a follow up email being sent. It is possible to customise this workflow and also include a time delay.
There are also other more complex sequences that require Javascript events to be triggered on the website. Abandoned cart emails are the perfect example of this, and you can see the below diagram that shows a 2 hour wait before an abandoned cart email is sent.
You can also create your own workflows from scratch if you don’t want to use any of the pre-built templates. This allows you to fully customise the email workflow, adding in A/B conditions and creating some very complex conditional email requirements that can send different autonomous emails based on whether the contact has opened/clicked on a previous email.
Plus there’s absolutely no coding required to set up autonomous emails, and with SendInBlue, access to their automation platform is also included in their free plan.
Overall, it is HIGHLY recommended to set up at least one workflow of autonomous emails when users first sign up. It’s really easy to implement and if you are already sending your transactional emails through the same automation platform, they can both work together to allow you to create custom follow up emails.
As a fully bootstrapped enterprise, we’re always on the lookout for good savings. When we first explored where we could set up our personal email inbox for PostApex, we considered using Google, however their $5/per month charge per inbox was not ideal for us at the time.
Currently we have 9 people on our team (including interns) and we also have two emails for administration purposes, so in total we have 11 email addresses to maintain. Over a year, that would cost us in total $660 using Google.
After hunting around for a while, we eventually we settled on using the lesser known (but excellent!) Zoho Mail for their free business email hosting.
Zoho Mail have a Forever Free Plan for up to five users, giving you 5GB/User and a 25MB attachment limit. Plus you get full web access and free mobile apps too. On their free plan however IMAP/ POP/ Active Sync access is not included, meaning you can’t use an external email client (e.g. Apple Mail) to sync your emails.
Nevertheless, for 80p a month (approx. $1.10) you can get a lot more features, which for our 11 email addresses comes to $145 a year, saving us $514 compared to using Google email hosting.
Zoho Mail is a great place for anyone wanting a custom domain email hosting to start. We’ve had a great experience using it, and it is very feature rich. Here are some of our favourite features we would be lost without:
Here’s a full list of the options available on Zoho Mail.
If you’ve benefited from this article, have implemented something from this, or have a suggestion to upgrade our setup further, let us know in the comments section and tweet us on Twitter!