Infrastructure Costs: Running 12 Products for Under $200/Month
People assume running 12 products simultaneously must cost a fortune in infrastructure. It doesn't. Here's the exact breakdown for February 2026.
The portfolio
Active products: AdminStack, EpsteinScan, DeedStack, GreenAcres, AlgoStack, ImageStack, StreamStack, MemStack, CW Affiliate Investments (this site), plus three smaller tools in development. Each has its own domain, database, and deployment pipeline.
The breakdown
Hosting: $87/month
| Service | Provider | Cost | What it hosts |
|---|---|---|---|
| Railway | 3 services | $15 | AdminStack API, AlgoStack worker, StreamStack pipeline |
| Hetzner | CX22 VPS | $5.50 | EpsteinScan (needs raw compute for OCR) |
| Netlify | Free tier | $0 | 6 static frontends (DeedStack, GreenAcres, this site, etc.) |
| Vercel | Free tier | $0 | 2 Next.js apps (AdminStack frontend, ImageStack) |
| Railway (DB) | PostgreSQL | $7 | Shared PostgreSQL for 3 smaller projects |
| Cloudflare | Free tier | $0 | DNS and CDN for all domains |
| Subtotal | $27.50 |
Wait, that's only $27.50 for hosting? Yes. The secret is using free tiers aggressively and only paying for compute when you actually need it.
Databases: $50/month
| Service | Provider | Cost | What it stores |
|---|---|---|---|
| Supabase | Pro plan | $25 | Primary database for 5 products |
| Supabase | Free tier | $0 | 2 smaller projects |
| Redis | Upstash | $10 | Caching and rate limiting across all products |
| PostgreSQL | Railway | $7 | (counted above) |
| SQLite | Self-hosted | $0 | MemStack state, local development |
| Subtotal | $42 |
Domains: $45/year (~$3.75/month)
12 domains on Cloudflare at $8-12/year each. I moved everything off GoDaddy and Namecheap to Cloudflare for the at-cost pricing.
APIs and services: $60/month
| Service | Cost | Usage |
|---|---|---|
| Anthropic (Claude API) | $30 | AlgoStack analysis, StreamStack scripts |
| ElevenLabs | $5 | StreamStack TTS |
| Stripe | $0 | Only charges on transactions |
| SendGrid | $0 | Free tier (100 emails/day) |
| GitHub | $0 | Free for public and private repos |
| Sentry | $0 | Free tier for error monitoring |
| UptimeRobot | $0 | Free tier for uptime monitoring |
| Subtotal | $35 |
Monitoring and tools: $15/month
| Service | Cost | Usage |
|---|---|---|
| Anthropic (Claude Code) | $20 | Development tool (this is my biggest expense) |
| Everything else | $0 | Free tiers everywhere |
Total: ~$140/month
That's $140/month for 12 products with custom domains, databases, monitoring, and CI/CD. Some months it's higher if I spin up extra GPU instances for ImageStack content, but it rarely exceeds $200.
How I keep costs low
-
Free tiers everywhere — Netlify, Vercel, Cloudflare, Supabase free tier, Upstash free tier, SendGrid free tier. Most of my products don't generate enough traffic to exceed free tier limits.
-
Shared infrastructure — One Supabase Pro instance hosts 5 products. One Redis instance handles caching for everything. One Cloudflare account manages all DNS.
-
Static where possible — If a frontend doesn't need server-side rendering, it's a static site on Netlify. Free, fast, and zero maintenance.
-
Right-sized compute — EpsteinScan runs on a $5.50/month Hetzner VPS because it needs compute for OCR. Everything else runs on serverless or free-tier platforms.
-
No Kubernetes — Kubernetes is amazing for large-scale systems. For 12 small-to-medium products, it's overkill. Simple deployments win.
The math that matters
At $140/month in infrastructure costs, I need less than $200/month in revenue to be profitable on hosting alone. AdminStack's Pro plan at $29/month means I only need 7 paying customers to cover everything. That's an incredibly low bar for 12 products.
The real cost isn't infrastructure — it's time. But that's what vibe coding and MemStack are for.