Allocation quotas

This document lists theallocation quotas that apply to Compute Engine.

Allocation quotas

Allocation quotas, also known as resource quotas, define the number ofresources that your project has access to. Compute Engine enforcesallocation quotas on resource usage for various reasons. For example, quotashelp to protect the community of Google Cloud users by preventingunforeseen spikes in usage.

Google Cloud also offersfree trial quotas that provide limited access for projects to help you explore Google Cloudon a free trial basis.

Not all projects have the same quotas. As you increasingly useGoogle Cloud over time, your quotas might increase accordingly. If youexpect a notable upcoming increase in usage, you can proactivelyrequest quota adjustments from theQuotas page in theGoogle Cloud console.

For information specific to quotas for rate limits for the Compute Engine API,seeAPI quota.

Important:

Quotas and resource availability

Allocation quotas are the maximum number of resources you can create of thatresource type, if those resources are available. Quotas don't guaranteethat resources are always available. If a resource is not available,or if the region you choose is out of the resource, you can't createnew resources of that type, even if you have remaining quota in your regionor project. For example, you might still have quota to create external IPaddresses inus-central1, but there might not be available IP addresses inthat region.

Similarly, even if you have a regional quota, a resource might not be availablein a specific zone. For example, you might have quota to create VM instances inregionus-central1, but you might not be able to create VM instances in thezoneus-central1-a if the zone is depleted. In such cases, try creating thesame resource in another zone, such asus-central1-f. To learn more about youroptions if zonal resources are depleted, see the documentation fortroubleshooting resource availability.

Allocation quotas

When planning your VM instance needs, you should consider several quotas thataffect how many VM instances you can create.

Regional and global quotas

VM quotas are managed at the regional level. VM instance, instance group,disk quotas, and CPU can be consumed by any VM in the region, regardless ofzone. For example, CPU quota is a regional quota, so there is a different limitand usage count for each region. To launch ann2-standard-16 instance in anyzone in theus-central1 region, you need enough quota for at least 16 CPUsinus-central1.

Networking and load balancing quotas are required to create firewalls, loadbalancers, networks, and VPNs. These quotas are global quotas that don't dependon a region. Any region can use a global quota. For example, in-use and staticexternal IP addresses assigned to load balancers and HTTP and HTTPS proxiesconsume global quotas.

VM instances

The VM instances quota is a regional quota and limits the number of VM instancesthat can exist in a given region, regardless of whether the VM is running. Thisquota is visible in the Google Cloud console on theQuotas page.Compute Engine automatically sets this quota to be 10 times your regularCPU quota. You don't need to request this quota. If you need quota for more VMinstances, request moreCPUs because having more CPUs increases VMinstance quota. The quota applies to both running and non-running VMs, and tonormal and preemptible instances.

  1. In the Google Cloud console, go to theQuotas page.

    Go to Quotas

  2. In theFilter list,select the following options:

    • ForService, selectCompute Engine API.
    • ForType, selectQuota.
    • ForName, selectVM instances.
    • Optional: ForMetric, select any otherCPU or Committed CPU quota namethat you want to filter.
  3. Optional: To sort the table by region, click theDimensions (e.g. location) column.

  4. Select the regions whose quota you want to change.

  5. ClickEdit.

  6. Complete the form.

  7. ClickSubmit Request.

Instance groups

To use instance groups, you must have available quota for all the resourcesthat the group uses (for example, CPU quota) and available quota forthe group resource itself. Depending on the type of group that you create, thefollowing group resource usage quotas apply:

Service typeService quota
Regional (multi-zone) managed instance groupRegional instance group managers
Zonal (single-zone) managed instance groupBoth of:
  • Instance group managers
  • Instance groups
Unmanaged (single-zone) instance groupInstance groups
Regional (multi-zone) autoscalerRegional autoscalers
Zonal (single-zone) autoscalerAutoscalers

Disk quotas

The following Persistent Disk, Hyperdisk, and Local SSD quotas applyon a per-region basis:

  • Hyperdisk Balanced Capacity (GB). This quota is the total combined size ofHyperdisk Balanced disks that you can createin a region. In the gcloud CLI and the API, thisquota is referred to asHDB-TOTAL-GB.
  • Hyperdisk Balanced Throughput (MB/s). This quota is the total amount ofthroughput that you can provision for all Hyperdisk Balanced disks in a zone. In the gcloud CLI and the API, thisquota is referred to asHDB-TOTAL-THROUGHPUT.
  • Hyperdisk Balanced IOPS. This quota is the total amount of IOPSthat you can provision for all Hyperdisk Balanced disks in a zone. In thegcloud CLI and the API, thisquota is referred to asHDB-TOTAL-IOPS.
  • Hyperdisk ML Capacity (GB). This quota is the total combined size ofHyperdisk ML disks that you can create in aregion. In the gcloud CLI and the API, thisquota is referred to asHDML-TOTAL-GB.
  • Hyperdisk ML Throughput (MB/s). This quota is the total amount ofthroughput that you can provision for all Hyperdisk ML disks in a region.In the gcloud CLI and the API, thisquota is referred to asHDML-TOTAL-THROUGHPUT.
  • Persistent disk standard (GB). This quota is the total size ofStandard Persistent Disk that can becreated in a region. In the gcloud CLI and the API, thisquota is referred to asDISKS_TOTAL_GB. This quota also applies to:
    • Regional Standard Persistent Disk,but Regional Persistent Disk consume twice the amount of quota per GiB due toreplication in two zones within a region.
    • When you choose to preserve Local SSD data when you stop or suspend a VM,an equivalent amount of Standard Persistent Disk quota is consumed.
  • Persistent disk SSD (GB). This quota is the total combined size ofSSD-backed Persistent Disk volumes thatcan be created in a region. In the gcloud CLI and the API,this quota is referred to asSSD_TOTAL_GB. This quota is separate fromquota for Local SSD disks. This quota applies to the following disk types:

    • Zonal and Regional SSD Persistent Disk
    • Zonal and Regional Balanced Persistent Disk

    Regional Persistent Diskvolumes consume twice the amount of quota per GiB due to replication in two zoneswithin a region.

  • Persistent Disk IOPS. This quota is the total number of I/O operations per second for Extreme Persistent Disk volumes thatcan be created in a region. In the gcloud CLI andthe API, this quota is referred to asPD-EXTREME-TOTAL-PROVISIONED-IOPS.This quota is separate from the IOPS quota for Google Cloud Hyperdisk.

  • Local SSD per machine family (GB). This quota is the total combined size ofLocal SSD disks you can attachto VMs in a region based on the machine type of each VM. Local SSD is afast, ephemeral disk that should be used for scratch, local cache, orprocessing jobs with high fault tolerance because the disk is not intendedto survive VM instance reboots.

    Local SSD disks are sold in increments of 375 GiB or 3 TiB,depending on the machine type. There is also amaximum number of Local SSD disks that can be attached to a single VM,depending on the machine type. The maximum number of Local SSD disks, andthe size of each Local SSD disk create a limit on the total amount ofLocal SSD disk capacity you can allocate for a VM. In thegcloud CLI and the API, this limit is referredto as theLOCAL_SSD_TOTAL_GB_PER_VM_FAMILY quota.

    Note:LOCAL_SSD_TOTAL_GB quota has been deprecated. To view the local SSDquota usage and limits, you must use the quota metriccompute.googleapis.com/local_ssd_total_storage_per_vm_familyBETAin your Cloud Monitoring dashboards, alerts, and queries.For more information, seeView and manage local SSD quota.

    For A4X, A4, A3 Ultra, A3 Mega, A3 High, A3 Edge, A2 ultra, and G4machine types, you don't need to request this quota as Local SSDs areautomatically added to VMs created by using these machine types. However,you need to requestLOCAL_SSD_TOTAL_GB_PER_VM_FAMILY for the otheraccelerator-optimized VMs.

Storage pool quotas

For capacity, Hyperdisk Storage Pools withAdvanced capacity provisioninghave the following quotas, measured in GB (or 1,000 MB):

  • Hyperdisk Balanced Storage Pools Advanced Capacity (GB): The total amountof disk space that you can reserve per region in a Hyperdisk Balanced Storage Pool with Advanced capacityprovisioning.

    • gcloud CLI and the API:HDB-STORAGE-POOL-TOTAL-ADVANCED-CAPACITY
    • Metric:compute.googleapis.com/hyperdisk_balanced_storage_pools_advanced_capacity
  • Hyperdisk Throughput Storage Pools Advanced Capacity (GB): The total amountof disk space you can reserve per region in a Hyperdisk Throughput Storage Pool with Advanced capacityprovisioning.

    • gcloud CLI and the API:HDT-STORAGE-POOL-TOTAL-ADVANCED-CAPACITY
    • Metric:compute.googleapis.com/hyperdisk_throughput_storage_pools_advanced_capacity

For performance, Hyperdisk Storage Pools withAdvanced performance provisioninghave the following quotas:

  • Hyperdisk Balanced Storage Pools Advanced IOPS: The total IOPSthat you can reserve in a Hyperdisk Balanced Storage Pool with Advanced performanceprovisioning for a region.

    • gcloud CLI and the API:HDB-STORAGE-POOL-TOTAL-ADVANCED-IOPS
    • Metric:compute.googleapis.com/hyperdisk_balanced_storage_pools_advanced_iops
  • Hyperdisk Balanced Storage Pools Advanced Throughput (MB/s): The totalthroughput that you can reserve in a Hyperdisk Balanced Storage Pool with Advanced performanceprovisioning for a region.

    • gcloud CLI and the API:HDB-STORAGE-POOL-TOTAL-ADVANCED-THROUGHPUT
    • Metric:compute.googleapis.com/hyperdisk_balanced_storage_pools_advanced_throughput
  • Hyperdisk Throughput Storage Pools Advanced Throughput (MB/s): The totalthroughput that you can reserve in a Hyperdisk Throughput Storage Pool with Advanced performanceprovisioning for a region.

    • gcloud CLI and the API:HDT-STORAGE-POOL-TOTAL-ADVANCED-THROUGHPUT
    • Metric:compute.googleapis.com/hyperdisk_throughput_storage_pools_advanced_throughput

Commitment and committed resource quotas

Committed use discounts (CUDs) help you save on your Compute Engineusage costs. You get these discounts by purchasing a committed use contract(also known as acommitment). Your commitment can be either aresource-based commitment(where you commit to a minimum amount of usage)or aspend-based commitment(where you commit to spend a minimum amount for a product or service).

Spend-based commitments don't require any quotas, whereas resource-basedcommitments do.Before you can purchase a resource-based commitment forspecific regional resources, you must have quota available in that region forboth of the following:

  • Commitments. Resource-based commitments are regional resources themselves,so you must have quota available to create that regional resource.

  • Committed resources (except memory). These are the resources that youspecify in your commitment. You must have quota in the region for thecommitted SKUs of any vCPUs, GPUs, or Local SSD disks that you want to specifyin your commitment.

For more information, seeQuotas for commitments and committed resources.

CPU quota limits

CPU quota is the total number of virtual CPUs across all of your VMinstances in a region. CPU quotas apply to running VMs and VMreservations. Both predefined andpreemptible VMs consume this quota.

To help protect Compute Engine systems and other users, some newaccounts and projects also have a globalCPUs (All Regions) quota. That quotaapplies to all regions and is measured as a sum of all your vCPUs in allregions.

For example, if you have 48 vCPUs remaining in a single region such asus-central1 but only 32 vCPUs remaining for theCPUs (All Regions) quota,you can launch only 32 vCPUs in theus-central1 region, even though there isremaining quota in the region. This is because you reach theCPU (All Regions) quota and need to delete existing instances before you canlaunch new instances.

E2 and N1 machine types share a CPU quota pool. Unless otherwise noted, allother machine types have unique, separate CPU quota pools.

Note: M1 machine types started before November 2020 consume quota of typeCPUS. M1 machine types created or restarted after November 2020 consumeM1_CPUS quota.

The following table lists the quota names for Compute Engine machinetypes. If quota isn't applicable to the machine type, the value N/A for "Notapplicable" is displayed.

Machine typeQuota poolCPU quota nameCommitted CPU quota name
N1shared poolCPUSCommitted_CPUS
E2shared poolCPUSCommitted_CPUS
N2separate poolN2_CPUSCommitted_N2_CPUS
N2Dseparate poolN2D_CPUSCommitted_N2D_CPUS
N4separate poolCPUS_PER_VM_FAMILYCommitted_N4_CPUS
N4A (Preview)separate poolCPUS_PER_VM_FAMILYCommitted_N4A_CPUS
N4Dseparate poolCPUS_PER_VM_FAMILYCommitted_N4D_CPUS
T2Dseparate poolT2D_CPUSCommitted_T2D_CPUS
T2Aseparate poolT2A_CPUSNot available for T2A
Z3separate poolCPUS_PER_VM_FAMILYCommitted_Z3_CPUS
M1separate poolM1_CPUSCommitted_MEMORY-OPTIMIZED_CPUS
M2separate poolM2_CPUSCommitted_MEMORY-OPTIMIZED_CPUS
M3separate poolM3_CPUSCommitted_M3_CPUS
M4separate poolCPUS_PER_VM_FAMILYCommitted_M4_CPUS
X4separate poolCPUS_PER_VM_FAMILYCommitted_X4_CPUS
H4Dseparate poolCPUS_PER_VM_FAMILYCommitted_H4D_CPUS
H3separate poolCPUS_PER_VM_FAMILYCommitted_H3_CPUS
C2separate poolC2_CPUSCommitted_C2_CPUS
C2Dseparate poolC2D_CPUSCommitted_C2D_CPUS
C3separate poolC3_CPUSCommitted_C3_CPUS
C3Dseparate poolCPUS_PER_VM_FAMILYCommitted_C3D_CPUS
C4separate poolCPUS_PER_VM_FAMILYCommitted_C4_CPUS
C4Aseparate poolCPUS_PER_VM_FAMILYCommitted_C4A_CPUS
A2*separate poolA2_CPUSCommitted_A2_CPUS
A4XN/A for A4XN/A for A4XN/A for A4X
A4N/A for A4N/A for A4N/A for A4
A3N/A for A3N/A for A3N/A for A3
G4N/A for G4N/A for G4N/A for G4
G2N/A for G2N/A for G2N/A for G2
Preemptible VMsshared poolPREEMPTIBLE_CPUSNot available for preemptible VMs

*To create A2 VMs, you only need to have the required NVIDIA A100GPU quotas. You don't need to request CPU quotas.

To create A4X, A4, A3, G4, and G2 VMs, you only need to have the required NVIDIA B200,H200, H100, RTX PRO 6000, and L4GPU quotas respectively.You don't need to request CPU quotas.

GPU quota

To ensure you have enough GPUs available in your project, check theQuotaspage in the Google Cloud console. Request a quotaincrease if you need one. New accounts and projects have a global GPU quota thatapplies to all regions.

Similar to virtual CPU quota, your GPU quota refers to the total numberof virtual GPUs in all your VM instances in a region. Running instances andreservations consume GPU quotas. You have different quotas for creating standardinstances, Spot VMs (for example, preemptible instances), virtualworkstations, or instances that use committed use.

When you request a GPU quota, request a quota for the GPU models that you wantto create in each region. Also request an additional global quota (GPUs (allregions)) for the total number of GPUs of all types in all regions.

The following table lists the GPU quotas available for each machine type.

Machine typeGPU typeStandard quotaCommitted quotaVirtual workstation quotaPreemptible quotaPreemptible virtual workstation quota
A4XGB200Not availableCOMMITTED_NVIDIA_GB200_GPUSNot availablePREEMPTIBLE_NVIDIA_GB200_GPUSNot available
A4B200Not availableCOMMITTED_NVIDIA_B200_GPUSNot availablePREEMPTIBLE_NVIDIA_B200_GPUSNot available
A3 UltraH200Not availableCOMMITTED_NVIDIA_H200_GPUSNot availablePREEMPTIBLE_NVIDIA_H200_GPUSNot available
A3 MegaH100GPU_FAMILY:NVIDIA_H100_MEGACOMMITTED_NVIDIA_H100_MEGA_GPUSNot availablePREEMPTIBLE_NVIDIA_H100_MEGA_GPUSNot available
A3 Edge and A3 HighH100GPU_FAMILY:NVIDIA_H100COMMITTED_NVIDIA_H100_GPUSNot availablePREEMPTIBLE_NVIDIA_H100_GPUSNot available
A2 UltraA100 80GBNVIDIA_A100_80GB_GPUSCOMMITTED_NVIDIA_A100_80GB_GPUSNot availablePREEMPTIBLE_NVIDIA_A100_80GB_GPUSNot available
A2 StandardA100 40GBNVIDIA_A100_GPUSCOMMITTED_NVIDIA_A100_GPUSNot availablePREEMPTIBLE_NVIDIA_A100_GPUSNot available
G4RTX PRO 6000GPU_FAMILY:NVIDIA_RTX_PRO_6000COMMITTED_NVIDIA_RTX_PRO_6000_GPUSNVIDIA_RTX_PRO_6000_VWS_GPUSPREEMPTIBLE_NVIDIA_RTX_PRO_6000_GPUSPREEMPTIBLE_NVIDIA_RTX_PRO_6000_VWS_GPUS
G2L4GPU_FAMILY:NVIDIA_L4COMMITTED_NVIDIA_L4_GPUSNVIDIA_L4_VWS_GPUSPREEMPTIBLE_NVIDIA_L4_GPUSPREEMPTIBLE_NVIDIA_L4_VWS_GPUS
N1T4NVIDIA_T4_GPUSCOMMITTED_NVIDIA_T4_GPUSNVIDIA_T4_VWS_GPUSPREEMPTIBLE_NVIDIA_T4_GPUSPREEMPTIBLE_NVIDIA_T4_VWS_GPUS
N1V100NVIDIA_V100_GPUSCOMMITTED_NVIDIA_V100_GPUSNot availablePREEMPTIBLE_NVIDIA_V100_GPUSNot available
N1P100NVIDIA_P100_GPUSCOMMITTED_NVIDIA_P100_GPUSNVIDIA_P100_VWS_GPUSPREEMPTIBLE_NVIDIA_P100_GPUSPREEMPTIBLE_NVIDIA_P100_VWS_GPUS
N1P4NVIDIA_P4_GPUSCOMMITTED_NVIDIA_P4_GPUSNVIDIA_P4_VWS_GPUSPREEMPTIBLE_NVIDIA_P4_GPUSPREEMPTIBLE_NVIDIA_P4_VWS_GPUS

Preemptible quotas

You canrequestpreemptible quotas forPreemptible CPUs,Preemptible GPUs, andPreemptible Local SSDs (GB). These preemptible quotas apply to the CPUs, GPUs,and Local SSDs of the following VMs:

If your project does not have preemptible quota, and you have never requestedpreemptible quota, these resources consume standard quota. However, after yourequest preemptible quota in your project, the applicable resources can onlyconsume preemptible quota and can't revert to consuming standard quotas.

Requesting preemptible quotas can help you improve quota obtainability byproviding separate quotas for temporary resources. After Compute Enginegrants you preemptible quota in a region, all applicable resources automaticallyconsume preemptible quota. If this quota is depleted, you must requestpreemptible quota for those resources.

External IP addresses

You must have enough external IP addresses for every VM that needs to bedirectly reachable from the public internet. Regional IP quota is for assigningIPv4 or IPv6 addresses to VMs in that region. IPv6 IP addresses use thesame quota types as for IPv4 IP addresses, except for external and internalIPv6 static addresses, which have their own quota types.

Global IP quota is for assigningIPv4 addresses to global networking resources such as load balancers.

Google Cloud offers different types of IP addresses, dependingon your needs. For information about costs, refer toExternal IP address pricing. For informationabout quota specifics, seeQuotas and limits.

Quota rollouts

Occasionally, Google Cloud changes the default quota for resources and APIs.These changes take place gradually. During the rollout of a new default quota,the maximum quota that appears in the Google Cloud console might not reflectthe actual maximum quota that is available to you. You canview the ongoingquota rollouts by using Google Cloud console orCloud Quotas API.

For example, suppose that Google Cloud changes the default maximum quota forfirewall rules from200 to300, and you use the Google Cloud console toview your quota, you might see the new quota of300, even though your actualquota is200 until the rollout completes.

If a quota rollout is ongoing and you want to confirm the actual maximum quotathat is available to you,use the Google Cloud CLI to check yourquota. If you need morequota than you have access to,submit a quota adjustmentrequest.

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 2025-12-15 UTC.