About built-in ComputeClasses in GKE

This page describes the ComputeClasses that Google Kubernetes Engine (GKE) installsin your clusters. You learn about the name, availability, and node configurationof each built-in ComputeClass. This page is for platform engineersand app operators who want to make an informed choice about which ComputeClassesare available, and which class is optimal for specific workloads.

You should already be familiar withComputeClasses.

Overview of built-in ComputeClasses

Many GKE workloads aregeneral-purpose workloads that don'trequire specialized hardware, such as web servers or small-scale batch jobs.For these workloads, the priority is often to reduce the overhead associatedwith manually managing the node infrastructure and autoscaling configuration.

GKE has variousbuilt-in ComputeClasses for use cases such asrunningAutopilot workloads in Standard clustersor placing fault-tolerant general-purpose workloads on Spot VMs.Use a built-in ComputeClass for workloads that don't require specific hardware(such as GPUs) or specific node settings (such as Linux sysctl flags). If yourworkloads need more specialized hardware, use acustom ComputeClass.

Available built-in ComputeClasses in GKE

The following table describes the built-in ComputeClasses that are availablein GKE:

Built-in ComputeClasses
autopilot

Create on-demand nodes that use the Autopilotcontainer-optimized compute platform. This ComputeClass is the default for Autopilot clusters in any GKE version, but is available for explicit selection in specific GKE versions.

This is anAutopilot ComputeClass, which means that GKE manages the nodes for you even in Standard clusters. You can use this ComputeClass torun Autopilot mode workloads in Standard clusters.

Available in Autopilot clusters and Standard clusters that run GKE version 1.34.1-gke.1829001 or later.

autopilot-spot

Create Spot VMs that use the Autopilot container-optimized compute platform. This ComputeClass is applied by default to any Pods in Autopilot clusters that explicitly select Spot VMs in the Pod specification.

This is anAutopilot ComputeClass, which means that GKE manages the nodes for you even in Standard clusters. You can use this ComputeClass torun Autopilot mode workloads in Standard clusters.

Available in Autopilot clusters and Standard clusters that run GKE version 1.34.1-gke.1829001 or later.

Pricing

Autopilot bills you differently depending on the ComputeClass thatyour Pods request. For more information, seeGoogle Kubernetes Engine pricing.

Built-in ComputeClass selection in workloads

To select a built-in or custom ComputeClass when you deploy aGKE workload, you select thecloud.google.com/compute-classlabel in your workload manifest, like in the following example:

apiVersion:apps/v1kind:Deploymentmetadata:name:helloweblabels:app:hellospec:selector:matchLabels:app:hellotemplate:metadata:labels:app:hellospec:nodeSelector:# Replace with the name of a compute classcloud.google.com/compute-class:COMPUTE_CLASScontainers:-name:hello-appimage:us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0ports:-containerPort:8080resources:requests:cpu:"250m"memory:"1Gi"

In this example,COMPUTE_CLASS is the name of a computeclass. You can't select more that one ComputeClass in a specific workload.

When you deploy a workload that selects a ComputeClass, GKE usesthe properties of that ComputeClass to create new nodes to run the Pods. Forexample, if you select theautopilot built-in ComputeClass in a workload,GKEruns those Pods in Autopilot mode.

Default application of built-in ComputeClasses

You can set any ComputeClass in a cluster as thedefault ComputeClass for aspecific namespace. GKE applies that default class to any Podsthat don't explicitly select a ComputeClass.

For example, consider a Standard cluster that runs many general-purposeweb server Pods in aserving namespace. If you set theautopilot built-inComputeClass as the default for the namespace, your web server Pods run on theAutopilot container-optimized compute platform by default, with nochanges needed to the workload specifications. Any workloads in that namespacethat need different hardware can add a selector for a different ComputeClass.

For more information about setting a ComputeClass as the default in anamespace, seeConfigure a default ComputeClass for a namespace.

What's next

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2026-02-18 UTC.