Newsletter image

Three ways to build an eight-figure newsletter

  • Tags:
  • Droplet
  • Mailchimp
  • SendGrid
  • Simple Email Service (SES)
Andrew HaririSubscribe

Tue Sep 28 2021   ⋅

8 minute read

The Morning Brew's newsletter caters to 2.5M subscribers and in 2020 was projected to earn close to $20 million that year through their free subscription. Newsletters can serve as a great source of income for people who are looking to share their knowledge and ideas with others.


For companies and startups, like burnrate.fyi, they can also serve as a way to stay connected to customers. Consider clicking the button at the top to subscribe to our newsletter and stay up to date 😊


But not all newsletters are built the same way. In this guide, we're going to cover 3 different newsletter builds. Each build will cover a particular email marketing service (ie. Mailchimp, SendGrid, or Listmonk). Then we will measure each build against 3 different scenarios. For each build, we'll take a look at how it's designed technically and how that affects their cost.




Build overview
MailchimpSendGridListMonk
LevelBeginnerIntermediateAdvanced
Coding Needed?NoNoYes
Cost per month💰💰💰💰💰💰
Setup time30 mins1 hour3 hours - 2 days*

* Depends on how much prep you've done already on your domain and email / smtp server
Scenarios overview
S1S2S3
Monthly subscribers50k100k200k
Emails per month500k1.2M3M





The objective is to learn about each of these different services and understand when it's appropriate to use them. By the end, we'll be able to fill out this cost matrix, evaluating each build for all 3 scenarios.

Cost matrix
MailchimpSendGridListMonk
S1 Cost?????????
S2 Cost?????????
S3 Cost?????????

Technical overview

At a very basic level, a newsletter has 3 primary components:

  1. Email server
  2. Database
  3. SMTP Relay server

As a whole, the newsletter is like any delivery service. Let's use a pizza delivery company as an analogy.

The email server is the staff at the pizza restaurant; the email server handles the business logic of the newsletter in the same way the staff manages the operations of the restaurant. The restaurant staff figures out which pies go to who, how many to make, and handles cancellations (similar to unsubscribing from an email chain).

The database is the list of customer orders and contacts, which has information such as the customer's address, phone number, their order, and when they ordered. Similarly, the database in the newsletter mainly keeps track of the subscribers list, subscriber emails, and any other metadata.

The SMTP Relay server is like the pizza delivery service you use (ie. Uber Eats, Doordash, etc). You hand the pizzas off to them and they make sure that they gets in the right hands. Likewise, the SMTP server handles the delivery logistics of the emails. This excerpt from SendGrid's blog explains it well:

"When you send an email, the SMTP server processes your email, decides which server to send the message to, and relays the message to that server. The recipient’s inbox service provider, such as Gmail or AOL, then downloads the message and places it in the recipient’s inbox." For more info on SMTP servers, visit this link


The reality is that email delivery is a bit more complex than that, but for the sake of this exercise, a basic understanding of how it works will suffice. If you're curious to learn more about the other components of email delivery, take a look at the diagram below:

SendGrid SMTP Overview

1 - MailChimp

Mailchimp is like one of those all-inclusive family getaways, but for email. You pay a bit more but all you really need to do is show up, they take care of the rest. No email server / smtp nonsense, you go and enjoy yourself.

It was in the news recently for its $12 billion acquisition by Intuit, an amount that some would refer to as "chimp change" 😏

It's one of the largest and most popular email marketing companies in the world. Setup is pretty self-explanatory and they have customer support.

The standard / premium tier comes with other perks like:

  • inbox
  • audience dashboard, predicted demographics
  • email templates and scheduling
  • social posting
  • basic reports for insights and optimization
  • email, live chat support

and much more. For more info on pricing and features, check out the email marketing category.

Essentials vs Standard vs Premium tier
Slide 1 of 3
Mailchimp Essentials pricing

In the image carousel above, I've gone ahead and graphed all three of mailchimp's pricing tiers.

Each of Mailchimp's tiers has different limits for emails per month and number of contacts. The essential tier allows you to send emails of up to 10x the number of contacts while the standard tier is 12x and premium is 15x.

You'll see their pricing summarized below:



S1 (50k subs, 500k emails)S2 (100k subs, 1.2M emails)S3 (200k subs, 3M emails)
Mailchimp$270.00$540.00$1190.00

2 - SendGrid

SendGrid is a Twilio product that has a suite of features that make it easy to setup your newsletter.

I would highly reccomend this SendGrid vs Mailchimp blog by hubspot if you're interested in an all-in-one newsletter service. I'll highlight some of the core overlapping features below:


  1. Both have really nice email template builders
     Email template builder
     
  2. Both have reporting and analytics tools built-in which tracks things like open rate, click rate, etc
     Reporting and Metrics
     
  3. Both have great customer support


How they differ:

  1. In my opinion, SendGrid differs in that its more geared towards developers. They offer a mail API that you can integrate with your own backend
  2. Its focused on providing services to large scale companies rather than small businesses.
  3. (kind of a part of 2, but really important) One thing that stuck out to me in the article above is SendGrid's 97% average delivery rate with their expert services solution. This is crucial for many of SendGrid's large customers like Spotify, Airbnb, and Uber who need to make sure their customers are successfully receiving emails and that they're not showing up in their spam or junk box.

SendGrid has two plans, an email api plan and a marketing campaigns plan. The email api plan capped out at 1.5M emails / month before you needed custom pricing so I just estimated the 3M emails pricing based on the slope of the pricing line. The email api plans pricing are as follows:

S1 (50k subs, 500k emails)S2 (100k subs, 1.2M emails)S3 (200k subs, 3M emails)
SendGrid$249.00$449.00*$957.00
* Estimated price

3 - Listmonk server

I wanted to see how much it would cost to use a self-hosted newsletter. After going through several, I finally settled on listmonk, a self-hosted newsletter and mailing list manager that uses a PostgreSQL database for managing all newsletter data such as subscriptions. Check out their repo below.

listmonk

Public

High performance, self-hosted newsletter and mailing list manager with a modern dashboard. Single binary app.

Go

6.1k

416

Listmonk has a really simple "deploy to heroku" option that made the server and database setup pretty simple. The only other thing I needed to setup was an SMTP server. I decided to go with Amazon SES (simple email service) which will handle the email delivery.

Server costs

Now I had to figure out how much this stuff would cost. It's difficult to estimate server costs without any context so I decided to post this question in the listmonk repo:

... "for a simple newsletter, how much RAM and how many vcpus would I need to support 10,000 subscribers and 100,000 emails per month?"

Shockingly, one user responded

"I'm currently running on $5 DO Droplet (Digital Ocean Droplet). Far more subscribers and number of emails."


No way. That can't be right? Right? Yeah that's what I thought.

Then @knadh, the creator of listmonk responded and discussed how many vcpus and memory his 7+ million e-mail production instance was using


Knadh


less than 1 vcpu and 57MB of RAM for 7+ million e-mails

And, he plans to release a 2.0 soon that's even more performant somehow... I don't get it, but hey, I'm not complaining and nor should you. @knadh 🙌   amazing work

Thus, for my server's pricing estimation, I decided to use a $5 Digital Ocean droplet that comes with 1 vcpu, 1gb RAM and 25gb SSD. What's great about Digital Ocean is they also come with 1,000 GB of data transfer included with the droplet. At burnrate.fyi, we make it really easy to compare and understand different server offerings. For more information on data transfer and other server offerings, check out the server category.


One of the secret ingredients in Listmonk is that it's written in Go. Since Go is a compiled language, it's extremely performant and consumes a lot less memory than many other interpreted languages like javascript.


USC_Connection


SES costs

The gif above is an example of a newsletter from the USC Alumni Association. It's ~76KB so let's conservatively estimate that each email you send is ~100KB or ~.0001GB (KB = kilobytes, GB = gigabyte).

Total costs

SES charges $0.10 per 1,000 emails and $0.12 per gb of data per month (total amount of data you send across all emails including the message body + attachments + message headers).



S1 (50k subs, 500k emails)S2 (100k subs, 1.2M emails)S3 (200k subs, 3M emails)
Listmonk$61.00$139.40$341.00

FAQ and caveats

Now some of you may be asking,

"Why can't I use AWS SNS (simple notification service) instead of SES, don't they both send emails?"

This is a great question. At $2.00 per 100,000 notifications, SNS is significantly cheaper than SES. But for a newsletter, SNS is not recommended. SNS is pub/sub service focused on delivering basic data really quickly to users.

Other things SNS DOES NOT allow you to do:

  1. Have more control over the content and how its designed
  2. HTML email templates
  3. Control over domain implementation, ie. using a custom domain for sender (noreply@company.com) with custom email bounce

Tradeoffs

The final price matrix is down below. I've also calculated how much more expensive each build is compared to listmonk and included it in parentheses.

Cost matrix
MailchimpSendGridListMonk
S1 Cost (50k subs, 500k emails)$270.00 (4.4x)$249.00 (4.1x)$61.00
S2 Cost (100k subs, 1.2M emails)$540.00 (3.8x)$449.00 (3.2x)$139.40
S3 Cost (200k subs, 3M emails)$1190.00 (3.5x)$957.00? (2.8x)$341.00

Now you might be thinking, what service should I use?

I think you should use Mailchimp or SendGrid if you're starting out. Mailchimp and SendGrid's Marketing Campaigns Plan have generous free tiers that supports up to 2,000 contacts. Starting out with the free tier will allow you to focus on creating the best content for your newsletter and not worry about infrastructure and scaling.


Once you reach the free tier limit (2k contacts), I'd seriously evaluate your newsletter. What are your open rates looking like? The Morning Brew boasts a 40% open rate and I think that's a good benchmark for people to evaluate how their newsletter is doing.


But even if that is the case and you have a >= 40% open rate, building out your own newsletter service may not be the best option. Put yourself in the Morning Brew's shoes. The Morning Brew has 2.5M subscribers and makes $20 million (allegedly).

$20 million2.5Msubscribers=$8 per subscriber\dfrac{\$20 \ million}{2.5M subscribers} = \$8 \ per \ subscriber

The Morning Brew could be getting charged $100k just for all of their mail infrastructure and it would barely make a dent in their cash flows. Non-technical founders would also probably have to hire a full time software engineer to build and maintain the email server.

Ultimately, it may make more sense to focus on finding ways to increase revenue rather than reduce cost.

Another thing to consider is that the cost matrix assumes you're sending 10-15 emails per subscriber every month. If you just have a weekly newsletter that you use to send emails 4 times a month, assuming you have the same number of subscribers, your cost matrix for Listmonk could look 2-4 times lower.

If you'd like to see more content like this, please give this post a like and leave a comment in this LinkedIn post!

Hope to see you out there making 8 figures one day. Don't forget about me when you do!

Take care and hope to see you all soon,

Andrew

Appendix

Math for Listmonk server costs

(just an fyi, k is not a coefficient, its a unit of 1,000)


S1SES=$0.101k emails500k emails+$0.12gb0.0001gbemail500k emails=$56.00S1_{SES} = \dfrac{\$0.10}{1k \ emails} * 500k \ emails + \dfrac{\$0.12}{gb} * \dfrac{0.0001 gb}{email} * 500k \ emails = \$56.00

S1Droplet=$5.00S1_{Droplet} = \$5.00

S1Total=S1SES+S1Droplet=$61.00 per monthS1_{Total} = S1_{SES} + S1_{Droplet} = \$61.00 \ per \ month

...repeat for S2 and S3 and you have the table below


S1 (50k subs, 500k emails)S2 (100k subs, 1.2M emails)S3 (200k subs, 3M emails)
Listmonk$61.00$139.40$341.00
Sources
  1. Hubspot - SendGrid Email Template builder image
  2. Hubspot - Mailchimp reporting and analytics tool image
  3. SendGrid - Email Delivery is Complex image
  4. Eternal Gems - Newsletter header gif

Table of Contents

SubscribeJoin the Discord

SVG Logo

Make the most of your money

© 2021 burnrate

Categories

Relational DatabaseDocument DatabaseServerlessAuthenticationServers

Disclaimer: Burnrate strives to keep its information accurate and up to date. This information may be different than what you see when you visit a service provider or specific product’s site. We are not legally responsible for any of the content on this website.