gcpgkekubernetescost-optimization

GKE Autopilot pod pricing explained: paying for requested resources

GKE Autopilot bills you for the CPU, memory, and ephemeral storage your pods request, not for nodes, so cost tracks your resource requests directly. Here is how the per-pod rates work and how to keep requests honest.

The C3X Team··6 min read

Quick answer

GKE Autopilot bills for the CPU, memory, and ephemeral storage your pods request, not for the underlying nodes, at approximately 0.0445 dollars per vCPU-hour, 0.0049 dollars per GB-hour of memory, and a small per-GB rate for ephemeral storage in a general-purpose regional configuration. Because you pay for requests rather than node capacity, there is no unused node headroom to pay for, but inflated pod requests translate directly into inflated cost. The key to Autopilot cost control is setting pod CPU and memory requests to what the workload actually uses, since every over-requested core and gigabyte is billed whether the pod uses it or not.

GKE Autopilot changes the cost model of Kubernetes. Instead of provisioning nodes and paying for their full capacity whether pods use it or not, Autopilot bills you for the resources your pods request. That removes the problem of paying for idle node headroom, but it also means your resource requests are your bill, so getting them right matters more than ever.

How Autopilot bills

ResourceApproximate general-purpose regional rate
vCPUAbout 0.0445 dollars per vCPU-hour
MemoryAbout 0.0049 dollars per GB-hour
Ephemeral storageA small per-GB-hour rate

Autopilot sums the CPU, memory, and ephemeral storage requested by your running pods and bills for that, rounded to the pod's requested resources. A pod requesting 1 vCPU and 4 GB running continuously costs roughly 0.0445 plus four times 0.0049, about 0.064 dollars per hour, or near 47 dollars a month. There is no separate node charge, and the flat cluster management fee of about 73 dollars a month still applies unless the cluster is your free one.

Why requests are the whole game

Because you pay for what pods request, over-requesting is pure waste. A pod that requests 2 vCPUs but uses 0.3 is billed for 2, so the six-fold gap between request and usage is money spent on nothing. In a node-based Standard cluster you might absorb that slack in shared node capacity, but Autopilot bills each request directly. This makes accurate resource requests and limits the single most important Autopilot cost lever: right-sized requests are right-sized cost.

Compute classes and Spot

Autopilot offers compute classes for workloads that need specific hardware, such as the Scale-Out class for higher per-core performance, each with its own rate. It also supports Spot pods, which run on preemptible capacity at a large discount, often around 60 to 70 percent off the standard pod rate, for workloads that tolerate interruption. Choosing the general-purpose class for ordinary workloads and Spot for interruption-tolerant batch jobs keeps the per-pod rate as low as the workload allows.

Keeping Autopilot cost honest

Profile each workload's real CPU and memory use and set requests to match, with a modest safety margin rather than a large one. Use Spot pods for fault-tolerant batch work, and pick the cheapest compute class that meets the workload's needs. Because Autopilot cost is a direct function of requests, a cluster with disciplined requests can cost far less than the same workloads on an under-utilized Standard cluster, while sloppy requests erase that advantage. Price your Autopilot workloads against the resource catalog using realistic requests so the pod cost is known before the deployment ships.

FAQ

How does GKE Autopilot pricing work?

Autopilot bills for the CPU, memory, and ephemeral storage your pods request, not for the underlying nodes, at approximately 0.0445 dollars per vCPU-hour, 0.0049 dollars per GB-hour of memory, and a small per-GB rate for ephemeral storage in a general-purpose regional configuration. It sums the requests of running pods and bills for that, so there is no unused node headroom to pay for.

Why do pod resource requests matter so much in Autopilot?

Because you pay for what pods request, not what they use. A pod that requests 2 vCPUs but uses 0.3 is billed for 2, so the gap is pure waste. In a node-based Standard cluster you might absorb that slack in shared node capacity, but Autopilot bills each request directly, which makes accurate requests the single most important Autopilot cost lever.

Can I use Spot pods in Autopilot to save money?

Yes. Autopilot supports Spot pods that run on preemptible capacity at a large discount, often around 60 to 70 percent off the standard pod rate, for workloads that tolerate interruption. Using Spot for fault-tolerant batch jobs and the general-purpose compute class for ordinary workloads keeps the per-pod rate as low as the workload allows.

Does Autopilot still charge the cluster management fee?

Yes. The flat GKE cluster management fee of about 0.10 dollars per hour, roughly 73 dollars a month, still applies to Autopilot clusters unless the cluster is your one free zonal or Autopilot cluster per billing account. The pod resource charges are billed on top of that flat management fee.

How does C3X help with GKE Autopilot cost?

C3X prices your Autopilot workloads from Terraform before you deploy, translating pod CPU and memory requests into cost in the pull request. That lets you see the effect of an over-requested pod at design time and right-size requests before deployment, so the Autopilot bill reflects disciplined requests rather than the inflated ones that quietly multiply cost.

What to do next

Turn pod requests into cost before you deploy. C3X reads your Terraform and prices your resources against a live catalog. Start with the quickstart.

Try C3X on your own Terraform

Free and open source. No API key required. One command to install, one command to estimate.