The math looks simple on the surface. Vercel starts at $20/month. Netlify at $19/month. Self-hosting on a VPS? You can find VPS plans starting at $5/month.
But the real comparison isn't just the platform bill. It's about what you're actually building, how much traffic you get, and what your time is worth.
Here's the honest breakdown—when self-hosting wins, and when you're fooling yourself.
The Platform Pricing Reality
What You're Actually Paying
| Service | Free Tier | Pro | Enterprise |
|---|---|---|---|
| Vercel | 100GB bandwidth | $20/month + overages | Custom |
| Netlify | 300GB bandwidth | $19/month + overages | Custom |
| Cloudflare Pages | Unlimited | $0/month | Custom |
| Self-host (Hetzner) | N/A | $5-10/month | $20+/month |
The Hidden Costs
| Cost | Platform | Self-Hosted |
|---|---|---|
| CDN | Included | Included (Cloudflare free) |
| SSL | Included | Let's Encrypt (free) |
| Analytics | Extra | $0 (Plausible $10/mo) |
| Images | Built-in | Cloudinary ($0 for 25GB) |
| Database | Optional | Self-hosted ($0) |
The story gets complicated fast.
The Real Math: Three Scenarios
1. The Side Project (1K visits/month)
Platform:
- Vercel Pro: $20/month (you won't use the free tier forever)
- Image optimization: $5/month
- Analytics: $5/month
- Total: $30/month
Self-hosted:
- Hetzner: $5/month
- Cloudflare: Free
- Plausible: Free (under 10K views)
- Total: $5/month
Winner: Self-hosting. You could buy coffee twice a year instead of once.
2. The Growing SaaS (50K visits/month)
Platform:
- Vercel Pro: $20/month
- Bandwidth overages: ~200GB × $0.15 = $30/month
- Analytics: $5/month
- Database: $25/month (Neon/Supabase)
- Total: $80/month
Self-hosted:
- Hetzner: $10/month
- Bandwidth: 200GB on Hetzner = $0 (first 20TB free)
- Plausible: $10/month
- Database: $10/month (Supabase self-hosted)
- Total: $30/month
Winner: Self-hosting. You're building equity in your infrastructure.
3. The Production App (500K+ visits/month)
Platform:
- Vercel Enterprise: $500+/month
- Or: Pro with overages = ~$200/month minimum
- Total: $200-500+/month
Self-hosted:
- Hetzner: $20-40/month
- Load balancer: $20/month
- CDN: $0 (Cloudflare)
- Total: $40-60/month
Winner: Self-hosting. The gap widens as you scale.
The Hidden Advantages of Self-Hosting
1. You Build Equity
Every dollar on a platform is gone forever. Every dollar on self-hosted infrastructure builds toward something you own:
Platform bill: Monthly → $240/year → $0 in value Self-host: $10/month → $120/year → You own infrastructure worth $X
2. You Control Your Data
Your user data stays on your infrastructure. This matters for:
- GDPR compliance
- Data residency requirements
- Privacy-sensitive applications
3. You Can Escape
No lock-in means:
- Migrate anytime
- No surprise billing
- No policy changes
4. You Learn More
Operating infrastructure teaches you:
- Linux fundamentals
- Networking
- Security basics
- Troubleshooting
When Platform-as-a-Service Wins
Be honest—self-hosting isn't always better.
You Should Use a Platform When:
-
Startup speed matters more than cost
- Ship faster with less ops overhead
- Focus on product, not infrastructure
-
You have more money than time
- $100/month to save 10 hours/month = $10/hour
- Your time is worth more than the cost difference
-
Your team doesn't have ops skills
- A small team of developers shouldn't be sysadmins
- Platforms handle SSL, CDNs, edge functions
-
You need specific platform features
- Serverless functions
- Edge middleware
- Preview deployments
The Honest Tradeoffs
| You're Trading | For |
|---|---|
| Time | Money |
| Ease | Control |
| Managed | Self-operated |
| Vercel features | Your own infrastructure |
How to Self-Host Properly
The Modern Stack
The best practice stack in 2025:
Cloudflare (CDN + SSL + DDoS) → Hetzner/DigitalOcean (VPS) → Coolify (部署 + 管理 UI) → Coolify manages: Docker, Databases, Redis
This gives you:
- One-click deployment
- Built-in monitoring
- Automatic SSL
- Database management
The Coolify Advantage
Coolify (coolify.io) is the game-changer:
- Self-hosted Heroku alternative
- Free and open-source
- Deploys to any VPS
- One-click apps
Deploy: 5 minutes Manage: Through UI Monitor: Built-in
Database Options
| Database | Self-Host | Managed |
|---|---|---|
| PostgreSQL | Supabase $0+ | Neon $0+ |
| MySQL | Self | PlanetScale $0+ |
| Redis | Upstash $0+ | Redis Cloud $0+ |
The Decision Framework
Make the Call
Use a platform if:
- First 100 customers matter more than costs
- Your team is under 3 people
- You need serverless features
Use self-hosting if:
- You're past initial traction
- You have ops skills or want to learn
- Your margins matter
Start Platform, Migrate Later
The smart play:
- Start on Vercel (ship fast)
- Prove product-market fit
- Migrate to self-hosted when stable
- You now have revenue to pay for ops time
Don't pre-optimize. Get users first.
The Bottom Line
The honest comparison isn't:
Vercel = $20/month Self-hosted = $5/month
It's:
Vercel = $20/month + 0 hours ops Self-hosted = $5/month + 2 hours ops
At some point, your time is worth more. At some point, you're building equity.
The right answer depends on where you are:
| Stage | Recommendation |
|---|---|
| Idea/Prototype | Platform (ship fast) |
| Early Traction | Self-hosted if you can |
| Revenue | Self-hosted + platform hybrid |
| Scale | Self-hosted with managed services |
Your infrastructure should match your business stage. Not before, not after.