Troubleshoot Compute Engine concurrent operations quota

This document describes how to troubleshoot concurrent operation limits in Compute Engine that are caused byrateLimitExceeded errors.

To help identify the cause of arateLimitExceeded error, use the following troubleshooting steps:

  1. In the Google Cloud console, go to theLogs Explorer page:

    Go toLogs Explorer

    If you use the search bar to find this page, then select the result whose subheading isLogging.

  2. To filter the error logs generated by Compute Engine API, enter the following logging query in the query editor.

    log_id("cloudaudit.googleapis.com/activity")protoPayload.serviceName="compute.googleapis.com"protoPayload.response.error.code=403protoPayload.status.message="Rate Limit Exceeded"

    The filtered error logs should look similar to the following:

    "protoPayload":{"@type": "type.googleapis.com/google.cloud.audit.AuditLog","status": {  "message": "Rate Limit Exceeded"}"serviceName": "compute.googleapis.com","methodName": "METHOD_NAME",......"response": {  "error": {    "message": "Rate Limit Exceeded",    "code": 403,    "errors": [      {        "message": "Rate Limit Exceeded",        "reason": "rateLimitExceeded",        "domain": "usageLimits"      }    ]  },  "@type": "type.googleapis.com/error"},"resourceLocation": {  "currentLocations": [    "LOCATION"  ]},......

    The error details contain the following values:

    • METHOD_NAME: The name of the service method or operation. For API calls, this name should be the name of the API method.

    • LOCATION: The location of the resource. This can be a region, zone or global. For example, the entriescurrentLocations: "us-central1"(Regional) orcurrentLocations: "us-central1-a" indicate that the region is"us-central1" orcurrentLocations: "global".

  3. Identify the associatedmethodName value from the error log. This name represents the API method for which the rate limit exceeded, for example:v1.compute.instances.stop.

  4. Identify the relevant location in the audit logs.

  5. Check theConcurrent operations per project quotas and limits.

    Console

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

      Go to Quotas

      TheQuotas page lists the quota usage and limits for your project.By default, the list is sorted to show your most used quotas first,which helps you see limits that are at risk of being exceeded.

    2. To filter the list and to view the usage and limit for any specific quota,selectQuota orMetric in theFilter field.

      For example, either select the Quota by the nameConcurrent global operations per project operation type orselectService: Compute Engine API,type: System Limit and a key wordconcurrent to list all the concurrent operation quotas. Filtering provides a list of concurrent quotas. From this list, you can search for the affected quota.To filter the quota for a specific operation, addDimensions to the filter queryand select theoperation_type (shown asmethodName in the audit logs).

      For example, selectinstances_stopto see the quota usage and limit for the operationinstances.stop.

      To filter the quota for a specific region, addDimensions to the filter queryand select theregion (shown ascurrentLocations in the audit logs).

      For example, selectus-central1 to see the quota usage and limit forus-central1 region.

      Filtersregion andoperation_type can be used together to view the quota usage and limit for a specific operation in a specific region.

    gcloud

    Preview

    This product or feature is subject to the "Pre-GA Offerings Terms" in the General Service Terms section of theService Specific Terms. Pre-GA products and features are available "as is" and might have limited support. For more information, see thelaunch stage descriptions.

    You can use the Google Cloud CLI to view the usage and limit of concurrentoperation quotas.

    To use this approach, ensure that you have installedthealpha commandscomponent. If you're using Cloud Shell to interact with Google Cloud, theGoogle Cloud CLI is installed for you.

    To view an operation quota, use the following command:

    gcloud alpha services quota list \  --service=compute.googleapis.com \  --consumer=projects/PROJECT_ID

    ReplacePROJECT_ID with the ID of the project for which youwant to view the quota.

    These quotas are generally grouped into two categories:

    • Global or regional
    • Per project or per project per operation type

    For more information, seeConcurrent operation quota groups.

  6. Check the usage chart for the quota. If the usage is close to or above the quota limit during the period of error logs, it means that the quota or system limit is exceeded.

    To view charts that show current and peak usage, go to the quota and thenclickMonitoring.You might need to scroll right to the end of the table.

    The monitoring graph will confirm the cause ofrateLimitExceeded error, with the specific quota/limit. If the current values are above the limit values, it means that the system limit is exceeded.Since system limits can't be modified, we recommend the following best practices to reduce the number of concurrent operations.

    Some of the best practices are as follows:

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.