listmonk review: self-hosted newsletter manager with zero subscription fees
8.3A fast, open-source newsletter platform that eliminates per-subscriber fees in exchange for technical setup and SMTP relay configuration responsibility.
Free software (hosting typically $5–20/month VPS, SMTP relay costs vary by provider)
- ✓Zero software licensing costs under AGPLv3, no per-subscriber or per-email fees
- ✓High-performance Go architecture documented at 7+ million emails with fraction of single CPU core
- ✓Multi-SMTP provider flexibility avoids vendor lock-in to single relay service
- ✓SQL-based subscriber segmentation and custom JSON attributes per subscriber
- ✓Built-in drag-and-drop email builder added in v5.0, WYSIWYG, Markdown, and raw HTML support
- ✓Active development with regular updates and growing GitHub community
- ✗Requires Docker or binary installation, PostgreSQL setup, and reverse proxy configuration knowledge
- ✗Deliverability depends entirely on chosen SMTP relay and proper SPF, DKIM, DMARC DNS configuration
- ✗No commercial support—community GitHub help only, no SLA or guaranteed troubleshooting
- ✗Basic automation compared to platforms like Mautic; lacks advanced workflow builders and lead scoring
- ✗Bounce handling requires manual webhook or POP3 configuration, not automatic out of box
- ✗SMTP credential test reports success even with invalid credentials, requires manual verification
Architecture and deployment model
listmonk distributes as a single compiled Go binary that requires only a PostgreSQL database to run, with no complex dependencies or runtime environment needs. Deployment typically takes 30 minutes via the official Docker Compose file, though manual installation on bare metal is equally supported across Linux, macOS, and Windows. The application listens on port 9000 by default and expects a reverse proxy like Nginx or Caddy to terminate TLS and forward traffic.
Resource efficiency sets it apart from PHP or Node.js alternatives. Official documentation shows a production instance sending over seven million emails per campaign while consuming a fraction of a single CPU core and peaking at 57 MB RAM. The multi-threaded, high-throughput email queue architecture supports rate limiting and sliding-window controls, allowing administrators to throttle send speeds for compliance with SMTP relay provider limits.
The platform does not send email directly. It hands messages to any configured SMTP provider, supporting multiple simultaneous relays. Deliverability depends entirely on the chosen SMTP service and proper DNS authentication records on the sending domain, not on listmonk itself. This separation of campaign management from delivery infrastructure is intentional; operators pair it with Amazon SES, Postmark, Mailgun, or self-hosted mail servers depending on volume and budget.
Campaign and subscriber management
Subscriber management scales to millions of records, with both single and double opt-in list support. Each subscriber accepts custom JSON attributes without schema enforcement, allowing flexible segmentation. The platform exposes raw SQL query interfaces for subscriber filtering, giving technically proficient users granular control that GUI-based tools rarely match. Bulk import handles ten thousand records per second according to the official site.
Campaign creation supports multiple composition methods. Version 5.0 added a visual drag-and-drop email builder alongside the existing WYSIWYG editor, Markdown input, and raw HTML editing with syntax highlighting. Templates use the Go templating language, supporting over 100 functions, conditional logic, and dynamic content insertion from subscriber attributes. Built-in analytics track opens, clicks, bounces, and top-performing links across campaigns, though tracking pixel use carries the documented GDPR privacy implications common to all email platforms.
Transactional messaging operates through a dedicated API, allowing applications to trigger individual emails using pre-defined templates. The platform also supports non-email channels via Messenger HTTP webhooks, enabling SMS, WhatsApp, or push notification campaigns when paired with external services. Granular role-based permissions and OIDC SSO authentication allow team collaboration with access control.
Deliverability setup and relay configuration
listmonk does not solve email deliverability on its own—it is a campaign manager, not a mail transfer agent. Users must configure an external SMTP relay and maintain proper SPF, DKIM, and DMARC DNS records on their sending domain to avoid spam folder placement. Multiple deployment guides recommend transactional SMTP providers like Amazon SES (at roughly 10 cents per thousand emails), Postmark (stricter content policies, better deliverability reputation), or Mailgun EU for data residency requirements.
Bounce handling requires manual configuration. The platform supports three methods: POP3 mailbox polling, SMTP relay webhook callbacks, or Amazon SES SNS notifications. Without proper bounce processing, hard-bounced addresses remain on active lists and degrade sender reputation. Documented reports note that POP3 bounce detection inflates bounce rates by classifying out-of-office replies and vacation messages as bounces; webhook-based bounce handling is more accurate.
A documented limitation is that the built-in SMTP credential test always reports success regardless of credential validity, requiring manual verification by sending test campaigns to real inboxes. Practitioners recommend seed-list testing across Gmail, Outlook, Apple Mail, and self-hosted addresses before any production campaign to confirm inbox placement rather than spam folder delivery.
Total cost of ownership versus commercial platforms
The software itself carries zero licensing cost under the AGPLv3 license. Operational expenses consist of hosting (typically five to twenty dollars monthly for a VPS with two gigabytes RAM) and SMTP relay fees, which vary by provider and volume. Amazon SES charges approximately ten cents per thousand emails; Postmark ranges from 15 to 60 euros monthly for typical newsletter volumes. For organizations with 100,000-plus subscribers, this model avoids the 200-plus dollar monthly floor common to Mailchimp's per-subscriber pricing tiers.
The hidden cost is operational labor. Self-hosting requires ongoing server administration: security patches, database backups, SSL certificate renewal, performance monitoring, and troubleshooting without vendor support. Multiple reviews note that for teams without existing DevOps competency, the total cost of ownership including time spent on maintenance often favors managed SaaS platforms over self-hosted alternatives. listmonk is lowest-cost for teams already managing production infrastructure; it adds overhead for those who are not.
Managed hosting services like Elestio, PikaPods, Railway, and others offer one-click listmonk deployment starting around 11 dollars monthly, removing server management burden while preserving data ownership and the no-per-subscriber-fee model. These represent a middle ground between full self-hosting and commercial SaaS, though users still configure SMTP relays and maintain DNS authentication themselves.
Competitive positioning and alternatives
listmonk competes primarily with Sendy, a 69-dollar one-time purchase PHP application locked to Amazon SES, and Mailtrain, another open-source Node.js platform. Compared to Sendy, listmonk offers multi-SMTP flexibility and faster development velocity driven by active GitHub community contributions, though Sendy provides more built-in automation features like autoresponders and RSS-to-email campaigns. Against Mailtrain, listmonk's Go architecture delivers better performance and lower resource consumption, but Mailtrain includes more WYSIWYG template tools and encryption support out of box.
For users seeking full marketing automation rather than newsletter-focused sending, Mautic represents the heavier open-source alternative with lead scoring, visual workflow builders, and landing page creation, at the cost of significantly more complex setup and higher server resource requirements. Commercial platforms like Brevo offer managed newsletter services with similar feature sets starting around free tiers, trading data ownership for vendor-managed deliverability and zero technical administration.
The project launched in 2019 and shows consistent development activity, with version 5.0 released recently adding the drag-and-drop email builder and per-campaign SMTP selection. The GitHub repository shows regular commits, active issue tracking, and growing community engagement. No commercial entity backs the project; long-term support depends on continued maintainer interest and community contributions, which carries more risk than vendor-backed platforms but also ensures no investor-driven pivot toward paid tiers.
- +Technical teams managing 10,000+ subscribers who want to eliminate scaling subscription costs
- +Organizations requiring full data ownership and GDPR compliance without third-party processors
- +Developers comfortable with Docker, PostgreSQL, and SMTP relay configuration
- +Agencies running multiple client campaigns from a single self-hosted instance
- −Non-technical users expecting click-through setup without server administration skills
- −Teams needing commercial support contracts, SLAs, or guaranteed response times
- −Organizations requiring advanced marketing automation workflows beyond basic campaigns
- −Users wanting visual automation builders, AI subject-line tools, or extensive integrations marketplace
listmonk trades the convenience of commercial SaaS for full ownership and zero software licensing costs. The Go binary runs efficiently at scale, documented at over seven million emails per campaign with minimal resource use, but responsible operation requires PostgreSQL administration, SMTP relay selection, and proper DNS configuration for deliverability. For technically equipped teams comfortable with Docker and server management, it is a capable platform; for non-technical users expecting turnkey setup, commercial alternatives remain simpler.
| Software license | AGPLv3 (free and open source) |
| Architecture | Single Go binary, PostgreSQL database |
| Deployment | Docker Compose or manual binary installation |
| Resource footprint | ~57 MB RAM peak, minimal CPU for 7M+ email campaigns |
| SMTP support | Multi-threaded, multi-SMTP provider (any SMTP relay) |
| Template engine | Go templating with 100+ functions, drag-and-drop builder |
| Subscriber capacity | Millions (SQL-based segmentation) |
| Analytics | Built-in campaign performance, bounces, link tracking |
| API | Extensive REST API coverage for all features |
| Multi-channel | Email, SMS, WhatsApp via Messenger HTTP webhooks |