Running your own email server costs $5-40/month in infrastructure: $5-20 for a VPS, $0 for open-source software (Mailcow, Postal), and $0 for SSL (Let's Encrypt). The hidden cost is time — 4-8 hours for setup, 1-2 hours/month for maintenance. At 100K emails/month, total cost is $10/month vs $135-175 on managed ESPs.
How Much Does It Cost to Run Your Own Email Server?
The Infrastructure Costs
Self-hosted email has three cost categories: what you pay monthly, what you pay once, and what you pay in time. For a full breakdown, see is self-hosted email worth it and our VPS comparison.
Monthly Costs
| Component | Cost | Notes |
|---|---|---|
| VPS hosting | $5-40 | Depends on volume needs |
| Domain name | $0-1 | Amortized from annual cost |
| SSL certificate | $0 | Let's Encrypt, auto-renewed |
| Monitoring tools | $0 | Free options sufficient |
| Backup storage | $0-5 | Optional offsite backups |
| Total | $5-45/month |
One-Time Costs
| Component | Cost | Notes |
|---|---|---|
| Domain registration | $10-15/year | If you don't already own one |
| Setup time | 4-8 hours | Your labor |
| IP warmup period | 2-4 weeks | Reduced capacity while warming |
Software Costs
Every major self-hosted solution is free:
- Mailcow: Free, open-source, Docker-based
- Postal: Free, open-source, web UI
- Postfix + Dovecot: Free, Linux standard
- KumoMTA: Free, open-source, high-volume
You pay nothing for the email software itself. This is the fundamental cost advantage over managed ESPs.
VPS Sizing by Volume
| Monthly Volume | Recommended VPS | RAM | Monthly Cost |
|---|---|---|---|
| Up to 50K | Hetzner CX22 | 2GB | €4.90 (~$5) |
| 50K-200K | Hetzner CX32 | 4GB | €8.90 (~$10) |
| 200K-500K | Hetzner CX42 | 8GB | €16.90 (~$18) |
| 500K-1M | Hetzner CX52 | 16GB | €32.90 (~$35) |
| 1M+ | Dedicated or KumoMTA cluster | 32GB+ | $40-100 |
The best VPS providers for email are Hetzner, OVHcloud, and Vultr. Port 25 access is the critical requirement — many cloud providers block it.
Practitioner note: Don't over-spec your VPS. A 2GB Hetzner instance handles 50K/month easily. I see people buying 8GB servers for 10K/month volume "just in case." Start small and upgrade when queue times increase — Hetzner lets you resize without data loss.
Cost vs. Managed ESPs
Here's the comparison that matters — what you'd pay self-hosted vs managed services at each volume:
| Monthly Volume | Self-Hosted | AWS SES | Mailgun | SendGrid | Annual Savings vs Mailgun |
|---|---|---|---|---|---|
| 10,000 | $5 | $1 | $35 | $20 | $360 |
| 50,000 | $5 | $5 | $75 | $90 | $840 |
| 100,000 | $10 | $10 | $175 | $135 | $1,980 |
| 250,000 | $18 | $25 | $225 | $250 | $2,484 |
| 500,000 | $20 | $50 | $275 | $249 | $3,060 |
| 1,000,000 | $35 | $100 | $525 | $450 | $5,880 |
The crossover point where self-hosted becomes cheaper than Mailgun is around 10K/month. Where it becomes meaningfully cheaper (savings exceed time investment): 50K/month.
The Time Cost Nobody Talks About
Infrastructure isn't free just because the software is free. Your time has value.
Setup Phase (One-Time)
- VPS provisioning and OS setup: 30 minutes
- Mailcow installation: 30 minutes
- DNS configuration (MX, SPF, DKIM, DMARC, PTR): 1-2 hours
- Testing and verification: 1-2 hours
- IP warmup: 2-4 weeks of monitoring
Ongoing Maintenance (Monthly)
- Docker container updates: 15 minutes
- Log review and monitoring: 30 minutes
- Backup verification: 15 minutes
- Occasional troubleshooting: 0-2 hours
Total ongoing: 1-3 hours/month in steady state.
At Your Hourly Rate
| Your Hourly Rate | Monthly Time Cost | Annual Time Cost |
|---|---|---|
| $25/hour | $25-75 | $300-900 |
| $50/hour | $50-150 | $600-1,800 |
| $100/hour | $100-300 | $1,200-3,600 |
| $150/hour | $150-450 | $1,800-5,400 |
If you value your time at $50/hour and spend 2 hours/month on maintenance, that's $1,200/year in labor. You still save money if your ESP bill would be $200+/month ($2,400/year).
Practitioner note: The time cost drops significantly after month 3. The first three months are intensive — setup, warmup, learning the system, fixing initial issues. After that, most months are 30 minutes of running updates and glancing at dashboards. I track my time across client servers and it averages 45 minutes/month in steady state.
Incident Response: The Unpredictable Cost
Beyond routine maintenance, incidents are unpredictable but inevitable. Budget for them:
| Incident | Frequency | Hours per Incident |
|---|---|---|
| IP blacklisted | 1-3x/year | 2-4 hours |
| Service down | 1-2x/year | 1-3 hours |
| SSL certificate issue | 0-1x/year | 1-2 hours |
| Failed update | 0-1x/year | 2-6 hours |
| Compromised account | 0-1x/year | 3-8 hours |
| Annualized average | 1-2 hours/month |
Unlike an ESP, there's no support team to call. A blacklisted IP means your email stops delivering until you diagnose the cause, fix it, request delisting, and wait 24-48 hours. Every issue is your problem, on your timeline.
Break-Even Analysis
Self-hosted breaks even with Mailgun when:
At $50/hour labor cost:
- 50K/month: ESP saves $840/year, labor costs $600/year → saves $240/year
- 100K/month: ESP saves $1,980/year, labor costs $600/year → saves $1,380/year
- 500K/month: ESP saves $3,060/year, labor costs $600/year → saves $2,460/year
At $100/hour labor cost:
- 50K/month: ESP saves $840/year, labor costs $1,200/year → loses $360/year
- 100K/month: ESP saves $1,980/year, labor costs $1,200/year → saves $780/year
- 500K/month: ESP saves $3,060/year, labor costs $1,200/year → saves $1,860/year
Practitioner note: Agencies managing multiple client domains see the biggest wins. One Mailcow server handles 20 domains on a single $10/month VPS. That's $10/month vs 20 separate ESP accounts at $35+/month each. The economics are overwhelming at scale.
The Decision Matrix
| Your Situation | Recommendation |
|---|---|
| Under 50K/month, no sysadmin | Stay with ESP |
| 50K-200K/month, technical team | Evaluate case-by-case |
| 200K-500K/month | Self-hosted likely wins |
| 500K+/month | Self-hosted almost certainly wins |
| Any volume, existing sysadmin | Self-hosted likely wins |
| Multiple domains/agency | Self-hosted wins earlier |
| Non-technical team, any volume | Stay with ESP or hire managed |
If you want exact cost projections for your specific volume and infrastructure needs, schedule a consultation — I'll build a detailed cost model comparing your current ESP spend against self-hosted options.
Sources
- Hetzner: Cloud Pricing
- OVHcloud: VPS Pricing
- Mailgun: Pricing
- SendGrid: Pricing
- AWS: SES Pricing
v1.0 · April 2026
Frequently Asked Questions
How much does a self-hosted email server cost per month?
$5-20/month for the VPS, plus your time. Software (Mailcow, Postal) is free. SSL is free. At 50K emails/month, a $5/month Hetzner VPS handles it. At 500K+/month, budget $20-40/month for a larger VPS.
Is it cheaper to host your own email server?
At 50K+ emails/month, significantly cheaper. Self-hosted costs $5-20/month regardless of volume. Mailgun charges $75-275/month for the same volumes. Annual savings range from $780 at 50K/month to $3,000+ at 500K/month.
What VPS do I need for an email server?
Minimum 2GB RAM for Mailcow handling up to 100K emails/month. 4GB RAM for 100K-500K/month. 8GB+ RAM for 500K+/month. Storage needs are modest — 20GB SSD is enough for most setups. CPU isn't the bottleneck; RAM is.
What are the hidden costs of self-hosted email?
Your time (1-2 hours/month), IP warmup period (2-4 weeks of reduced sending), occasional troubleshooting (blacklist removals, deliverability issues), and the opportunity cost of managing infrastructure instead of your core business.
How much does it cost to send 1 million emails per month?
Self-hosted: $20-40/month (larger VPS needed). AWS SES: $100/month. SendGrid: $450+/month. Mailgun: $525+/month. Self-hosted is 10-25x cheaper than traditional ESPs at this volume.
What if I already have a sysadmin on staff?
The economics shift dramatically because time cost approaches zero — the sysadmin is already paid. If your sysadmin can absorb mail server maintenance into their existing workload, self-hosting can pay off at volumes as low as 50K emails/month.
What skills do I need to self-host email?
Linux server administration, DNS management, SMTP protocol knowledge, security hardening, Docker (for Mailcow), log analysis, and troubleshooting skills. If 'read Postfix logs' or 'debug DKIM alignment' sounds unfamiliar, expect a significant learning investment before the cost savings materialize.
How do I account for downtime costs?
Estimate the revenue impact of email being down for 1-4 hours (typical self-hosted incident). If your email generates $1,000/day in revenue, a 4-hour outage costs ~$167. Factor 1-2 incidents per year into your annual calculation.
Want this handled for you?
Free 30-minute strategy call. Walk away with a plan either way.