This page explains the quotas and limits for Google Kubernetes Engine (GKE) clusters, nodes, and GKE API requests.
Limits per project
The limits per GKE project are:
- Maximum of 100 clusters per zone, plus 100 regional clusters per region.
Note: Clusters created in the Autopilot mode are pre-configured as regional clusters.
Limits per cluster
The limits per GKE cluster are:
|Limits||GKE Standard cluster||GKE Autopilot cluster|
|Nodes per cluster||
Note: If you plan to run more than 2,000 nodes, use a regional cluster.
Note: Running more than 5,000 nodes requires lifting a cluster size quota. Contact support for assistance.
Note: Running more than 400 nodes requires lifting a cluster size quota. Contact support for assistance.
|Nodes per node pool zone||1,000||Not applicable|
|Nodes in a zone||Not applicable|
|Pods per node2||
Note: For GKE versions earlier than 1.23.5-gke.1300, the limit is 110 Pods.
|Pods per cluster1 2||200,000||12,000|
|Containers per cluster||400,000||24,000|
|Endpoints per service||
The GKE version requirement applies to both the nodes and the control plane.
Learn more about relevant limits and quotas in the Guidelines for creating scalable clusters.
Limit for API requests
The default rate limit for the Kubernetes Engine API is 3000 requests per min, enforced at intervals of every 100 seconds.
Additional limits and quotas
In addition to per-cluster and per-project limits, specific GKE features have additional limits. For more information, refer to documentation for the features you use.
You might also encounter Compute Engine resource quotas.
A set of resource quotas is automatically applied to clusters with 100 nodes or fewer and to namespaces on those clusters. These quotas, which cannot be removed, protect the cluster's control plane from instability caused by potential bugs in applications deployed to the cluster.
To examine resource quotas, use the following command:
kubectl get resourcequota gke-resource-quotas -o yaml
To view the
gke-resource-quotas object for a given namespace, specify the
namespace by adding the
These resource quotas increase as more nodes are added to the cluster, up to 100 nodes. When the cluster exceeds 100 nodes, the resource quota object is removed, and your cluster has unlimited quotas.
If you try to examine the resource quotas again, the output is similar to the following:
Error from server (NotFound): resourcequotas "gke-resource-quotas" not found.
Once the cluster exceeds 100 nodes, the quotas are not reapplied if the number of nodes scale back down below 100.
The maximum number of pods includes system pods. The number of system pods varies depending on cluster configuration and enabled features. ↩
The maximum number of Pods that can fit in a node depends on the size of your Pod resource requests and the capacity of the node. You might not reach every limit at the same time. As a best practice, we recommend that you load test large deployments. ↩