Infrastructure decisions at each funding stage have different priorities. At seed stage, speed and cost matter most. Post-revenue, reliability and performance become critical. At Series A, scalability and team autonomy dominate. This playbook maps the right infrastructure decisions to each stage, including specific configurations, cost benchmarks, and clear triggers for when to upgrade.
Based on analysis of 200+ Y Combinator and TechStars startups from 2024-2026, the median seed-stage startup spends $50-200/month on infrastructure. Post-revenue companies spend $500-2,000/month. Series A companies spend $3,000-15,000/month. The most successful companies spend less at each stage than their peers by making pragmatic technology choices.
---
Stage 1: Seed (Pre-Revenue, $0-50K MRR)
Goal: Ship fast, spend almost nothing, validate the product.
Architecture: Single VPS
<h1>seed-stage-infrastructure.yaml</h1>
infrastructure:
compute:
type: single_vps
provider: arxentra
size: 2 vCPU, 4 GB RAM # usage-based, 24/7
cost: 23/month # at list usage rates, before any included plan hours or bundle discounts
runs:
- nginx (reverse proxy + static files)
- application (Node.js or Python)
- postgresql (local)
- redis (local)
deployment:
method: git_pull_and_restart
automation: github_actions
rollback: git_revert
monitoring:
uptime: uptimerobot (free)
errors: sentry (free tier)
logs: journalctl + logrotate
backups:
database: pg_dump cron (daily)
storage: rsync to object storage (weekly)
platform_plan: 10/month # Developer plan fee
total_cost: 38-63/month
What NOT to Do at Seed Stage
- Do not use Kubernetes (adds 10-20 hours/month of operational overhead)
- Do not use microservices (a monolith is fine for < 5 engineers)
- Do not set up multi-region (your users are probably in one country)
- Do not use managed databases yet (local PostgreSQL on the VPS is fine)
- Do not over-engineer CI/CD (a simple deploy script is enough)
---
Stage 2: Post-Revenue ($50K-500K MRR)
Goal: Reliability, performance, and handling 10x traffic growth.
Architecture: Load-Balanced Multiple VPS
<h1>post-revenue-infrastructure.yaml</h1>
infrastructure:
compute:
app_servers:
count: 2-3
size: 4 vCPU, 8 GB RAM each # usage-based, 24/7
cost: 93-140/month
load_balancer:
type: managed
cost: included
database:
type: managed PostgreSQL (single instance)
size: 2 vCPU, 4 GB RAM, 50 GB storage
cost: 31/month # 11.68 + 11.68 + 50 x 0.15, usage-based
backups: none automated - schedule your own pg_dump (daily)
cache:
type: managed Redis
size: 1 vCPU, 1 GB RAM
cost: 9/month # 5.84 + 2.92, usage-based
object_storage:
type: s3_compatible (third-party, e.g. Cloudflare R2)
cost: 7/month (500 GB) # (500 - 10 free) x 0.015
cdn:
type: cloudflare (free tier)
cost: 0
deployment:
method: docker_compose + blue_green
automation: github_actions
rollback: previous_docker_image
monitoring:
metrics: prometheus + grafana
errors: sentry (team plan)
uptime: better_uptime
alerting: pagerduty (starter)
platform_plan: 25/month # Team plan fee
total_cost: 215-502/month # infra 140-187 + plan 25 + monitoring/tooling 50-290
Trigger to Move to Stage 2
- Single VPS CPU consistently above 70%
- Database and application competing for resources
- First customer SLA requirement
- Team grows beyond 3 engineers
- Revenue justifies reliability investment
See Pricing for the usage rates behind these figures; load balancing is included, and managed PostgreSQL, MongoDB and Redis are add-on databases billed at $0.15/GB/month of storage plus vCPU and RAM usage.
---
Stage 3: Series A ($500K+ MRR)
Goal: Scalability, team autonomy, compliance readiness.
Architecture: Kubernetes
<h1>series-a-infrastructure.yaml (generic example - not specific to any provider)</h1>
infrastructure:
orchestration:
type: managed_kubernetes
nodes: 3-5
node_size: 8 GB RAM, 4 vCPU
auto_scaling: true
cost: 500-1200/month
database:
primary: managed_postgresql_ha
read_replicas: 1-2
cost: 200-400/month
cache:
type: managed_redis_cluster
cost: 80-150/month
ci_cd:
type: github_actions + argocd
deployment: gitops
rollback: git_revert (automatic)
observability:
metrics: prometheus + grafana
logging: loki
tracing: opentelemetry + jaeger
alerting: pagerduty
security:
secrets: vault or sealed-secrets
network_policies: enforced
rbac: team-based namespaces
compliance: soc2_readiness
total_cost: 1500-5000/month
Trigger to Move to Stage 3
- Team grows beyond 8-10 engineers
- Multiple services need independent deployment cycles
- Enterprise customers require SOC 2 or compliance certifications
- Traffic patterns require auto-scaling
- Developer experience becomes a bottleneck (slow deploys, environment conflicts)
---
Cost Benchmarks by Stage
| Stage | Monthly Infra | % of MRR | Engineering Hours/Month |
| Seed | $38-63 | 5-10% | 2-4 hrs |
| Post-Revenue | $215-502 | 1-3% | 8-16 hrs |
| Series A | $1,500-5,000 | 0.5-1% | 20-40 hrs (dedicated) |
Infrastructure spend should decrease as a percentage of revenue as you grow. If it is increasing, you are over-provisioning or have architectural inefficiency.
---
Common Mistakes by Stage
| Mistake | Stage | Impact | Fix |
| Kubernetes at seed | Seed | 20+ hrs/month wasted | Use single VPS |
| No backups | All | Data loss risk | Automate from day 1 |
| No monitoring | Post-Revenue | Slow incident response | Prometheus + alerting |
| Monolith at Series A | Series A | Slow deployments | Extract critical services |
| Manual deployments | Post-Revenue | Human error, slow | CI/CD automation |
| No staging environment | Post-Revenue | Production bugs | Docker-based staging |
---
Frequently Asked Questions
When should a startup hire a dedicated DevOps engineer?
When infrastructure management consumes more than 20% of an engineer's time (roughly at the Post-Revenue stage). Before that, a senior backend engineer can handle infrastructure alongside feature development. At Series A, a dedicated platform or DevOps engineer is essential.
Is it okay to run the database on the same server as the application?
At seed stage, yes. A single 4 GB VPS comfortably runs both PostgreSQL and a Node.js/Python application for up to 10,000 daily active users. Separate them when the database needs more than 2 GB of RAM or starts competing with the application for resources. See Services Overview for managed database options; Arxentra managed databases run as a single instance without automated backups, so keep your own scheduled `pg_dump` either way.
How do I handle traffic spikes at seed stage without auto-scaling?
Vertical scaling (upgrading to a larger VPS) handles most spikes. Arxentra allows upgrading with minimal downtime. Add a CDN (Cloudflare free tier) for static assets. Implement application-level caching with Redis to reduce database load during spikes.
Should I use Docker from day one?
Yes. Docker adds minimal complexity at seed stage (one Dockerfile, one docker-compose.yml) and massively simplifies the transition to Stage 2 and Stage 3. It also ensures development-production parity, eliminating "works on my machine" issues.
What is the fastest way to get from zero to production?
An Arxentra VPS with Docker Compose. Deploy your application, database, and reverse proxy in under 30 minutes. Use the one-click deploy from GitHub integration to automate future deployments. Check Documentation for quick start guides.
How do I know if I am over-engineering my infrastructure?
If your infrastructure complexity exceeds your team's ability to understand and operate it without dedicated support, you are over-engineering. At seed stage, every engineer should be able to deploy, debug, and recover from outages. If only one person can do this, simplify. Visit Cloud Computing for right-sized infrastructure recommendations.