OCR API limits swing from 15 pages to 3,000 per request and 20 MB to 1 GB per file. AWS Textract reads one page synchronously but 3,000 async, Azure takes 2,000 pages in a single call, and Google Document AI online caps at 15.
The limit that trips people up is not the biggest number, it is the synchronous one. Here is every ceiling, read from the vendor docs. Last updated July 2026.
Upload a document to extract
Drop files here or click to upload
Up to 50 files
Uploading...
Drop in a long PDF and see the fields come back, without wiring up an async job or worrying about a 15-page cap.
OCR API limits fall into three buckets: file size, pages per request, and rate. On file size, AWS Textract and Azure AI Document Intelligence accept up to 500 MB, Google Document AI batch goes to 1 GB, and the LLM based readers, Mistral Document AI and Gemini, stop at 50 MB. On pages, Textract reads up to 3,000 in an async job, Azure takes 2,000 in one call, Google allows 15 online or 1,000 in batch, and Mistral and Gemini cap at 1,000. The number that surprises people is Textract's synchronous limit of a single page, and Google's online limit of 15 pages, because both force you onto an asynchronous or batch path for anything longer. On rate, expect a per-second transaction quota and a 429 response when you exceed it, so build retry logic. Every figure here was read from the vendor's own documentation in July 2026, and because limits change, the honest move is to confirm each one on the current doc before you design around it.
Read the headline numbers and Textract looks the most generous at 3,000 pages and Azure strong at 2,000. In practice the ceiling you hit first is the synchronous one. AWS Textract's synchronous operations, DetectDocumentText and AnalyzeDocument, accept a single-page PDF or TIFF up to 10 MB. Send a five-page PDF to that call and it fails. To read the whole thing you use the asynchronous operations, StartDocumentTextDetection or StartDocumentAnalysis, which take up to 3,000 pages and 500 MB from Amazon S3, and then you poll the JobId for the result.
Google Document AI has the same shape at a different number. Online processing caps at 15 pages and 40 MB, or 30 pages in imageless mode. A sixteen-page contract sent to the online endpoint returns the "page limit exceeded" error. The fix is batch processing, which raises the ceiling to 1,000 pages per file and 1 GB, at the cost of an asynchronous call and a Cloud Storage bucket. Azure avoids the split entirely: one analyze call takes the full 2,000 pages and 500 MB, and you poll for the result the same way regardless of length.
So the practical rule is to design for your longest document, not your average one. If most of your PDFs are short but a few run to hundreds of pages, you still need the asynchronous or batch path, plus the polling and reassembly that comes with it. That plumbing, not the raw ceiling, is the real cost of the limit.
Limits and quotas change. Everything on this page was read from each vendor's own documentation in July 2026, and we would rather you confirm it there than trust us.
Read from each vendor's own documentation in July 2026. Synchronous and asynchronous ceilings are listed separately where they differ, because that difference is the one that shapes your integration.
| Service | Max file size | Max pages per request | Rate limit | Formats |
|---|---|---|---|---|
| Azure AI Document Intelligence (S0) | 500 MB | 2,000 pages (one analyze call) | 15 analyze TPS (adjustable) | PDF, JPEG, PNG, BMP, TIFF, HEIF; Office on Read/Layout |
| Azure AI Document Intelligence (F0 free) | 4 MB | First 2 pages only | 1 analyze TPS | Same, truncated to 2 pages |
| AWS Textract (synchronous) | 10 MB | 1 page (PDF/TIFF) | Per-second quota, Region-specific | JPEG, PNG, PDF, TIFF (no XFA) |
| AWS Textract (asynchronous) | 500 MB | 3,000 pages (PDF/TIFF) | Per-second quota, Region-specific | JPEG, PNG, PDF, TIFF from S3 |
| Google Document AI (online) | 40 MB | 15 pages (30 imageless) | 120 pages/min (provisioned base) | PDF, TIFF, GIF, images |
| Google Document AI (batch) | 1 GB | Up to 1,000 pages/file | 5 concurrent batch requests | 5,000 files per batch request |
| Mistral Document AI | 50 MB | 1,000 pages | Account rate limits apply | PDF, PPTX, DOCX, PNG, JPEG, AVIF |
| Gemini API | 50 MB (PDF inline) | 1,000 pages | Model rate limits apply | 258 tokens per page |
| Google Cloud Vision | 20 MB per image | PDF/TIFF async from storage | Per-project quota | Text only, no key-value fields |
Textract splits sync and async, so it appears twice: one page synchronously, 3,000 pages asynchronously. Azure lists free and paid tiers separately because the free F0 tier returns only the first 2 pages. Google lists online and batch because the online 15-page cap is the limit most teams hit. For the AWS numbers in depth, see the AWS Textract limits page, and for what each of these costs, the OCR API pricing comparison.
Ranked by the largest single document each service accepts, with the catch that comes with each ceiling.
| Service | Max pages | Max file | The catch |
|---|---|---|---|
| AWS Textract (async) | 3,000 pages | 500 MB | Highest page count, but multi-page PDF must be an async S3 job. |
| Azure AI Document Intelligence | 2,000 pages | 500 MB | Highest single-call ceiling; one analyze request, you poll for the result. |
| Google Document AI (batch) | 1,000 pages/file | 1 GB | Largest single file; needs batch, online caps at 15 pages. |
| Mistral Document AI | 1,000 pages | 50 MB | Generous pages, tight 50 MB file ceiling on large scans. |
| Gemini API | 1,000 pages | 50 MB | Same 50 MB ceiling; each page is 258 tokens, so cost scales with output. |
No single service wins every axis. Textract has the most pages but forces an async job for any multi-page PDF. Azure has the cleanest single-call path but a 500 MB file ceiling. Google batch takes the largest file at 1 GB but caps online at 15 pages. If you would rather not pick a limit to design around, a product that batches, splits and polls for you removes the ceiling from your code. See how each option is priced on the best OCR API roundup.
The one-page sync cap and the 3,000-page async job, in depth.
What Azure, AWS Textract and Google Document AI cost per 1,000 pages.
An honest roundup of the extraction APIs for US teams.
Where a product beats the raw API on limits and review.
Skip the sync-versus-async plumbing on multi-page PDFs.
Why the 15-page online cap fires and how to move to batch.
One page sync, 3,000 async, and how to read a long PDF.
The 50 MB, 1,000-page reader at $4 to $5 per 1,000 pages.
258 tokens a page, 50 MB and 1,000-page ceiling.
A page cap and a file-size ceiling are your problem only if you are calling the API directly. DocuOCR batches, splits and polls behind the scenes, so a 400-page PDF is one upload. Drop in your longest document and see the fields come back clean.