Scenario 01
If your traffic is bursty or idle for long periods…
Serverless (Cloud Run or Lambda) is usually cheaper, because you don't pay for idle capacity.
Comparison: Serverless (Lambda, Cloud Run) vs. Kubernetes (EKS, GKE)
Find the point where serverless pay-per-request pricing becomes more expensive than running your own cluster, and what the operations work on each side really costs.
Decision framework
Scenario 01
Serverless (Cloud Run or Lambda) is usually cheaper, because you don't pay for idle capacity.
Scenario 02
Kubernetes with spot capacity and good bin-packing usually costs less per request — if you have people to run it.
Trade-offs
How the two options compare on the dimensions that usually decide this choice.
| Dimension | Serverless (Lambda, Cloud Run) | Kubernetes (EKS, GKE) | Verdict |
|---|---|---|---|
| Cost at low or bursty traffic | Close to zero when idle, because it scales to zero | A fixed baseline: the control plane plus always-on nodes | Serverless wins on low and variable workloads |
| Cost at steady high volume | Per-request and per-GB-second pricing adds up | High utilization through bin-packing and discounted spot capacity | Kubernetes wins on steady high volume |
| Operations overhead | Low: the provider runs the platform | Needs engineers who can operate and upgrade the cluster | Serverless needs less operations staffing |
Questions
It depends on request duration, memory, concurrency and how steady the traffic is, so we model it with your own numbers rather than quote a rule of thumb. Include the people cost of running a cluster, not just the compute.
Yes, though how much they matter varies. Lambda cold starts range from tens of milliseconds to seconds depending on runtime, package size and configuration; provisioned concurrency and SnapStart reduce them. Cloud Run can keep minimum instances warm, and Cloudflare Workers start lightweight isolates very quickly.
Share your constraints — team, traffic, budget, compliance. We'll reply within one business day, and the call is about your decision, not our preferred stack.