Self-hosted newsletter and mailing list manager

Performance and features packed into a single binary.
Free and open source.

Live demo

listmonk screenshot

Download

The latest version is v2.2.0 released on 30 Jul 2022. See release notes.


Binary

  • ./listmonk --new-config to generate config.toml. Edit the file.
  • ./listmonk --install to setup the Postgres DB (⩾ v9.4) or --upgrade to upgrade an existing DB.
  • Run ./listmonk and visit http://localhost:9000

Installation docs →

Docker

listmonk/listmonk:latest

Use the sample docker-compose.yml to run manually or use the helper script.

Demo

mkdir listmonk-demo && cd listmonk-demo
sh -c "$(curl -fsSL https://raw.githubusercontent.com/knadh/listmonk/master/install-demo.sh)"

(DO NOT use this demo setup in production)

Production

mkdir listmonk && cd listmonk
sh -c "$(curl -fsSL https://raw.githubusercontent.com/knadh/listmonk/master/install-prod.sh)"

Visit http://localhost:9000

Installation docs →

NOTE: Always examine the contents of shell scripts before executing them.

Mailing lists

Screenshot of list management feature

Manage millions of subscribers across many single and double opt-in lists with custom JSON attributes for each subscriber. Query and segment subscribers with SQL expressions.

Use the fast bulk importer (~10k records per second) or use HTTP/JSON APIs or interact with the simple table schema to integrate external CRMs and subscriber databases.

Transactional messaging

Screenshot of transactional API

Simple API to send arbitrary transactional messages to subscribers using pre-defined templates. Send messages as e-mail, SMS, Whatsapp messages or any medium via Messenger interfaces.

Analytics

Screenshot of analytics feature

Simple analaytics and visualizations. Connect external visualization programs to the database easily with the simple table structure.

Templating

Screenshot of templating feature

Create powerful, dynamic e-mail templates with the Go templating language. Use template expressions, logic, and 100+ functions in subject lines and content. Write HTML e-mails in a WYSIWYG editor, Markdown, raw syntax-highlighted HTML, or just plain text.

Performance

Screenshot of performance metrics
A production listmonk instance sending a campaign of 7+ million e-mails.
CPU usage is a fraction of a single core with peak RAM usage of 57 MB.

Multi-threaded, high-throughput, multi-SMTP e-mail queues. Throughput and sliding window rate limiting for fine grained control. Single binary application with nominal CPU and memory footprint that runs everywhere. The only dependency is a Postgres (⩾ v9.4) database.

Media

Screenshot of media feature

Use the media manager to upload images for e-mail campaigns on the server's filesystem, Amazon S3, or any S3 compatible (Minio) backend.

Extensible

Screenshot of Messenger feature

More than just e-mail campaigns. Connect HTTP webhooks to send SMS, Whatsapp, FCM notifications, or any type of messages.

Privacy

Screenshot of privacy features

Allow subscribers to permanently blocklist themselves, export all their data, and to wipe all their data in a single click.

and a lot more …


Download