ResumeJSON

AWS Textract pricing: per-page rates, and what a parsed CV costs

AWS Textract pricing, as of October 2026, is per page, set separately for each API and feature, with a cheaper rate after the first million pages in a month. In the US West (Oregon) region that AWS's own worked examples use, plain text extraction (Detect Document Text) costs $0.0015 a page, dropping to $0.0006 after a million pages. Analyze Document costs $0.015 a page for Tables, $0.015 for Queries and $0.05 for Forms, and the three together cost $0.070 a page. New AWS customers get a three-month free tier on top. So the honest answer to "what does Textract cost" is a rate card: the price of a document depends on how many pages it has and which features you call on each one.

If the documents you are pricing are CVs, there is a second question the rate card does not answer: what you still have to build after Textract returns. That is what most of this article is about.

We build ResumeJSON, a per-parse resume parsing API, so read this as an interested party's write-up. Every Textract figure below was read off Amazon's own Textract pricing page in October 2026. AWS prices by region and changes its pages, so re-check before you commit a budget to any number here.

Amazon Textract pricing by API

Textract has five APIs. AWS describes them in one line: "Detect Document Text API, Analyze Document API, Analyze Expense API, and Analyze ID API, and Analyze Lending API." Each is priced per page, per month, in two bands.

API or featureFirst million pages a monthAfter a million pages
Detect Document Text$0.0015 a page$0.0006 a page
Analyze Document: Tables$0.015 a page$0.010 a page
Analyze Document: Queries$0.015 a pagenot shown in AWS's examples
Analyze Document: Forms$0.05 a page$0.04 a page
Analyze Document: Tables + Queries$0.020 a page$0.015 a page
Analyze Document: Forms + Tables + Queries$0.070 a page$0.055 a page
Analyze Document: Custom Queries$0.025 a page$0.015 a page
Analyze Expense (invoices, receipts)$0.01 a page$0.008 a page
Analyze ID (first 100,000 pages)$0.025 a page$0.01 a page
Analyze Lending$0.07 a page$0.055 a page

All of these are the US West (Oregon) figures stated in the worked examples on that page. The page's main price table fills its cells in per region, so the figure you are quoted in another region can differ.

Two lines under the table change the arithmetic for anyone combining features. AWS states that "Layout feature is included free of cost with any combination of Forms, Tables, and Queries", and that Signatures is likewise included free with any combination of Forms, Tables, Queries and Layout. Training an adapter for Custom Queries is also free; you pay the Custom Queries page rate when you use it.

The Textract free tier

The free tier is time-limited. In AWS's words: "The Free Tier lasts for three months, and new AWS customers can analyze up to":

For evaluating Textract on CVs, 100 pages of Queries is about fifty two-page resumes a month, for three months. That is enough to judge the output. It is not enough to run a job board on.

What a two-page CV costs on Textract

A resume is usually one to three pages. Taking two pages as the typical case, and the first-million rates above:

How you call Textract on a two-page CVPages billedCost per CV
Detect Document Text only2$0.003
Queries2$0.03
Tables + Queries2$0.04
Custom Queries2$0.05
Forms + Tables + Queries2$0.14

Text extraction alone costs a third of a cent per CV. That is the cheapest number on the board, and it is the one most cost estimates stop at. What it buys is the text of the page, as lines and words with their positions. It does not tell you which line is a job title, which is an employer, or where one role ends and the next begins.

The step the page price does not include

Textract is a general document reader. Its features map onto documents with a known shape: a form has key-value pairs, a table has rows and columns, an invoice has line items. A CV has none of those reliably. Two candidates' resumes rarely share a layout, and the part a hiring tool needs most, the work history, is a list of unknown length.

That leaves three ways to get resume fields out of Textract, each with a cost beyond the page rate:

  1. Detect Document Text, then your own extraction. Cheapest per page. You then write the code that splits the text into sections, recognises employers and titles, and normalises dates like "Mar 2021 to present" into something a database can sort. That code is the actual resume parser, and it is yours to build and maintain.
  2. Queries. AWS describes Queries as letting you "specify the information you need from a document (e.g., "What is the customer name?") and receive that data". That fits single values well: the candidate's name, email, phone number. A work history is harder to ask for that way, because each question returns an answer and you do not know in advance how many roles a CV holds.
  3. Detect Document Text, then a language model. Common in 2026, and a reasonable design. It adds a second bill per document and a prompt, a schema and validation to own. Our ChatGPT resume parser article walks through what that build involves.

Scanned CVs are handled well on Textract's side, since OCR is the core of every API on the page. If scans are your main problem, our OCR resume parser article covers the options in more depth.

How that compares to a resume-specific API

Our plans are published on the docs page: Basic is $0 for 100 parses a month as a hard cap, Pro has no monthly fee and bills $0.05 a parse, Ultra is $29 a month for 1,000 parses with $0.045 overage, and Mega is $99 a month for 5,000 parses with $0.018 overage. A parse is a whole document, whatever its page count, and it returns typed resume JSON: work history with employers, titles and dates, education, skills, languages and contact details, against a fixed field reference. Scanned PDFs and photos of a page go through the same endpoint.

Amazon TextractResumeJSON
Billed perPage, per featureDocument
Two-page CV, text only$0.003not offered
Two-page CV, fields$0.03 to $0.14, plus your extraction$0.0198 to $0.05
What comes backLines, words, key-value pairs, tables, query answersResume JSON: roles, education, skills, contacts
Free allowance3 months, new AWS accounts100 parses a month, no time limit
Documents it handlesAny: forms, invoices, IDs, mortgage filesCVs and resumes only
Volume discountAfter a million pages a monthMonthly plans with included parses

The per-CV field cost on our side is the effective rate across plans: about $0.0198 a parse on Mega's included 5,000 and $0.05 on Pro. You can try a parse without an account on the free resume parser.

Who should stay with Textract

Textract is the better fit for a lot of teams, and it is worth being plain about which:

When a resume API costs less

The comparison tips the other way when CVs are the only document type and you need fields rather than text. Then the real cost of the Textract route is the page rate plus the extraction code, plus the second bill if that code calls a language model, plus the time it takes to keep dates, current roles and multi-column layouts right. A per-document price that already includes the fields replaces all of that with one line on the bill, so compare it against the whole route rather than against the page rate.

The same reasoning applies to other general document parsers. Our LlamaParse pricing article runs the same arithmetic for a credit-based parser, and bulk resume parsing covers running a backlog of CVs through any of them.

How to switch from Textract for CVs

If you are moving resume traffic off Textract and keeping it for everything else:

  1. Route by document type. Send CV uploads to the resume endpoint and leave every other document on Textract. Nothing about your other pipelines changes.
  2. Send the file as it is. Our API takes the PDF, DOCX or image bytes directly in one request and answers with the JSON.
  3. Map our fields onto your schema once. The field reference lists every field and its type. Your extraction code for CVs can then be retired rather than maintained.
  4. Run both on a sample first. Parse the same fifty CVs both ways and compare what your product actually uses. The Basic plan's 100 free parses a month covers that test.

Whichever way you go, price the route you will actually run in production, fields included, rather than the cheapest line on the rate card.

All articles