Quotas and limits

This document lists the quotas and limits that apply to Cloud Vision.

A quota restricts how much of a shared Google Cloud resource your Google Cloud project can use, including hardware, software, and network components. Therefore, quotas are a part of a system that does the following:

  • Monitors your use or consumption of Google Cloud products and services.
  • Restricts your consumption of those resources, for reasons that include ensuring fairness and reducing spikes in usage.
  • Maintains configurations that automatically enforce prescribed restrictions.
  • Provides a means to request or make changes to the quota.

In most cases, when a quota is exceeded, the system immediately blocks access to the relevant Google resource, and the task that you're trying to perform fails. In most cases, quotas apply to each Google Cloud project and are shared across all applications and IP addresses that use that Google Cloud project.

To increase or decrease most quotas, use the Google Cloud console. For more information, see Request a higher quota.

There are also limits on Vision resources. These limits are unrelated to the quota system. Limits cannot be changed unless otherwise stated.

Quota types

There are 3 kinds of quota:

  1. Request Quota
    • The quota counts per request sent to Vision API endpoint.
  2. Feature Quota
    • The quota counts per image / file sent to Vision API endpoint.
    • Unless specified explicitly, quota with feature name as prefix is generally a Feature quota.
  3. In Processing Quota
    • The quota counts per image / file being processed by Vision API unless specified explicitly.
    • Can be inferred by "in processing" in quota name.
    • This quota determines the maximum number of images/pages that Vision API processes at a time for the asynchronous methods. Users can send more than this quota into the asynchronous methods, but the images/pages over the quota are not processed immediately. The files in excess of the quota are added to a queue to be processed later.

The current API usage quotas for the Vision API are as follows (and are subject to change):

Vision API quota Quota type Value
Requests per minute (except request types listed below) Request quota 1,800
Celebrity recognition requests per minute Request quota zero
Label detection requests per minute Feature quota 1,800
Text detection requests per minute Feature quota 1,800
Asynchronous image annotation* number of images in processing In Processing quota 8,000
Asynchronous document text detection number of pages in processing In Processing quota 10,000
Product Search quota Value
Requests per minute (except request types listed below) 1,800
Batch requests per day 300
Resource management write requests per minute 1,200
Resource management requests per minute 2,400

These limits apply to each Google Cloud console project and are shared across all applications and IP addresses using that project.

Lower quotas can be set per user in the Google Cloud console.

Quota increases

You can edit your quotas up to their maximum values by selecting EDIT QUOTAS from the Quotas page of the Google Cloud console page. To request an increase above the maximum quota, edit your quota with your requested increase and justification and submit your update. You will be notified when your request has been received. You might be contacted for more information regarding your request. After your request has been reviewed, you will be notified whether it has been approved or denied.

Generally each quota has "per project per user" and "per project" variants, please change them correspondingly to your setup.

When requesting feature a quota increase, consider the overall request quota and intended batch size to assure the following:

  • overall request quota (Requests per minute) * your batch size >= increased feature quota

If you do not fulfill this requirement, you will still be throttled by the overall request quota.

This document contains current content limits and request quotas for the Vision API. This page will be updated to reflect any changes to these restrictions and usage limits.

Limits

The Vision API enforces the following usage limits:

Content Limit Value
Image file size 20 MB
JSON request object size 10 MB
PDF file size 1 GB
Images per images:annotate request 16
Images per images:asyncBatchAnnotate request 2000
Pages per files:annotate request 5
Pages per files:asyncBatchAnnotate request 2000

Base64-encoded images may exceed the JSON size limit, even if they are within the image file size limit. Larger images should be hosted on Cloud Storage or at a publicly-accessible URL. Note that base64-encoded images can have a larger file size than the original image file (usually about 37% larger).