Listmonk
Self-hosted newsletter and mailing list manager in a single Go binary, fast enough to push millions of emails, if you bring your own SMTP.
The leanest self-hosted newsletter engine going, a single Go binary that has pushed 7 million emails on under one CPU core. Two catches decide it: listmonk sends nothing on its own, so you wire up your own SMTP or Amazon SES and own deliverability yourself. And there is no official managed cloud, so the free download is free as in puppy.
Teams with someone technical who already run their own infrastructure and want bulk newsletters and transactional email at near-zero marginal cost, with subscriber data staying on their own Postgres instead of a vendor's servers.
You bring the sending layer. listmonk queues and templates the mail, then hands it to an SMTP server or SES that you set up, pay for, and keep off blocklists. Deliverability, IP warmup, and bounces are your job, not the tool's.
One maintainer, Kailash Nadh, has carried the project since 2019, so the bus factor is real. It is stable and still shipping, but there is no company on the other end of a support ticket.
What it does
- Sends bulk email campaigns to millions of subscribers from a single Go binary backed by Postgres, with multi-SMTP queues and rate limiting doing the heavy lifting
- Manages single and double opt-in lists, imports and exports subscribers, and slices them with raw SQL queries for segmentation
- Builds emails in a drag-and-drop editor, a WYSIWYG editor, Markdown, raw HTML, or plain text, with Go templating for dynamic content
- Sends transactional messages over an API and fans out to email, SMS, WhatsApp, or push through messenger webhooks
- Tracks opens, clicks, bounces, and top links in a built-in analytics dashboard
- Locks down access with OIDC single sign-on, granular roles, API tokens, and S3-compatible media storage
What it can’t do
- Send a single email on its own; listmonk has no sending infrastructure, so you connect your own SMTP server or Amazon SES and pay for it separately
- Fix your deliverability; sender reputation, IP warmup, SPF, DKIM, and staying off blocklists are all on you, not the tool
- Give you a managed cloud from the maintainer; hosting is DIY, and the one-click options come from third-party providers, not listmonk itself
- Offer a company-backed support desk; one person maintains it, so help means GitHub issues and the docs, not an SLA
- Match a polished marketing suite on template design and campaign tooling; the drag-and-drop builder helps, but the tool still feels engineered for developers more than marketers
Pros & cons
- Genuinely fast and light, a single binary that has pushed 7 million emails on under one CPU core and 57 MB of RAM
- Subscriber data lives on your own Postgres, so there is no per-contact pricing and no third party holding your list
- Sends through any SMTP or Amazon SES, so you can shop for the cheapest reliable sending layer
- Strong admin controls for an open-source tool, with OIDC SSO, roles, and API tokens built in
- Marginal cost approaches zero at scale, the real payoff versus per-email SaaS billing
- You supply and pay for the SMTP or SES sending layer, the hidden cost that surprises people expecting Mailchimp in a box
- Deliverability is entirely your problem, and getting bulk mail into inboxes is hard, specialized work
- One maintainer carries the project, so the bus factor and support expectations are real risks for a business
- No official hosted version, so someone on your team owns the server, upgrades, backups, and security patching
- The dashboard and campaign tooling feel built for developers first, and the docs assume you are comfortable on a server
What the community says
I use self-hosted Listmonk. Works great in combination with my blog. But yeah its slow growth. But that's actually what I prefer, because if you grow fast on Substack, these are gone as fast IMO as people don't really read substack emails anymore.
For those who don't want to dive into self-hosting, Pikapods is a good alternative to host Listmonk at around $2/mo.
In recent weeks, I've spun up listmonk (mailing list solution), matrix (as a slack alternative). The main objection is that with more moving parts to worry about, the workload for me also increases. Things need updating, monitoring, backups, alerting (and responding to alerts), etc. That sucks up my time and that is scarce.
I know that guy from listmonk! I always thought the frontend could use some love and planned to spend a couple of days on contributing a couple of ideas, but I never came around. Now I know why things are as they are.
If the Newsletter supports Markdown, too (I use Listmonk), then the conversion would be straight forward too, also with no bugs.
6 sourcesWhere this page’s facts came from. Open the receipts.
Watch it work
Real tutorials and reviews from YouTube, not ours.