Innsays
← All posts
DevOps18 March 2026· 3 min read

Running production on a tight budget without skimping on reliability

You don't need a $50k/month AWS bill to run a serious product. Here is the stack we deploy for bootstrapped teams.

Neha
Innsays

When a founder tells us "we just need a server," what they actually need is: hosting, a database, backups, monitoring, a CI/CD pipeline, log aggregation, and someone to wake up if it falls over. Most of them are quoted $5k–10k a month for this. It does not need to cost that much.

Here is the stack we set up for bootstrapped clients, which scales comfortably to a few million requests a month.

The stack

Layer What we use Why
Compute Hetzner Cloud or DigitalOcean Droplets 5–10x cheaper than equivalent AWS EC2
Container runtime Docker + docker-compose, or k3s for the brave Boring, well-understood, portable
Reverse proxy Caddy Auto-HTTPS, tiny config, no surprises
Database Managed Postgres (Neon, Supabase, or DO Managed DB) Backups handled, point-in-time recovery
Object storage Cloudflare R2 or Backblaze B2 Zero egress fees vs S3
CDN Cloudflare (free tier!) DDoS protection + caching + image resizing
Monitoring Uptime Kuma + Better Stack + Grafana Cloud free tier Alerts to Slack within seconds
Logs Better Stack Logtail or Grafana Loki Centralised, searchable, cheap
CI/CD GitHub Actions + a deploy script Pushed on merge to main

Total monthly cost

A typical client at this stage spends:

  • Compute: $20–60
  • Database: $25–50
  • Object storage: $5–15
  • Monitoring + logs: $0–25
  • CDN: $0

That is under $200/month for a setup that handles real traffic with real reliability.

What we skip (and why)

  • Kubernetes unless the team needs it. k3s for hobby, plain docker-compose for prod, until you have a reason to upgrade.
  • Multi-region unless you actually serve users in multiple regions with latency-sensitive workloads.
  • Microservices until the monolith genuinely hurts. It almost never does at this scale.
  • Heavy observability stacks like Datadog. The free tiers of Grafana, Better Stack, and Sentry do 95% of what you need.

What we do not skip

  • Daily database backups with weekly restore tests. A backup you have not restored is a wish, not a backup.
  • Alerts on the things that wake real users up: 5xx rates, p95 latency, database connection pool exhaustion, certificate expiry.
  • Runbooks for the five most common incidents. When it is 3 a.m., you do not want to be improvising.
  • A canary deploy step so a bad release does not take everyone down at once.

When to upgrade

Move to managed Kubernetes (EKS, GKE) when:

  • You are running more than 20 services
  • You have a real platform team (not just one ops person)
  • You need autoscaling that docker-compose can't provide

Move to multi-region when:

  • You have paying customers complaining about latency in a specific geography
  • You need disaster recovery beyond what your database provider offers

Move to fancy observability when:

  • You are spending more than 4 hours a week chasing bugs that better tools would surface

The takeaway

You can run a serious product on $200/month of infrastructure for longer than you think. Spend the savings on a designer, a marketer, or sleep.

Need help setting any of this up? We run this exact stack for a dozen clients. Get in touch and we'll have you live in a week.

Let’s build

Got an idea? Let’s ship it together.

Tell us about your project — even if it’s just a sketch on a napkin. We reply within one business day with a clear scope and quote.