Verified July 2026

AWS Textract Limits: Page Limit and File Size Caps

AWS Textract reads 1 page synchronously and 3,000 pages asynchronously, with a 10 MB sync file cap and 500 MB async from S3. Any multi-page PDF must use the async job.

The one-page synchronous limit is the surprise that breaks most first integrations. Here is every Textract quota, read from the AWS docs. Last updated July 2026.

  • Sync 1 page, async 3,000
  • 10 MB and 500 MB file caps
  • Formats, XFA and password rules
  • Queries and rate limits
Upload a multi-page PDF, no signup

PDF, JPG, PNG, BMP, HEIC, TIFF

Upload a document to extract

See a long PDF come back as fields without writing a StartDocument call or polling a JobId.

SOC 2 Type II
256-bit encryption
US data handling
Multi-page in one upload
1
page, synchronous PDF/TIFF
3,000
pages, asynchronous from S3
10 MB
synchronous file limit
500 MB
asynchronous PDF/TIFF limit
// The short answer

What the Textract limits actually are

AWS Textract has two sets of limits, one for synchronous calls and one for asynchronous jobs, and the split is the whole story. The synchronous operations, DetectDocumentText and AnalyzeDocument, accept a single-page PDF or TIFF, or one image, up to 10 MB held in memory. The asynchronous operations, StartDocumentTextDetection and StartDocumentAnalysis, read a PDF or TIFF up to 500 MB and 3,000 pages from an Amazon S3 bucket, and you poll the returned JobId for the result. Textract accepts JPEG, PNG, PDF and TIFF only, rejects XFA forms and password-protected PDFs, and caps a PDF page at 40 inches or 9,000 points and an image at 10,000 pixels a side. Per-second transaction quotas are set in the Service Quotas console and vary by operation and Region. Everything here is read from the AWS documentation in July 2026, and because AWS updates its quotas, confirm each figure on the current doc before you design around it.

The limits that matter

  • Sync: 1 page, 10 MB, response returned inline.
  • Async: 3,000 pages, 500 MB, from S3, poll the JobId.
  • Formats: JPEG, PNG, PDF, TIFF. No XFA, no password.
// The one-page trap

Why Textract only reads one page synchronously

The first thing most teams try is sending a multi-page PDF to DetectDocumentText or AnalyzeDocument, the synchronous operations, and getting an error. That is expected. Those calls are built for a real-time response on a single page or image, so they accept one page of a PDF or TIFF at a time, up to 10 MB. The design assumes you want an answer in the same request, and a 3,000-page document cannot be processed inside a single synchronous response.

For anything longer you switch to the asynchronous operations. You upload the file to Amazon S3, call StartDocumentTextDetection or StartDocumentAnalysis, and Textract returns a JobId immediately. You then poll GetDocumentTextDetection or GetDocumentAnalysis, or subscribe to an Amazon SNS topic, until the job finishes and the pages are ready. That path takes up to 3,000 pages and 500 MB, the highest single-document page count among the major cloud OCR services.

The limit itself is not the cost. The cost is the plumbing it forces: an S3 bucket, an async call, JobId polling or an SNS subscription, pagination through the results, and reassembly by page number. For a team already deep in AWS that is routine. For everyone else, it is a week of integration work to read a long PDF that a product would take as one upload.

The async path, step by step

  1. 1. Upload the PDF or TIFF to an Amazon S3 bucket.
  2. 2. Call StartDocumentTextDetection or StartDocumentAnalysis; get a JobId.
  3. 3. Poll GetDocument* or subscribe to SNS until the job completes.
  4. 4. Page through the blocks and reassemble by page number.

Set quotas like file size and page count cannot be changed. Per-second transaction quotas can be raised in the Service Quotas console. Verified from the AWS docs, July 2026.

// Sync vs async

AWS Textract limits, synchronous vs asynchronous

The same limits split by call type, because which one you use decides your page ceiling and your architecture.

Limit Synchronous Asynchronous
Max file size 10 MB (in memory) 500 MB (PDF/TIFF from S3), 10 MB (JPEG/PNG)
Max pages (PDF/TIFF) 1 page 3,000 pages
Input source Bytes or S3 Amazon S3 only
Result Returned in the response Poll the JobId until complete
Queries per page Up to 15 Up to 30
Operations DetectDocumentText, AnalyzeDocument StartDocumentTextDetection, StartDocumentAnalysis

See how these ceilings compare with Azure and Google on the OCR API limits comparison, and what Textract costs per 1,000 pages on the AWS Textract pricing breakdown.

// Set quotas

The Textract limits that cannot be changed

Format, geometry, resolution and language rules are set quotas. They apply to every call regardless of tier.

Constraint Rule
Accepted formats JPEG, PNG, PDF, TIFF. No XFA forms. No password-protected PDFs.
PDF page geometry Max 40 inches and 9,000 points per side.
Image resolution 10,000 pixels or fewer on each side.
Minimum text height 15 pixels, about 8 pt at 150 DPI.
Languages English, French, German, Italian, Portuguese, Spanish. Queries English only.
Character types Printed and handwritten. Handwriting English only. No vertical text.
Rate limits Per-second transaction quotas per operation and Region, viewable in Service Quotas.

If your documents are XFA forms, encrypted PDFs, or non-English handwriting, Textract will not read them without preprocessing. For those, an Amazon Textract alternative that handles the file prep and multi-page batching for you is often less work than building around the constraints.

// Frequently asked

AWS Textract limits FAQ

What is the AWS Textract page limit?
It depends on the operation. The synchronous operations, DetectDocumentText and AnalyzeDocument, accept a single-page PDF or TIFF. The asynchronous operations, StartDocumentTextDetection and StartDocumentAnalysis, accept up to 3,000 pages in a PDF or TIFF read from Amazon S3. So the practical page limit is 1 page synchronously and 3,000 pages asynchronously, and any multi-page PDF has to use the async path.
Can AWS Textract process a multi-page PDF?
Yes, but only through the asynchronous API. Synchronous Textract calls reject a multi-page PDF because they accept one page at a time. To read a multi-page PDF you upload it to an Amazon S3 bucket, call StartDocumentTextDetection or StartDocumentAnalysis, then poll the returned JobId with GetDocumentTextDetection or GetDocumentAnalysis until the job finishes. The async path handles up to 3,000 pages and a 500 MB file.
What is the AWS Textract file size limit?
For synchronous operations the limit is 10 MB in memory for JPEG, PNG, PDF and TIFF. For asynchronous operations, JPEG and PNG are still capped at 10 MB, but PDF and TIFF can be up to 500 MB when read from Amazon S3. So a large scanned PDF must go through the async API from S3, not a synchronous call, and files over 500 MB have to be split before processing.
How many pages can Textract read asynchronously?
Up to 3,000 pages in a single PDF or TIFF, with a file-size limit of 500 MB, read from Amazon S3. That is the highest single-document page count among the major cloud OCR services, ahead of Azure at 2,000 pages and Google Document AI at 1,000 pages per file in batch. The tradeoff is that you manage an asynchronous job and poll the JobId, rather than getting a synchronous response.
What file formats does AWS Textract support?
Textract accepts JPEG, PNG, PDF and TIFF only. It does not support XFA-based PDF forms, and PDFs cannot be password protected. JPEG 2000-encoded images inside a PDF are supported. There is no DOCX, XLSX or HTML input, so an Office document has to be converted to PDF first. If your source documents are XFA forms or encrypted PDFs, you have to preprocess them before Textract will read them.
Does AWS Textract have a rate limit?
Yes. Textract enforces per-second transaction quotas that vary by operation and AWS Region. These are default quotas you can view and, in many cases, raise in the Service Quotas console. When you exceed a per-second quota you get a throttling response, so batch workloads should implement exponential backoff and retries. The transaction quota is separate from the file-size and page limits, which are set quotas that cannot be changed.
What are the Textract PDF dimension limits?
A PDF page can be at most 40 inches by 40 inches, or 9,000 points on a side. Images must be 10,000 pixels or fewer on each side. The minimum text height Textract will reliably detect is 15 pixels, which is about an 8-point font at 150 DPI. If your scans are lower resolution or the pages are unusually large, rescale or re-scan them so the text sits above the minimum and the page fits within the dimension limits.
Is there a limit on Textract queries per page?
Yes. With the Queries feature of AnalyzeDocument you can ask up to 15 queries per page in a synchronous call and up to 30 queries per page in an asynchronous call. Queries let you pull specific fields by asking a natural-language question, and query detection is available for English documents only. If you need more than 30 fields per page, you split them across multiple requests or use a form-based extraction instead.
Does Textract support handwriting and other languages?
Textract reads both printed and handwritten text, but handwriting recognition is English only. Printed text detection covers English, French, German, Italian, Portuguese and Spanish. Textract does not return the detected language in its output, and it does not support vertical text alignment used in some languages. For handwritten forms in other languages, Textract is not the right fit and you would look at a model trained for that script.
How do I handle documents larger than the Textract limit?
Split or go asynchronous. If your PDF is over one page, use the async operations, which take up to 3,000 pages. If a file is over 500 MB, split it into chunks under the limit, process each, and reassemble by page number. If you would rather not build the async job, the JobId polling, and the splitting and stitching yourself, a ready-to-use product does this for you and returns clean fields from a single upload, regardless of length.
Which is better for long PDFs, Textract or an alternative?
For raw page count Textract async is strong at 3,000 pages, but the cost is the plumbing: S3 upload, StartDocument call, JobId polling, and reassembly. If your team wants that control and lives in AWS, it is a solid fit. If you would rather upload a long PDF and get fields back without writing the async workflow, a product that batches and reviews for you removes the sync-versus-async decision. Weigh the engineering time against the raw ceiling.

Read a long PDF without the async job

The Textract one-page synchronous limit means an S3 upload, a StartDocument call and JobId polling for anything multi-page. DocuOCR takes the whole PDF in one upload, batches and reviews it, and returns clean fields. Drop in your longest document and compare.