The short answer
Short answer, prices read on 25 October 2026: a bookkeeping or accounts-payable team scanning 20,000 pages a month pays Amazon Textract $300 a month to pull tables, $200 for its invoice API, and only $30 for plain text. An open source stack (Docling, PaddleOCR or MinerU) on one Hostinger KVM 4 server costs $12.99 a month, $28.99 at renewal, whatever the page count. That avoids $271.01 a month against Textract Tables and $171.01 against the invoice APIs. For plain text it saves $1.01: below about 19,327 pages a month, managed OCR at $1.50 per 1,000 pages is the cheaper buy.
| Job | Managed price | 20,000 pages, a month | Self-hosted on KVM 4 |
|---|---|---|---|
| Plain text (OCR only) | Amazon Textract $0.0015 a page; Google Document AI and Azure Document Intelligence $1.50 per 1,000 | $30 Textract, $28.50 Google, $30 Azure | $28.99 at renewal: no saving |
| Invoices, fields to a schema | Textract Analyze Expense $0.01 a page; Azure prebuilt $10 per 1,000; Google Invoice parser $0.10 a document | $200 Textract, $200 Azure, $2,000 Google | $28.99, plus your own field mapping |
| Tables and layout | Textract Tables $0.015 a page (Layout free with it); Google Layout Parser $10 per 1,000 | $300 Textract, $200 Google | $28.99 Our pick |
| Tables and forms (key-value pairs) | Textract $0.015 + $0.05 a page; Google Form Parser and Azure custom extraction $30 per 1,000 | $1,300 Textract, $600 Google, $600 Azure | $28.99, plus your own field mapping |
Our pick means we earn a commission if you buy through our link. Hostinger is our pick for the server because it is the host we already price across our self-hosting guides; its KVM 4 plan (4 vCPU, 16 GB RAM, 200 GB NVMe) is $12.99 a month on a Black Friday promotion, paid upfront, and renews at $28.99. Our editor score for Hostinger is 1.9 out of 10, unchanged by the commission. See Hostinger VPS plans.
What the managed OCR APIs charge per page in 2026
All three clouds sell the same three jobs at three very different prices: plain text, structured output (tables, forms), and prebuilt document types such as invoices. On 25 October 2026:
| Service | Plain text | Tables or layout | Forms / key-value | Invoices |
|---|---|---|---|---|
| Amazon Textract | $0.0015 a page ($0.0006 after 1 million) | $0.015 a page | $0.05 a page | $0.01 a page (Analyze Expense) |
| Google Document AI | First 1,000 pages free, then $1.50 per 1,000 | $10 per 1,000 (Layout Parser) | $30 per 1,000 (Form Parser) | $0.10 a document of up to 10 pages |
| Azure Document Intelligence | $1.50 per 1,000 ($0.60 after 1 million) | $10 per 1,000 (prebuilt Layout) | $30 per 1,000 (custom extraction) | $10 per 1,000 (prebuilt Invoice) |
Three things in those tables change the bill more than the headline rate:
- Google bills invoices per document, not per page. Its pricing page says “1 count equals up to 10 pages in a document”, and a 1 to 10 page document costs $0.10. For one-page invoices that is $100 per 1,000 pages, ten times Textract’s $0.01 a page: $2,000 a month at 20,000 pages, or $1,000 if every invoice runs to two pages.
- Textract stacks features. AWS’s own forms-and-tables example charges each page at both rates, $0.015 plus $0.05, so asking for everything costs $0.07 a page: $1,300 a month here. Layout comes free only when you also buy Tables.
- The free tiers are small and, at AWS, temporary. Textract’s free tier “lasts for three months” for new AWS customers and covers 1,000 plain-text pages and 100 table, form or invoice pages a month. Google’s first 1,000 OCR pages are free; Azure’s free instance covers 500 pages a month.
One more reason to read the rate table and not the examples: AWS’s worked example 8 states a Signatures price of $0.0035 a page, then multiplies “$0.00035*100,000 = $350”. The arithmetic only works at $0.0035.
The open source OCR engines, checked on GitHub on 25 October 2026
| Project | Licence | Stars | Hardware the README states | The catch |
|---|---|---|---|---|
| PaddleOCR | Apache-2.0 | 91,639 | CPU supported (lists an OpenVINO CPU speedup) | Last push 2026-09-16; 100+ languages |
| Tesseract | Apache-2.0 | 77,159 | Not stated in what we read | An OCR engine, by its own description |
| MinerU | MinerU Open Source License (Apache 2.0 plus terms) | 82,437 | Yes: 2 GB RAM basic tier, 8 GB standard tier | Attribution required for online services; separate licence above $20 million monthly revenue |
| Docling | MIT (code) | 69,544 | Not stated; runs locally, including air-gapped | Each bundled model keeps its own licence |
| Marker | Apache-2.0 code, modified Open Rail-M weights | 40,631 | CPU runs its fast mode by default | Weights free only for research, personal use and startups under $5M funding or revenue |
| OCRmyPDF | MPL-2.0 | 35,142 | Not stated in what we read | Adds a searchable text layer to scanned PDFs; no extraction |
| EasyOCR | Apache-2.0 | 30,100 | Not stated in what we read | Last push 2025-12-05 |
| olmOCR | Apache-2.0 | 19,804 | No: NVIDIA GPU with 12 GB or more | Last push 2026-03-25 |
| DeepSeek-OCR | MIT (repository) | 24,060 | GPU (throughput published on an A100-40G) | Last push 2026-01-27 |
| docTR | Apache-2.0 | 6,394 | Not stated in what we read | A library for OCR tasks, not an app |
Docling is the pick for tables and layout into Markdown or JSON. It is MIT-licensed, lists “local execution capabilities for sensitive data and air-gapped environments” and OCR for scanned PDFs, and exports Markdown, HTML and lossless JSON. That is the $0.01-a-page Textract Tables job. The checks: its README says to read each bundled model’s own licence, and it states no hardware requirement, so test it on the server before you rely on it.
PaddleOCR is the pick for scans in many languages. Apache-2.0, 100+ languages, 91,639 stars, the most of any project here, and its README lists a CPU speedup with OpenVINO. Tesseract is the open source OCR engine, and OCRmyPDF adds a searchable text layer to scanned PDFs, which is the $1.50 per 1,000 job where self-hosting saves least.
MinerU is the one that publishes its server sizes. Its README lists a basic tier on ONNX that needs 2 GB of RAM with “None (CPU works)”, and a standard tier on ONNX plus llama.cpp that needs 8 GB with “CPU works, Vulkan recommended”. That 8 GB figure is why we price KVM 4 (16 GB) rather than KVM 2, which has exactly 8 GB. Its licence is Apache 2.0 with added terms: commercial use is allowed, but an online service built on it must say it uses MinerU, and a business above USD 20 million monthly revenue or 100 million monthly users needs a separate licence.
Marker and Surya carry the licence catch that matters most to a growing firm. The code is Apache-2.0, but the model weights are “free for research, personal use, and startups under $5M funding/revenue”. Above that, the README sends commercial users of the weights to Datalab’s pricing page. Surya’s README publishes 5 pages a second on an RTX 5090, a GPU number, not a VPS one.
The vision-language models are a different budget. olmOCR claims “less than $200 USD per million pages converted”, which is $0.00 a page and 7.5 times cheaper than Textract’s plain text, but it needs a recent NVIDIA GPU with at least 12 GB of GPU RAM. A CPU VPS cannot run it, so that saving needs a GPU server we have not priced here; the GPU maths is in Self-hosting an LLM against paying per token: the break-even.
The bill for 20,000 pages, line by line
Our scenario is 20,000 pages a month of one-page invoices and statements, the volume of a small bookkeeping or accounts-payable team. Managed prices scale with pages; the server line does not. The break-even column is the monthly page count at which the KVM 4 renewal price ($28.99) equals the managed bill.
| Managed option | 20,000 pages a month | Saved on KVM 4 at renewal | Break-even pages a month |
|---|---|---|---|
| Textract plain text | $30 | $1.01 | 19,327 |
| Google Enterprise Document OCR | $28.50 | minus $0.49 | 20,327 |
| Textract Analyze Expense (invoices) | $200 | $171.01 | 2,899 |
| Azure prebuilt Invoice or Layout | $200 | $171.01 | 2,899 |
| Textract Tables | $300 | $271.01 | 1,933 |
| Google Invoice parser, one-page invoices | $2,000 | $1,971.01 | 290 invoices |
| Textract Tables and Forms | $1,300 | $1,271.01 | 446 |
Against Textract Tables, the server pays for itself at 1,933 pages a month and saves $3,252.12 a year at 20,000. Against the invoice APIs it saves $2,052.12 a year. Against plain-text OCR, the saving at 20,000 pages is $1.01 a month on Textract and nothing on Google, which is why a team that only needs searchable PDFs should keep paying per page.
Two costs the server line hides. First, capacity: 20,000 pages a month is about 28 pages an hour around the clock, and none of the CPU projects publishes a CPU throughput, so time a day of your own documents on the server before you cancel anything. Second, structure: Azure says its prebuilt models “extract information to a defined schema”, and Textract’s Expense API and Google’s Invoice parser do the same job. The open source tools return text, layout and tables; turning that into vendor, date and total fields is code you write, or a workflow such as the one in What self-hosting n8n really costs.
See Hostinger VPS plans. Prices are a Black Friday promotion on 25 October 2026, paid upfront; check the renewal line before you buy.
When the managed API is still the right buy
- You only need searchable text. At $1.50 per 1,000 pages, a server only wins above about 19,327 pages a month at renewal prices.
- You need invoice fields today. The managed invoice APIs return fields to a schema; the open source route returns tables you still have to map.
- Your volume is spiky. A per-page bill is zero in a quiet month; a server is paid upfront.
- Nobody owns the server. Every self-hosted figure here excludes engineer time. If an hour a month of someone’s time costs more than the gap, pay per page.
How we checked
Every price on this page was read on the vendor’s own page in a rendered browser on 25 October 2026: the Amazon Textract, Google Cloud Document AI and Azure Document Intelligence pricing pages and Hostinger’s VPS page. Textract’s rate table is drawn by a region script that did not render, so its rates come from AWS’s own worked examples on the same page, all for US West (Oregon). Licences, stars and last-push dates come from the GitHub REST API the same day, and hardware and licence terms from each project’s README and MinerU’s LICENSE.md. All 81 facts are logged with the exact quote and evidence file. The scenario and totals are our arithmetic. We did not run these engines, so this is a price and licence check, not an accuracy test.
Questions people ask about open source OCR and Textract
Is there an open source alternative to AWS Textract?
Yes. For tables and layout, Docling (MIT) and MinerU; for multilingual scans, PaddleOCR (Apache-2.0, 91,639 GitHub stars); for plain text, Tesseract or OCRmyPDF. Marker is strong but its model weights are free only for research, personal use and startups under $5M funding or revenue. Read 25 October 2026.
How much does AWS Textract cost per page?
In US West (Oregon), per AWS’s worked examples read 25 October 2026: $0.0015 a page for plain text, $0.015 for tables, $0.05 for forms, $0.01 for invoices and receipts (Analyze Expense), for the first million pages a month.
Is PaddleOCR free for commercial use?
Its repository is released under the Apache 2.0 licence, which allows commercial use. You pay only for the server it runs on.
Is Marker free for commercial use?
The code is Apache-2.0. The model weights use a modified AI Pubs Open Rail-M licence, free for research, personal use and startups under $5M funding or revenue; above that, the README points to Datalab’s pricing page for a commercial licence.
Is MinerU free for commercial use?
Yes, under its own licence: Apache 2.0 plus terms. Online services built on it must state that they use MinerU, and a business above USD 20 million monthly revenue or 100 million monthly active users needs a separate commercial licence.
Is Google Document AI cheaper than Textract?
For plain OCR they are close: Google charges $1.50 per 1,000 pages after 1,000 free, Textract $0.0015 a page. For invoices Google is dearer when invoices are short: $0.10 a document of up to 10 pages, against Textract’s $0.01 a page. At 20,000 one-page invoices that is $2,000 against $200.
When does self-hosting OCR pay off?
On a $28.99 a month server (Hostinger KVM 4 at renewal): above 1,933 pages a month against Textract Tables, 2,899 against the invoice APIs, and about 19,327 against plain-text OCR. Engineer time is extra.
Related reading
- RAG frameworks compared, with prices and licence catches
- Self-hosting an LLM against paying per token: the break-even
- Open source alternatives to paid AI tools
- What self-hosting n8n really costs
- Whisper transcription cost: APIs against your own server
Sources
- Amazon Textract pricing (worked examples, US West Oregon), read 25 October 2026.
- Google Cloud Document AI pricing, read 25 October 2026.
- Azure Document Intelligence pricing (Central US, the page default), read 25 October 2026.
- Hostinger VPS hosting, read 25 October 2026.
- docling-project/docling README and GitHub REST API, read 25 October 2026.
- PaddlePaddle/PaddleOCR, GitHub REST API and README, read 25 October 2026.
- tesseract-ocr/tesseract, GitHub REST API, read 25 October 2026.
- opendatalab/MinerU README and LICENSE.md, read 25 October 2026.
- datalab-to/marker README (commercial usage section), read 25 October 2026.
- datalab-to/surya README, read 25 October 2026.
- allenai/olmocr README, read 25 October 2026.
- mindee/doctr, GitHub REST API, read 25 October 2026.
- deepseek-ai/DeepSeek-OCR README and GitHub REST API, read 25 October 2026.
- JaidedAI/EasyOCR, GitHub REST API, read 25 October 2026.
- ocrmypdf/OCRmyPDF, GitHub REST API, read 25 October 2026.
- Google AI Overview and AI Mode for “aws textract alternative open source”, our capture, 25 October 2026.




Comments
Sign in to join the discussion.
Login to comment