Costs & infrastructure
Keep burn sane as you scale. Know what bites before it does.
Infra bills don't kill indie apps because they're high โ they kill you because they're surprising. The fix is knowing which costs scale with usage, setting alarms before you need them, and not buying scale you don't have yet.
Know what bites before it does
Most of your spend will come from a few usage-metered services. Learn their cost shape early:
- Metered APIs (LLMs, SMS, email, image gen). These scale per request and can spike viciously under abuse or a bad loop. Usually your biggest variable risk.
- Bandwidth & egress. Serving large files, video, or images can quietly dominate the bill. A CDN and right-sized media matter.
- Database compute & storage. Slow queries on a growing table, plus row counts and backups, push you up tiers.
- Serverless function invocations & build minutes. Cheap per unit, but a chatty app or a runaway cron adds up.
- Per-seat tooling. Your own SaaS stack (analytics, error tracking, email) often has steps that jump at thresholds.
The pattern: flat costs are safe; usage-metered costs are the ones to watch.
Put alarms on everything that meters
You should never learn about a cost spike from the invoice.
- Provider spend caps. OpenAI/Anthropic monthly limits, SMS caps โ set hard ceilings.
- Cloud budget alerts. Vercel, Supabase, AWS all email you at thresholds. Turn them on at $0, not after the scare.
- A dashboard you actually check. Skim spend weekly. A cost trend caught early is a fix; caught late is a refund request.
Cut the spikes at the source
Most runaway bills trace back to a handful of preventable causes โ the same ones the abuse and AI-safety playbooks cover:
- Rate limit and quota expensive endpoints, keyed per user.
- Cache repeated work โ query results, API responses, LLM outputs.
- Cap retries. A blind retry loop on a paid call is a self-inflicted DDoS on your wallet.
- Right-size media and put a CDN in front of static assets.
- Kill zombie resources โ that staging DB, the cron firing every minute, the preview deploys you forgot.
Don't pre-buy scale
The cheapest infrastructure is the infrastructure you didn't provision. With zero or ten users you do not need:
- Kubernetes, a service mesh, or microservices.
- Multi-region replicas and read replicas.
- A reserved-capacity database or always-on big instances.
- A queue, a search cluster, and three caches.
Start on a managed, scale-to-zero or low-fixed-cost setup (a managed Postgres + serverless hosting). Add capacity when a measured bottleneck demands it โ never on a hunch. Premature scaling is burn you pay for an audience you don't have.
Watch the free-tier cliff
Generous free tiers are great until you cross a line and the next step is steep. For each service you lean on:
- Know the free-tier limits and what the first paid step costs.
- Estimate where your growth crosses it.
- Make sure one viral day can't 50x your bill overnight โ that's what caps and quotas are for.
This ties straight to the business: if your MRR is climbing the leaderboard but a metered cost climbs faster, you're scaling into a loss. Keep cost-per-active-user in view, not just the top line.
Ship-ready when
- You know which of your costs are flat vs. usage-metered.
- Provider spend caps and cloud budget alerts are on.
- Expensive endpoints are rate-limited, quota'd, and cached; retries capped.
- Media is right-sized and served via a CDN.
- No infra provisioned beyond a current, measured need.
- You know each key service's free-tier limit and first paid step.
I'm building ProveMyApp so founders like you can connect your apps, track their growth with verified metrics, and build alongside other founders instead of doing it alone.
Explore the library
More guides and playbooks to grow your app