Troubleshoot quota errors

You might receive quota errors for a number of reasons, such as exceeding quota values or not setting the quota project correctly. If you want to be alerted when errors happen in future, you can create custom alerts for specific quota errors, as described in Set up quota alerts.

Exceeding rate quotas

Rate quotas reset after a predefined time interval that is specific to each service. For more information, see the quotas documentation for the specific service.

Exceeding quota values

If your project exceeds its maximum quota value while using a service, Google Cloud returns an error based on how you accessed the service:

  • If you exceed a quota value with an API request, Google Cloud returns an HTTP 413 REQUEST ENTITY TOO LARGE status code. Note that when using the BigQuery legacy streaming API in a production environment, you may receive a 413 REQUEST ENTITY TOO LARGE status code if your HTTP requests are larger than 10 MB. You may also receive this error if you exceed 300 MB per second. For more information see Streaming inserts.
  • If you exceeded a quota value with an HTTP/REST request, Google Cloud returns an HTTP 429 TOO MANY REQUESTS status code.
  • If you exceed a quota for Compute Engine, Google Cloud typically returns an HTTP 403 QUOTA_EXCEEDED status code, whether it was from API, HTTP/REST, or gRPC. If the quota is a rate quota, then 403 RATE_LIMIT_EXCEEDED is returned.
  • If you exceeded a quota value using gRPC, Google Cloud returns a ResourceExhausted error. How this error appears to you depends on the service.
  • If you exceeded a quota value using a Google Cloud CLI command, the gcloud CLI outputs a quota-exceeded error message and returns with the exit code 1.
  • If you received a QUOTA_EXCEEDED message during a service rollout, see the following section.

Exceeding quota values during a service rollout

Google Cloud sometimes changes the default quota values for resources and APIs. These changes take place gradually, which means that during the rollout of a new default quota, the quota value that appears in the Google Cloud console might not reflect the new quota value that is available to you.

If a quota rollout is in progress, you may receive an error message that states The future limit is the new default quota that will be available after a service rollout completes. If you see this error message, the cited quota value and future value are correct, even if what appears in the Google Cloud console is different.

  • For additional information, view the audit logs and look for a QUOTA_EXCEEDED message.

        "status": {
          ...
          "message": "QUOTA_EXCEEDED",
          "details": [
            {
              ...
              "value": {
                "quotaExceeded": {
                  ...
                  "futureLimit": FUTUREVALUE
                }
              }
            }
          ]
        },
    
  • To view graphs that show current and peak usage, in the Google Cloud console, click the monitoring monitoring icon. You might need to scroll all the way to the right to see this icon.

  • If you need more quota than you have access to, and can't wait until the service rollout completes, request a quota adjustment.

API error messages

If your quota project (also called a billing project) isn't set correctly, API requests might return the following error messages:

  • user credentials not supported by this API
  • API not enabled in the project
    • no quota project set

These and other errors can often be fixed by setting the quota project. For more information, see Quota project overview.