This document lists the Compute Engine rate quotas, which define the number of requests you can make to Compute Engine API methods.
Rate quotas
Rate quotas (also known as API rate limits or API quotas) define the number of requests that can be made to the Compute Engine API. These quotas apply on a per-project basis. Each quota applies to a group of one or more Compute Engine API methods. When you use the gcloud CLI or the Google Cloud console, you are also making requests to the API and these requests count towards your rate quota. If you use service accounts to access the API, that also counts towards your rate quota.
Google enforces rate quotas at a per-minute (60 seconds) interval for each
group. That means if your project reaches the maximum number of API requests
anytime within 60 seconds, you must wait for that rate quota to refill before
making more requests in that group. If your project exceeds a rate quota, you
receive a 403 error with the reason rateLimitExceeded
. To resolve this error,
wait a minute then try your request again—the quota should be refilled at
the start of the next interval.
The number of requests that you can make to the Compute Engine API is defined by quota groups as described in the following tables. Each group is counted separately, so you can achieve the maximum quota in each group simultaneously.
Rate quotas for global metrics
The following quota groups apply for all resources unless specified otherwise:
Quota group Description |
Metric name | Default quota |
---|---|---|
Queries Quota for global mutation methods that are not included under other quota metrics. The following
|
compute.googleapis.com/default |
Quota per project (defaultPerMinutePerProject ):
1500 requests/minute |
Read requests Quota for global *.get methods. |
compute.googleapis.com/read_requests |
Quota per project (ReadRequestsPerMinutePerProject ):
1500 requests/minute |
List requests Quota for global *.list methods. |
compute.googleapis.com/list_requests |
Quota per project (ListRequestsPerMinutePerProject ):
1500 requests/minute |
Operation read requests Quota for globalOperations.get method. |
compute.googleapis.com/operation_read_requests |
Rate per project (OperationReadRequestsPerMinutePerProject ):
1500 requests/minute |
Filtered list cost overhead Quota for
Google Cloud charges quota usage for this metric in addition to
the quotas against
the |
compute.googleapis.com/filtered_list_cost_overhead |
Rate per project (ListRequestsFilterCostOverheadPerMinutePerProject ):
750k resources filtered out of the list requests per region per minute. As the
quota is charged for every 10k resources, you see the limit as 75 (750k/10k) when you
query for this quota limit on the Google Cloud console.
|
Global resource mutation requests Quota for images.delete , images.deprecate ,
images.insert , images.setLabels , snapshots.delete ,
snapshots.insert , snapshots.setLabels ,
machineImages.insert , and machineImages.delete methods. |
compute.googleapis.com/global_resource_write_requests |
Rate per project (GlobalResourceWriteRequestsPerMinutePerProject ):
375 requests/minute |
Heavy-weight mutation requests Quota for patch , delete ,
and insert methods for the interconnects resources. |
compute.googleapis.com/heavy_weight_write_requests |
Rate per project (HeavyWeightWriteRequestsPerMinutePerProject ):
750 requests/minute |
Heavy-weight read requests Quota for *.aggregatedList methods. |
compute.googleapis.com/heavy_weight_read_requests |
Rate per project (HeavyWeightReadRequestsPerMinutePerProject ):
750 requests/minute |
The following quota groups apply to global APIs with per method quotas:
Quota group Description |
Metric name | Default limit |
---|---|---|
License insert requests Quotas for licenses.insert method. |
compute.googleapis.com/license_insert_requests |
|
Project set common instance metadata requests Quota for projects.setCommonInstanceMetadata method. |
compute.googleapis.com/project_set_common_instance_metadata_requests |
Quota per project (ProjectSetCommonInstanceMetadataRequestsPerMinutePerProject ):
36 requests/minute |
Rate quotas for regional metrics
The following quotas apply to methods that use regional metrics:
Quota group Description |
Metric name | Default quota Quota per project per region |
---|---|---|
Queries quota for regional and zonal methods that create, modify, or delete Compute Engine resources. For example, instances.insert , disks.update , and
instances.delete methods.
The following
|
compute.googleapis.com/default_per_region |
Queries per minute per region : 1500 |
Read requests Quota for regional and zonal get methods
such as autoscalers.get , disks.get , instances.get ,
and machineTypes.get . |
compute.googleapis.com/read_requests_per_region |
Read requests per minute per region : 1500 |
List requests Quota for regional and zonal list methods
such as autoscalers.list , disks.list , instances.list ,
and machineTypes.list . |
compute.googleapis.com/list_requests_per_region |
List requests per minute per region : 1500 |
Filtered list cost overhead Quota for
Google Cloud charges quota usage for this metric in addition to
the quotas against
the |
compute.googleapis.com/filtered_list_cost_overhead_per_region BETA |
Rate per project (ListRequestsFilterCostOverheadPerMinutePerProjectPerRegion ):
750k resources filtered out of the list requests per region per minute. As the
quota is charged for every 10k resources, you see the limit as 75 (750k/10k) when you
query for this quota limit on the Google Cloud console.
|
Operation read requests Quota for regionOperations.get and
zoneOperations.get methods. |
compute.googleapis.com/operation_read_requests_per_region |
Operation read requests per minute per region : 1500 |
Global resource mutation requests per region Quota for disks.createSnapshot ,
and regionDisks.createSnapshot methods. |
compute.googleapis.com/global_resource_write_requests_per_region |
GlobalResourceWriteRequestsPerMinutePerProjectPerRegion : 375 |
Instance get serial port output requests Quota for instances.getSerialPortOutput method. |
compute.googleapis.com/get_serial_port_output_requests_per_region |
GetSerialPortOutputRequestsPerMinutePerProjectPerRegion : 1500 |
Heavyweight read requests Quota for regionOperations.wait ,
zoneOperations.wait , and
regionNetworkFirewallPolicies.getEffectiveFirewalls methods. |
compute.googleapis.com/heavy_weight_read_requests_per_region |
Heavyweight read requests per minute : 750 |
Heavy-weight mutation requests per region Quota for patch ,
delete , and insert methods for
interconnectAttachments resource and
for the networks.updatePeering method. |
compute.googleapis.com/heavy_weight_write_requests_per_region |
HeavyWeightWriteRequestsPerMinutePerProjectPerRegion : 750 |
Instance simulate maintenance event requests Quota for instances.simulateMaintenanceEvent method. |
compute.googleapis.com/simulate_maintenance_event_requests_per_region |
SimulateMaintenanceEventRequestsPerMinutePerProjectPerRegion : 150 |
Instance list referrer requests Quota for instances.listReferrers method. |
compute.googleapis.com/instance_list_referrers_requests_per_region |
InstanceListReferrersRequestsPerMinutePerProjectPerRegion : 3000 |
Network endpoint write requests Quota for networkEndpointGroups.attachNetworkEndpoints
and networkEndpointGroups.detachNetworkEndpoints methods. |
compute.googleapis.com/network_endpoint_write_requests_per_region |
NetworkEndpointWriteRequestsPerMinutePerProjectPerRegion : 1500 |
Network endpoint list requests Quota for networkEndpointGroups.listNetworkEndpoints method. |
compute.googleapis.com/network_endpoint_list_requests_per_region |
NetworkEndpointListRequestsPerMinutePerProjectPerRegion : 1500 |
Regional network endpoint write requests Quota for regionNetworkEndpointGroups.attachNetworkEndpoints
and regionNetworkEndpointGroups.detachNetworkEndpoints methods. |
compute.googleapis.com/regional_network_endpoint_write_requests_per_region |
RegionalNetworkEndpointWriteRequestsPerMinutePerProjectPerRegion : 150 |
Regional network endpoint list requests Quota for regionNetworkEndpointGroups.listNetworkEndpoints method. |
compute.googleapis.com/regional_network_endpoint_list_requests_per_region |
RegionalNetworkEndpointListRequestsPerMinutePerProjectPerRegion : 1500 |
Request an increase in rate quotas
If you need a higher quota for making API requests, you can request an increase in the API quota from the Google Cloud console. For instructions, see Requesting a higher quota.
Best practices
Follow the Compute Engine API best practices for preserving rate quotas to mitigate the effects of rate quotas.
What's next
- Learn about Monitoring API usage.
- Learn how to set up quota alerts.