I ran my own email server (Mailcow + Postfix + Dovecot) for 2 years. Here's what I learned, why I switched back to FastMail, and when self-hosted email actually makes sense.
Why I tried self-hosted email in the first place
I'd already self-hosted Plex, Nextcloud, Vaultwarden. Email felt like the final boss. "I have my data, no Google scanning my mail, full control." Worth a shot.
What worked
1. Mailcow dockerized is genuinely good
The Mailcow project packages Postfix, Dovecot, SpamAssassin, ClamAV, webmail (SOGo), and admin UI into one Docker Compose stack. Setup: ~3 hours including DNS.
2. Catch-all addresses work great
self-hosted@mydomain.com goes wherever I want. Forwards, aliases, per-service addresses (github@mydomain.com, banks@mydomain.com) all trivial.
3. Spam filtering is on par with Gmail
Rspamd + ClamAV + a few RBL lists caught ~95% of spam with zero false positives in my testing.
What broke
4. Deliverability is a nightmare
Even with SPF, DKIM, DMARC all perfectly configured, my mail went to spam at:
- Outlook.com (50% inbox rate)
- Yahoo (40%)
- Some corporate Exchange servers (20%)
Why: IP reputation. My home IP was on some RBL by month 2. Even a clean VPS IP takes months to warm up.
5. Reverse DNS and PTR records
Hetzner/Floating IPs make PTR easy. Most residential ISPs don't. I paid $4/month for a VPS just for SMTP relay + PTR.
6. Bounce handling is tedious
Hard bounces need manual suppression. Soft bounces need retry logic. Spam complaints need FBL processing. Gmail does all this for free. With self-hosted, you write scripts.
7. iOS Mail integration is fragile
Every iOS update breaks something. Push notifications stopped working twice. IMAP cache corrupts occasionally.
What I did differently
The setup cost me ~30 hours over 2 years:
- 6 hours initial setup
- 10 hours on deliverability (DNS, PTR, warming)
- 8 hours on iOS integration issues
- 6 hours on misc (SSL, backups, monitoring)
When self-hosted email makes sense
Honestly? Almost never. Maybe if you:
- Live in a country where email providers won't give you a domain (rare)
- Are a journalist needing extreme operational security
- Run a business with 50+ employees on your own domain
For personal email? FastMail ($5/month) is worth it. You get:
- 99.99% uptime SLA
- Inbox at Gmail, Outlook, etc.
- Push notifications that work
- IMAP if you want it
What I use now
FastMail $5/month + my own domain. Best of both:
- I own my domain (can move providers anytime)
- FastMail handles deliverability, push, spam
- Webmail + IMAP + Apple Mail all work flawlessly
Cost comparison
- Self-hosted: $50/year (VPS for relay) + 30 hours over 2 years ($3,000 opportunity cost at $100/hr)
- FastMail: $60/year + 0 hours
Self-hosted email is a money-losing proposition for personal use unless your time is free.
What I keep self-hosted
- File storage (Nextcloud) — saves real money vs Google Drive
- Password manager (Vaultwarden) — saves money and works fine
- Photos (Immich) — saves money
- Backups — has to be local anyway
- VPN (WireGuard) — performance-sensitive
What I don't keep self-hosted:
- Email — deliverability too hard
- Notes — drop his situation for sync
- Calendar — CalDAV works but UI is worse than Google Calendar
TL;DR
Self-hosted email is fun as a learning project. As a daily driver, it's not worth the deliverability headache unless you have very specific requirements. FastMail + custom domain is the sweet spot for personal use.
Top comments (0)