Stars
Forks
Watchers
Developer links
Listmonk
Seven million emails from a single binary peaking at 57 MB of RAM: listmonk is a high-performance newsletter and mailing list manager in Go with PostgreSQL as its only dependency - no Redis, no worker processes, no message broker. The project's own production benchmark sent 7+ million emails with the binary peaking around 57 MB of RAM, and throughput exceeds 100K emails per hour on modest hardware. Campaigns run through a multi-threaded, multi-SMTP queue with round-robin delivery, per-server concurrency, retries, and sliding-window rate limiting across providers like Amazon SES, SendGrid, Mailgun, or your own Postfix relay. Subscribers carry custom JSON attributes and are segmented with raw SQL queries, so any audience Postgres can express, listmonk can target. Templates use Go template syntax with 100+ functions for dynamic per-subscriber content, and the Vue dashboard reports opens, clicks, bounces, and unsubscribes with automated bounce processing. A REST API handles transactional email and programmatic control, a built-in media library hosts campaign assets, and CSV or API import migrates lists from hosted platforms. The economics are the headline: where Mailchimp pricing scales with list size, listmonk plus Amazon SES sends the same volume for hosting cost plus roughly $0.10 per thousand emails - commonly a 95% reduction - and your email list, a core business asset, stays on your own infrastructure. AGPLv3-licensed; bring your own SMTP provider for delivery.
Benefits
- Near-Zero Per-Email Cost
- Mailchimp pricing scales with list size. listmonk plus Amazon SES sends the same volume for roughly the cost of hosting plus $0.10 per thousand emails - commonly a 95% reduction.
- Runs a Million-Subscriber List on a Small VPS
- A single Go binary using ~50 MB of RAM with PostgreSQL handles subscriber bases and send volumes that force competitors onto multi-service architectures.
- Subscriber Data Stays Yours
- Email lists are core business assets. Self-hosting keeps addresses, engagement data, and segmentation logic on your infrastructure rather than a marketing platform's.
- SQL Beats Point-and-Click Segments
- Segments are raw SQL against a documented schema, so conditions like 'clicked the last 3 campaigns AND plan=pro' are one query instead of a visual builder's limits.
Features
- Multi-SMTP Campaign Engine
- Round-robin across any number of SMTP providers with per-server concurrency, retries, batching, and sliding-window rate limiting to respect provider quotas.
- SQL Subscriber Segmentation
- Subscribers hold custom JSON attributes; lists support single and double opt-in; audiences are targeted with arbitrary SQL queries.
- Go Template System
- Fully custom email design with Go template syntax and 100+ functions for dynamic, per-subscriber content.
- Analytics and Bounce Handling
- Open and click tracking, unsubscribe management, and automated bounce processing rendered as dashboard charts.
- REST and Transactional API
- Programmatic subscriber management, campaign triggering, and a transactional email API for application-generated messages.
- Media Library and Import
- Built-in media hosting for campaign assets and CSV or API-based subscriber import for migrations from hosted platforms.