The phrase "Amazon SES vs listmonk" turns up in plenty of search results, but the two products are not actually competitors at the same layer. Amazon SES is sending infrastructure, billed at $0.10 per 1,000 emails, per AWS's current pricing. listmonk is a Go-based campaign manager with 21k GitHub stars that still needs an SMTP provider to deliver mail. The honest choice is between using SES directly via API or SMTP, putting listmonk on top of SES, or using a hosted layer like Mailblast on top of SES.
Why this comparison is framed wrong
People search "SES vs listmonk" because both show up in the same self-hosted newsletter conversations, but they sit on different layers. Amazon SES is an SMTP and HTTP API for outbound mail. listmonk is, in its own words, a "self-hosted newsletter and mailing list manager" - it manages subscribers, segments, campaigns, and templates, then hands rendered messages to an SMTP server.
In production deployments, listmonk is overwhelmingly pointed at SES, Mailgun, or Postmark. The decision is not which one to pick; it is whether you want a UI layer at all. If your sending is purely transactional and triggered by code, SES alone is enough. If you need campaign tooling, list segmentation, templates, and click tracking, you need something on top of SES, and listmonk is one of the candidates. Our Amazon SES vs Postal comparison covers a different shape of self-hosted choice: a full mail server rather than a campaign UI.
What listmonk actually does
listmonk is a single Go binary backed by PostgreSQL, currently at version 6.1.0 (March 2026) on the project site, with over 21,000 stars and an AGPL v3 license on GitHub. The maintainer documents a production instance that sent more than 7 million emails using under one CPU core and a peak of 57 MB of RAM, which is the headline efficiency claim and a sharp contrast with PHP-stack alternatives.
Inside that binary, listmonk handles subscriber import and double opt-in, list and segment management using SQL expressions, drag-friendly campaign creation, a templating engine, scheduling, bounce processing, click and open tracking, a transactional API, and a multi-threaded multi-SMTP delivery queue. The "multi-SMTP" part is the key one: listmonk is explicitly designed to fan out through external SMTP servers, including SES, in parallel worker threads.
Self-hosted listmonk plus SES vs hosted Mailblast plus SES
This is the comparison that actually matters, because both options have Amazon SES underneath sending the email. The split is whether the management layer is a binary you run yourself or a hosted service. Raw SES is the third option for teams that do not need a UI at all and are happy calling SES's SMTP interface or HTTP API from application code.
| Dimension | Raw Amazon SES | Self-hosted listmonk on SES | Mailblast on SES |
|---|---|---|---|
| Sending infrastructure | Amazon SES | Amazon SES | Amazon SES |
| Management layer | None - your code | Go binary + PostgreSQL on your VPS | Hosted by Mailblast |
| Per-email cost | $0.10 per 1,000 | $0.10 per 1,000 (AWS direct) | $0.10 per 1,000 (AWS direct) |
| App-layer cost | $0 | ~$5-$20/mo VPS + ops time | From $10/mo |
| Drag-and-drop editor | ✗ No | Basic templating | ✓ BeeFree |
| List and segment UI | ✗ No | ✓ SQL segments | ✓ Yes |
| Automation | ✗ No | Limited | ✓ On paid plans |
| Click and open tracking | Event publishing only | ✓ Yes | ✓ Yes |
| Patching and backups | AWS handles | You handle | Mailblast handles |
| Data ownership | Your code, your storage | Full - your VPS | Hosted, your AWS keys |
When listmonk is the right call
listmonk is the strongest fit for technical operators who want a real management UI without paying for hosted SaaS and who are comfortable in a Linux and Go world. The PostgreSQL requirement is non-negotiable, but the resource footprint is so light that a single small VPS handles substantial volume. The AGPL license matters too: any modifications you distribute must be open-sourced.
The honest profile is: you have one engineer happy to install and patch a Go binary, you already run PostgreSQL or do not mind starting, you want full ownership of the subscriber database, and you are willing to wire up SES (or another SMTP) yourself. Newsletters from open-source projects, indie publishers, and small developer-led teams are the recurring pattern.
When raw SES is enough
For pure transactional sending - password resets, receipts, order confirmations, system notifications - a management UI adds overhead you do not need. You call SES from application code, either via SMTP or the HTTP API, and let the application database hold whatever subscriber data you have. The SES event publishing pipeline writes bounces and complaints to SNS or Firehose, and you process them in code.
This pattern stops working the moment you need marketing campaigns, segmentation, A/B testing, or a UI that non-engineers can use. At that point you either build internal tooling, install listmonk, or hand it to a hosted layer. Raw SES is the right call when the answer to "who sends the campaigns?" is "a cron job."
When Mailblast is the right call
Mailblast is the right call when you want what listmonk offers - a real campaign UI with SES underneath - without running the server yourself. You connect your AWS account, AWS bills you directly at $0.10 per 1,000 emails, and Mailblast provides the BeeFree drag-and-drop editor, automation on every paid plan, double opt-in, suppression handling, and analytics. The free plan covers 1,000 contacts and 10,000 emails per month; paid plans start at $10 per month for that same 1,000 contacts.
If listmonk and Sendy are the two self-hosted options you are weighing, our Sendy vs Mailblast comparison covers the hosted alternative to the PHP-stack route specifically.
Our recommendation
If you have engineering capacity and want full data ownership, run listmonk on a small VPS pointed at your own Amazon SES account. The 57 MB peak RAM figure is not marketing fluff, and the Go binary is genuinely easy to operate compared to PHP-stack alternatives. If your sending is purely transactional and triggered by code, skip the UI entirely and call SES directly.
For marketing operators who do not want to manage a server, use Mailblast on SES. Same sending infrastructure, same per-email cost, none of the patching. The question is never really "SES or listmonk" - it is "do I want to run the management layer myself, or do I want it hosted?"
FAQ
Is listmonk a replacement for Amazon SES?
No. listmonk is a campaign and subscriber management UI written in Go; it does not deliver email itself. It connects to an SMTP provider to actually send. Amazon SES is one of the most common backends people point listmonk at, so the two are usually paired, not chosen between.
Can listmonk send through Amazon SES?
Yes, that is the most common production setup. You generate SMTP credentials in the SES console, paste the host, port, username, and password into a listmonk SMTP block, and listmonk's multi-threaded worker pushes campaigns through SES at $0.10 per 1,000 emails billed directly by AWS.
How much hardware does listmonk need?
Very little. The project documents a real production instance sending 7 million emails on under one CPU core with peak RAM of 57 MB. The single Go binary plus PostgreSQL means a $5-$10 VPS is enough for most newsletters, far lighter than PHP-stack tools like Mailwizz or Mautic.
Why would I use Mailblast instead of listmonk on top of SES?
Both put SES underneath, but listmonk asks you to run the server, patch it, back up PostgreSQL, and monitor bounces yourself. Mailblast is the hosted version of the same idea - you bring your AWS keys, AWS bills you for sending, and we handle the app layer, BeeFree editor, and automation.
Is listmonk free?
The software is AGPL v3 licensed and free to download and run. The bill comes from infrastructure: a small VPS for the Go binary and PostgreSQL, plus whatever your SMTP provider charges. With SES underneath, that is $0.10 per 1,000 emails on top of roughly $5-$20 per month in server costs.
Disclosure: we make Mailblast, a hosted management layer on top of your own Amazon SES account. We get paid when readers like the hosted path. If listmonk is the better fit for your team, install it - the project is excellent and the maintainer has earned the 21k+ stars.