Google Document AI Rate Limit: Quotas, 429 Errors and How to Scale
Jul 11, 2026 • 6 min read
The Google Document AI rate limit is set by adjustable quotas, including 5 concurrent batch requests per project and provisioned throughput of about 120 pages per minute. Here is how to read the quotas, fix RESOURCE_EXHAUSTED errors, and scale.
// Try it now
PDF, JPG, PNG, BMP, HEIC, TIFF
Upload a document to extract
Drop files here or click to upload
Up to 50 files
Uploading...
Last updated July 2026.
The Google Document AI rate limit is not a single number, it is a set of quotas you can view and raise in the Google Cloud console. The main ones are 5 concurrent batch requests per project and provisioned throughput of about 120 pages per minute for base processor versions, or 30 pages per minute for Pro base versions. When you exceed a quota you get an HTTP 429 with RESOURCE_EXHAUSTED. Unlike the 15-page online content limit, these throughput quotas are adjustable, so the fix is backoff plus a quota increase, not a code rewrite.
Rate limits are the second wall teams hit with Document AI, after the 15-page online cap. The first long document teaches you about pages; the first real batch workload teaches you about throughput. The numbers below are read from Google's Document AI limits and quotas documentation in July 2026. Google updates those pages, so confirm the current values before you plan capacity around them.
Does Google Document AI have a rate limit?
Yes. Document AI enforces per-project quotas rather than a single global rate, and the ones that gate real volume are concurrency and throughput. You can run 5 concurrent batch requests per project across US, EU and regional deployments, and provisioned throughput runs at roughly 120 pages per minute for base processor versions and about 30 pages per minute for Pro base versions. Best-effort throughput varies by model version. These are quotas, which means they have default values and can be raised, unlike the content limits such as the 15-page online cap.
The distinction matters when you plan. Content limits, like the 40 MB online file size and the 1 GB batch file size, are fixed system limits you design around. Quotas, like concurrency and pages per minute, are ceilings you can lift with a request. So a throughput problem is usually a quota conversation, while a page-limit problem is an architecture decision between online and batch.
What causes a Document AI quota exceeded error?
A 429 RESOURCE_EXHAUSTED response means you crossed a quota. The most common causes are submitting more than 5 concurrent batch requests in one project, pushing more pages per minute than your provisioned or best-effort throughput allows, or bursting a large number of online requests in a short window. Google returns the error rather than queueing the work, so a naive loop that fires every document at once will trip it almost immediately at scale.
Two things make this worse in practice. First, a single batch request can contain up to 5,000 files, so it is tempting to fan out many batches at once and blow past the concurrency quota. Second, throughput is measured in pages per minute, not requests, so a few very long documents can saturate your quota even at low request counts. Reading the quota as pages, not calls, is the mental shift that prevents most surprises.
The Document AI quotas that gate throughput
| Quota | Default value | Adjustable |
|---|---|---|
| Concurrent batch requests | 5 per project | Yes |
| Provisioned throughput (base) | ~120 pages per minute | Yes |
| Provisioned throughput (Pro base) | ~30 pages per minute | Yes |
| Files per batch request | 5,000 | System limit |
| Online page limit | 15 (30 imageless) | System limit |
For the full set of caps, including the online and batch file sizes and per-file page limits, see the Google Document AI limits reference.
How to fix a 429 RESOURCE_EXHAUSTED error
Handle it in two layers. In your client, add exponential backoff with jitter and retry the request after a short, growing delay rather than immediately, and cap in-flight batch jobs at your concurrency quota so you never submit the sixth while five are running. A simple work queue that releases a new batch only when one finishes keeps you under the limit without hand-tuning delays. This alone clears most transient 429s at moderate volume.
The second layer is capacity. If backoff is not enough because your steady-state volume genuinely exceeds the quota, request a quota increase, or move to provisioned throughput so you have a guaranteed pages-per-minute rate instead of best-effort. Provisioned capacity is the right call when you have predictable, sustained volume and cannot tolerate throttling during peaks. For spiky workloads, backoff plus a modest concurrency increase is usually cheaper.
How do I request a Document AI quota increase?
Open the Google Cloud console, go to IAM and Admin, then Quotas, and filter for the Document AI service. Find the quota you are hitting, such as concurrent batch requests or pages per minute, select it, and submit an increase request with your target value and a short justification of your workload. Increases are reviewed by Google and are not guaranteed, so ask for a number that matches real demand rather than an arbitrary large figure. Approvals for reasonable increases are typically quick.
Rate limit vs the 15-page page limit
These are two different walls and the fixes are opposite. The 15-page limit is a content limit on online processing: a document over 15 pages returns PAGE_LIMIT_EXCEEDED, and the fix is imageless mode (30 pages) or batch processing, not a quota change. The rate limit is a throughput quota: too many pages per minute or too many concurrent batches returns RESOURCE_EXHAUSTED, and the fix is backoff plus a quota increase. Mixing them up sends teams to the wrong solution, so read the error code first.
High-volume document pipelines often exist to feed downstream accounting, and the throughput math changes if you can shorten the path. If the end goal is getting bank statements into your books, for example, you can convert a statement straight to QuickBooks without running a full extraction pipeline at all. When you do need field-level extraction at scale, the point is to size the quota to the real page rate, not the request count.
The short version
Google Document AI limits throughput with adjustable quotas: 5 concurrent batch requests per project and roughly 120 pages per minute of provisioned throughput on base processors. A 429 RESOURCE_EXHAUSTED means you crossed one, and the fix is exponential backoff plus a quota increase, not an architecture change. That is the opposite of the 15-page content limit, which needs batch processing. If you would rather not tune quotas and concurrency yourself, DocuOCR reads long documents in one upload and handles the throttling for you. Drop in a stack of files and compare.
Extract your documents with DocuOCR
Upload a document and get clean, structured data in seconds. No template setup required.
Start free