listmonk Pricing: Managed vs Self-Hosted
The cheapest managed listmonk starts at about $15/month. Self-hosted, this stack measures 1.5 GiB across 2 services, which fits a $13/month flat plan with room left over.
#the numbers
Managed prices as of June 2026, each linked to its source. The self-hosted row is not an estimate: the RAM figure is what this stack allocates in its compose file, and the plan is the smallest one that holds it.
| Option | Plan | Monthly | What you get |
|---|---|---|---|
| Self-hosted on Miget ★ | 2 GiB, 1 vCPU | $13 | the whole stack, flat - no per-user or per-request metering, and the plan holds your other apps too |
| Resend | Pro | ~$20 | 50k emails/mo - works great AS the relay under listmonk too |
| Postmark | Basic | ~$15 | 10k emails/mo, $1.80 per extra 1k |
listmonk is the list/campaign layer, not the pipe: pair it with SES (~$0.10/1k) or any relay above - no per-subscriber pricing anywhere in the stack.
#the difference, plainly
$2/month, or about 13%, against the cheapest managed tier - $24 over a year. Worth stating what that money buys and what it costs, because the honest answer is not "it is just cheaper".
- You gain a bill that does not move with usage, no execution or seat metering, and root on your own data.
- You gain spare capacity: the plan is sized for this stack, and anything else you deploy inside it is free.
- You take on upgrades, backups and the pager. Managed services charge for exactly that, and for some teams it is worth every dollar.
- You should not switch for the saving alone if your team has nobody who wants to own it.
#what it costs on other platforms
Same stack, published rates elsewhere - estimates from each platform's own pricing page, not quotes. Per-service platforms are the expensive case here, because every container in this stack is its own paid service.
| Platform | Estimated monthly | Why |
|---|---|---|
| Miget ★ | $13 | flat plan, 2 GiB - databases included, no meters |
| Heroku | ~$75 | no volumes; nothing between 1 GB ($50) and 2.5 GB ($250) dynos - 2 GB containers cost far more than shown |
| DO App Platform | ~$23 | no persistent volumes - stateful containers need managed DBs/Spaces (base $5 Spaces included here) |
| Render | ~$20 | per-service instances (0.5 GB $7, 2 GB $25) - every container is its own paid service |
| Railway | ~$16 | usage-based ($10/GB RAM-mo); vCPU billed separately at $20/vCPU-mo on top |
| Fly.io | ~$10 | cheapest sticker price - but burstable shared CPUs (1/16 core; dedicated vCPUs cost ~2-3×), no compose deploys (one app per container, manual wiring), managed DBs billed extra |
#sizing, if you outgrow the small plan
The $13 plan is the smallest that fits. For production traffic you generally want the next tier up, and dedicated vCPU if the workload is CPU-bound rather than idle-waiting.
| Use case | Plan | Monthly |
|---|---|---|
| Fits the stack | 2 GiB, 1 vCPU shared | $13 |
| Comfortable, room for your own apps | 2 GiB, 2 vCPU shared | $19 |
| Dedicated vCPU (production) | 2 GiB, 1 vCPU dedicated | $22 |
listmonk itself idles near 50 MB; the database carries the list. Campaign throughput is governed by your relay’s rate limits, not this plan.
Run listmonk yourself
The compose file is open source and runs locally with docker compose up. One step to deploy it to
Miget on the $13/month plan, databases included.