Module 12 · Lesson 25 of 26

Scaling patterns for Mailcow

Part of Mailcow: Self-Hosted Mail Server Mastery — Scaling, Multi-Server & Troubleshooting Playbook.

Mailcow is single-host by design. Once you exceed it, three patterns work:

1. Vertical first. A 16 vCPU / 64 GB host handles ~2000 active mailboxes comfortably. Cheaper and simpler than splitting.

2. Split inbound vs storage. Front Mailcow with a dedicated MX relay (Postfix or HAProxy → Mailcow) to handle bursty inbound traffic. Mailcow still owns mailboxes.

3. Multiple Mailcow installs sharded by domain. Each domain lives on one host; a DNS-level MX pool routes per-domain. Simple, robust, doesn't need true clustering.

True HA? Mailcow doesn't ship clustering. DRBD-replicated vmail + MariaDB Galera + keepalived works but you own the integration. Most teams that "need HA" actually need faster recovery — invest in tested restore drills first.

🌍 Geo-redundancy: stand up a passive Mailcow in a second region, rsync vmail and mysqldump nightly. When the primary dies, switch DNS — recovery in <30 min.

Sign in to keep track of what you have read.

Pulse · self-hosted sending

Own the infrastructure your pipeline depends on.

One install script on your own server. Pulse sets up the MTA, mailboxes, certificates and dashboard; you add domains and start sending.

# on a fresh Ubuntu server
$ cd pulse && sudo ./install.sh
→ docker compose up · kumomta · stalwart · caddy
→ dashboard ready on https://pulse.yourdomain.com
$

Also from us:Beat — monitoring that tells you the fixConsulting — $65/hr, no retainer