What Happens to Your Bill When Kubernetes Goes Idle?

Why 'Scale to Zero' is a lie for most clusters, and how much you pay for empty nodes.

J
Jesus Paz
1 min read

You configured the Cluster Autoscaler. You set min: 0. You went home for the holidays. Why was your bill not $0?

Kubernetes is Never Truly Idle

Even if you delete every Application Pod, your cluster is busy.

  • System Pods: coredns, kube-proxy, aws-node (CNI), metrics-server.
  • DaemonSets: Logging agents, security scanners, monitoring probes.

These pods require CPU and Memory. They prevent the last node from draining.

The Cost of “Empty”

An “idle” EKS cluster typically runs:

  1. The Control Plane: $73/month.
  2. System Nodes: At least 2x t3.medium (for HA system pods) = ~$60/month.
  3. NAT Gateways: 3x AZ = ~$100/month.

Total Cost of Doing Nothing: ~$233/month.

How to actually save money

  1. Hibernate Environments: Don’t just delete pods; delete the nodes and the NAT Gateways. Tools like kube-downscaler only touch deployments. True hibernation requires infrastructure-as-code automation.
  2. Use Karpenter: Karpenter is more aggressive than Cluster Autoscaler. It can consolidate system pods onto fewer, cheaper nodes (bin-packing).
  3. Fargate: If you use Fargate, you truly pay for only what runs. No system nodes required.

[!TIP] Check your waste. Our Idle Node Detector explains how to identify which specific nodes are burning cash right now.

👨‍💻

Jesus Paz

Founder & CEO

Read Next

Join 1,000+ FinOps and platform leaders

Get Kubernetes and ECS cost tactics delivered weekly.