How to optimize Kubernetes costs
Most Kubernetes bills are bigger than they need to be — often by 30–60%. The cluster works, so nobody looks too hard, and the waste compounds quietly month after month. The good news is that the biggest savings come from a handful of well-understood levers, in a fairly predictable order of impact.
If you want a number to anchor against first, run your setup through the free Kubernetes cost calculator — it breaks a monthly estimate down by component so you can see where the money actually goes.
1. Right-size before you do anything else
The single most common source of waste is over-provisioning. Teams set CPU and memory requests “to be safe”, the scheduler reserves that capacity whether it is used or not, and nodes fill up with reservations rather than real load.
- Look at actual CPU and memory usage versus requests over a few weeks, not peak-of-peak.
- Bring requests down to realistic values so the scheduler packs more pods onto each node.
- Set limits deliberately — too low and you throttle, too high and you mask the real footprint.
Right-sizing costs nothing but attention, and it usually reclaims the most. Do it first, because every later lever is cheaper once the cluster reflects real demand.
2. Match capacity to demand with autoscaling
Idle nodes are pure waste. Three layers of autoscaling, used together, keep capacity tracking load:
- Horizontal Pod Autoscaler scales pods up and down on CPU, memory or custom metrics.
- Cluster Autoscaler (or Karpenter on AWS) adds and removes nodes so you stop paying for empty capacity overnight and on weekends.
- Vertical Pod Autoscaler suggests or applies better requests over time, feeding back into step 1.
A cluster that runs flat-out 24/7 when traffic is bursty is leaving money on the table.
3. Buy the right pricing model
Compute is the bulk of most clusters, and you rarely need to pay full on-demand rates for all of it.
- Spot / preemptible / Azure Spot capacity is up to ~70% cheaper. Put stateless, fault-tolerant and batch workloads here. With pod disruption budgets and graceful draining, far more is spot-safe than people assume.
- Reserved instances / committed-use discounts / savings plans take ~40% off your steady-state baseline in exchange for a one- or three-year commitment. Cover the capacity you know you will always run.
- Keep on-demand for the unpredictable top of the curve.
The pattern that works: reserved for the baseline, spot for the elastic middle, on-demand for the spikes.
4. Cut egress — the line item nobody budgets for
Network egress is the classic surprise on a cloud bill, and it is almost invisible until you look. A few habits keep it down:
- Keep traffic in-region and in the same availability zone where you can — cross-AZ and cross-region transfer is billed.
- Cache and serve static assets from a CDN / edge instead of egressing from the cluster on every request.
- Compress payloads and trim chatty service-to-service calls.
On high-traffic clusters, egress and inter-zone transfer can rival the compute bill.
5. Clean up the long tail
The small things add up:
- Delete orphaned volumes, old snapshots and unattached load balancers.
- Watch logging and metrics retention — observability bills grow silently (see also: how to optimize Datadog costs).
- Remove idle NAT gateways and unused static IPs.
- Right-size managed add-ons (databases, caches) the same way you right-size nodes.
Which cloud is cheapest?
Less than people hope. Raw compute rates across AWS, GCP and Azure are broadly comparable; GCP often edges ahead on automatic sustained-use discounts, while AWS and Azure tend to win on commitment plans. The real differences are egress pricing and how well your workloads fit spot capacity — which is why a per-workload estimate matters far more than the sticker rate.
Start with the number
Optimization is easier when you can see the breakdown. Estimate your current setup with the Kubernetes cost calculator, find the biggest component, and start there.
If the bill is large enough that getting this right matters, a focused architecture and cost review usually pays for itself many times over. Get in touch and I’ll help you find the waste and a concrete plan to cut it.