Cloud Translation enforces quotas on the content size of requests and the number of requests that you can send. Quotas protect the community of Google Cloud users by preventing unforeseen spikes in usage. You can also lower your quotas to prevent excessive usage and control costs.
If you exceed your quota, Cloud Translation returns a 403
error.
The error message states Daily Limit Exceeded
if you exceeded a
daily quota or User Rate Limit Exceeded
if you exceeded a per
minute quota.
Daily quotas reset at midnight Pacific Time, which means new quotas can take up to 24 hours to become effective.
Set usage quotas
By default, the number of characters that you can send per day is unlimited. If you have a set budget, we recommend monitoring your daily usage and adjusting quotas according to your planned spend.
You can edit your quotas by using the Google Cloud console quotas page. v2 quotas apply to Cloud Translation - Basic and v3 quotas apply to Cloud Translation - Advanced.
Content quotas
Content quotas apply to text strings and documents that you send to the
Cloud Translation API through the translateText
,
detectLanguage
, and translateDocument
methods
(synchronous requests). All characters that you send to the Cloud Translation API count
toward these quotas, including whitespace characters. These quotas are
cumulative if you use Cloud Translation - Basic and Cloud Translation - Advanced
together.
Content Quota | Default |
---|---|
v2 and v3 general model characters per day per project | unlimited |
v2 and v3 general model characters per minute per project | 6,000,000 characters |
v2 and v3 general model characters per minute per project per user* | 6,000,000 characters |
v3 document translation pages per minute per project† | 2,400 pages |
v3 document translation pages per minute per project per user† | 2,400 pages |
* Per user quotas apply to the number of requests that an end user, who is using a client application, can make per minute. When you use a service account, the service account's identity is the user for quota purposes. If you use Cloud Translation - Basic and an API key, Cloud Translation uses the client's IP address to enforce this limit.
† Document Translation page quota is counted against the character quota for Cloud Translation. For example, if you send up to 2,400 pages per minute, the number of characters in the documents also cannot exceed 6,000,000 characters. For XLSX files, only the character quotas apply (not the page quotas). Document Translation is not supported for Cloud Translation - Basic.
The Cloud Translation API is optimized for translating smaller requests. The recommended maximum length for each request is 5K characters (code points). However, the more characters that you include, the higher the response latency. For Cloud Translation - Advanced, the maximum number of code points for a single request is 30K. Cloud Translation - Basic has a maximum request size of 100K bytes. An alternative option is to use batch translations to send more content per request as a long running operation.
The Cloud Translation API rejects requests larger than the maximum and gives a
400 INVALID_ARGUMENT
error regardless of the available quota.
Request quotas
Cloud Translation applies a quota on the number of requests that you can send to the service.
Quota | Default |
---|---|
Requests for getting supported languages (v2 and v3 combined) per minute per project | 600 requests |
v2 requests per minute per project† | 300,000 requests |
v2 requests per minute per project per user*† | up to the v2 per project limit |
v3 requests per minute per project† | 6000 requests |
v3 requests per minute per project per user*† | up to the v3 per project limit |
Total number of v3 batch translation requests (text and documents) per day per project | unlimited |
* Per user quotas apply to the number of requests that an end user, who is using a client application, can make per minute. When you use a service account, the service account's identity is the user for quota purposes. If you use Cloud Translation - Basic and an API key, Cloud Translation uses the client's IP address to enforce this limit.
† Applies to all Cloud Translation method calls
except for the translateText
, detectLanguage
, translateDocument
, and
getSupportedLanguages
methods, which have their own request or content
quotas.
AutoML quotas
For Cloud Translation - Advanced, you can use models from AutoML to translate content. When you use a custom model, usage is counted against a separate set quotas. For more information about AutoML content and request quotas, see the AutoML Translation documentation.
Counting quotas
For Cloud Translation - Basic, content and request quotas are counted against the project that is making the request, which is determined by the key that is used in the request.
For Cloud Translation - Advanced, content quota is checked against the project that is associated with the model in the request. The request quotas are checked against the project that is making the request.
For example, in the following translate text request, the request quotas are
checked against project-id-1
because the request is coming from
project-id-1
. The content quota is checked against project-id-2
because the
request is using a model in that project.
POST https://translation.googleapis.com/v3/projects/project-id-1/locations/us-central1:translateText { "Model":"projects/project-id-2/locations/us-central1/models/model-id", "sourceLanguageCode": "en", "targetLanguageCode": "ru", "contents": ["Dr. Watson, please discard your trash."] }
Cloud Translation - Advanced limits
The following table describes Cloud Translation - Advanced limits, which cannot be changed.
Description | Limit |
---|---|
Maximum number of files that you can include in a single batch request | 100 files |
Maximum number of glossary resources for a project | 10,000 |