// Verified rate reference, July 22, 2026

Self Hosted OCR Cost: GPU Pricing Per 1,000 Pages vs an OCR API

The model is free. The GPU is $587.50 a month and bills every hour whether you send it a page or not. Here is the arithmetic nobody publishes: the real dollars per 1,000 pages at every volume, and the point where running your own OCR finally beats paying per page.

  • AWS GPU rates straight from the source
  • Break-even volume for every card
  • What olmOCR really costs per 1,000
  • The hidden lines not on the invoice
Upload a document, no signup

PDF, JPG, PNG, BMP, HEIC, TIFF

Upload a document to extract

Before you cost out a GPU, check what the fields look like on your own documents. Drop one in and compare the output.

SOC 2 Type II
256-bit encryption
US data handling
Fields, not just text
$587.50
a month for the cheapest OCR GPU
391,700
pages a month to break even
$58.75
per 1,000 pages at 10,000 a month
4.8x
the gap to the cheapest LLM, down from 35x
// The short answer

What self hosted OCR costs

Self hosted OCR costs whatever the GPU costs, divided by the pages you actually run through it. The cheapest sensible box on AWS, a g6.xlarge with one NVIDIA L4, is $0.8048 an hour, which is $587.50 a month running continuously. At 10,000 pages a month that is $58.75 per 1,000 pages, roughly 39 times what AWS Textract, Azure Read or Google Enterprise Document OCR charge. At 500,000 pages a month it is $1.18 per 1,000 pages, about 21 percent below them. Break-even sits at about 391,700 pages a month, and that is before anyone is paid to run the thing. The free model is not the saving; sustained volume is.

That framing matters because the number most often quoted comes from the olmOCR paper, which reports converting a million PDF pages for $176. The figure is real and it is from the project's own research paper, but it describes a fully saturated GPU fleet doing nothing else, priced at rented capacity rates well below AWS on-demand. Reprice the identical throughput at AWS on-demand H100 rates and it becomes roughly $450 per million pages. Run it on a box that sits idle most of the day and the number stops resembling either one.

// The real unit price

GPU rates and the volume each one needs to pay for itself

On-demand Linux rates in US East (N. Virginia), read from Amazon's own pricing feed on July 22, 2026. Monthly figures assume the instance runs continuously, 730 hours. The last column is the volume at which that monthly bill equals what a $1.50 per 1,000 pages cloud OCR API would have charged.

Instance GPU VRAM Per hour Per GPU-hour Per month Break-even pages a month
g6.xlarge 1x NVIDIA L4 24 GB $0.8048 $0.8048 $587.50 391,700
g5.xlarge 1x NVIDIA A10G 24 GB $1.0060 $1.0060 $734.38 489,600
g6e.xlarge 1x NVIDIA L40S 48 GB $1.8610 $1.8610 $1,358.53 905,700
g6e.12xlarge 4x NVIDIA L40S 192 GB $10.4926 $2.6232 $7,659.63 5,106,400
p4d.24xlarge 8x NVIDIA A100 320 GB $21.9576 $2.7447 $16,028.58 10,685,700
p5.4xlarge 1x NVIDIA H100 80 GB $6.8800 $6.8800 $5,022.40 3,348,300
p5.48xlarge 8x NVIDIA H100 640 GB $55.0400 $6.8800 $40,179.20 26,786,100

Two things fall out of this table. The first is that the expensive cards are the wrong place to start: an H100 box has to clear 3.35 million pages a month before it saves anything, and most document workloads never get near that. The second is that VRAM is rarely the constraint. olmOCR asks for 12 GB and most 1B to 3B document models fit in 8 GB at half precision, so a 24 GB L4 runs them comfortably. The bigger cards buy throughput, and throughput only matters once volume is already high enough for the whole idea to make sense.

// The finding that decides it

The utilization cliff

A per-page API and a GPU bill in opposite directions. The API charges for work done and nothing for a quiet Tuesday. The GPU charges for time held, and a rented instance holds time continuously unless somebody builds the automation to stop and start it. Every cost comparison that ignores this produces a number that is wrong by an order of magnitude at normal volumes.

The table on the right prices one g6.xlarge at $587.50 a month against real throughput. Read it as the answer to a single question: how many pages do you genuinely process, every month, without fail? Not the peak month. Not the projection. The floor.

Worth quoting: at 10,000 pages a month, a self-hosted open model on the cheapest AWS GPU costs about $58.75 per 1,000 pages. The same pages on Textract, Azure Read or Google Enterprise Document OCR cost $15.00 total. The free model is 39 times more expensive.

Pages a month Effective per 1,000 Against a $1.50 API
10,000 $58.75 39x more than a cloud API
25,000 $23.50 15.7x more
50,000 $11.75 7.8x more
100,000 $5.88 3.9x more
250,000 $2.35 1.6x more
391,700 $1.50 break-even
500,000 $1.18 21% less
1,000,000 $0.59 61% less
// The number everybody quotes

How much does olmOCR cost per 1,000 pages?

The olmOCR paper states a million PDF pages for $176, which is $0.176 per 1,000 pages, against over $6,240 per million for GPT-4o. The project README puts it as under $200 per million. Both figures describe a saturated GPU fleet running a 7B vision model at batch, on rented capacity priced well under hyperscaler on-demand rates.

Those two published numbers imply a throughput you can work backwards to. At the roughly $2.69 per H100-hour the figure is built on, $176 per million pages is about 65 GPU-hours per million pages, or roughly 15,300 pages per H100-hour. Hold that throughput and change only the price of the hardware: AWS charges $6.88 per H100-hour on demand, so the identical work costs about $450 per million pages, or $0.45 per 1,000. Both numbers assume the fleet never sits idle.

$176

per million pages

The published olmOCR figure, on rented GPU capacity at full saturation.

$450

per million pages

The same throughput repriced at AWS on-demand H100 rates of $6.88 per GPU-hour.

$840

per million pages

GPT-5.4-nano through the OpenAI Batch API, for comparison, at list rates.

The open model advantage fell from 35x to under 5x in eighteen months

When the olmOCR paper was published, the comparison it drew was $176 per million pages against $6,240 for GPT-4o, a 35 times gap. That gap was the entire argument for building. It has since closed almost entirely from the other side: GPT-5.4-nano through the Batch API works out to about $840 per million pages, so the difference is now about 4.8 times on rented GPUs and about 1.9 times if you price the hardware at AWS on-demand. A two-times saving does not usually survive contact with an engineering salary. Anyone still citing the 35x number is quoting a market that no longer exists.

One honest gap in this page: olmOCR is the only open document model that publishes a cost figure precise enough to reverse into throughput. Pages-per-minute claims circulate for PaddleOCR-VL, dots.ocr, DeepSeek-OCR and Granite-Docling, but they come from GPU vendor benchmarks that disagree with each other and cannot be reproduced from a primary source, so there is no table of them here. If you are choosing between those models, measure throughput on your own documents on the card you intend to rent. It is a two-day exercise and it is the only number that will hold.

// Everything on one scale

Self hosted OCR against every paid option, per 1,000 pages

Cheapest first. The self-hosted rows are the same GPU at different utilization, which is why they appear at both ends of the table.

Option Billed in Per 1,000 pages What you have to build
olmOCR on rented GPUs (paper figure) GPU-hours $0.18 The whole stack, at full saturation
olmOCR at AWS on-demand H100 rates GPU-hours $0.45 The whole stack, at full saturation
GPT-5.4-nano through the Batch API Tokens $0.84 Prompting and retries
Azure AI Document Intelligence Read (commitment tier) Pages $0.45 Nothing, it is managed
Azure Content Understanding, Basic Pages $1.00 Nothing, it is managed
AWS Textract Detect Document Text Pages $1.50 Nothing, it is managed
Azure AI Document Intelligence Read Pages $1.50 Nothing, it is managed
Google Enterprise Document OCR Pages $1.50 Nothing, it is managed
GPT-5.4-nano at list price Tokens $1.67 Prompting and retries
Mistral OCR 4 Pages $4.00 Nothing, it is managed
A self-hosted L4 at 50,000 pages a month GPU-hours $11.75 The whole stack, mostly idle
DocuOCR Pages $14 to $20 Nothing, the workflow is included
A self-hosted L4 at 10,000 pages a month GPU-hours $58.75 The whole stack, almost entirely idle

Read the last column before the third. Two rows can share a price and mean entirely different things: $1.50 on Textract buys text and bounding boxes with no work attached, while $1.18 on your own L4 buys the same text plus an inference server, a retry policy, a confidence model and an on-call rotation. The cross-vendor detail behind these figures lives on the OCR pricing per 1,000 pages reference, and the language-model rows are worked out in full on the LLM OCR pricing pillar.

// Not on the invoice

Six costs the GPU bill does not show you

Idle hours

A GPU instance bills 730 hours a month whether it reads a page or not. A per-page API bills zero on a quiet week. This single difference is what moves the break-even into the hundreds of thousands of pages.

Retries and refusals

Document VLMs skip pages, loop on dense tables and occasionally refuse. Every retry is billed GPU time you already paid for and latency you now have to design around, so real throughput sits well below the benchmark figure.

No confidence scores

Cloud OCR returns a per-field confidence value you can route on. Open models return text. Building the scoring, the thresholds and the review queue that turns raw output into a trustworthy workflow is the largest hidden line item.

Running the server

Someone keeps vLLM or SGLang patched, sizes the batch, watches the queue, handles the OOM at 2am and repeats the evaluation every time a better model ships. That salary is not on the GPU invoice and usually exceeds it.

Compliance work

Self hosting removes the vendor from the data path and hands you the audit. Encryption at rest, key rotation, access logging, retention and the evidence a SOC 2 auditor asks for all become yours to produce.

The upgrade treadmill

Six credible open document models shipped in a single quarter in late 2025. Staying near the accuracy frontier means re-benchmarking, re-tuning prompts and re-validating output on a cadence that does not stop.

// The honest verdict

When running your own OCR is the right call

Build it yourself when

  • Documents legally cannot leave your network, and the decision was never really about price.
  • You process more than roughly half a million pages a month, every month, with a predictable floor.
  • The pipeline is plain page-to-text and you do not need per-field confidence, validation or review.
  • You already run GPU infrastructure and inference for something else, so the marginal cost is scheduling.
  • Latency requirements or an unusual document type rule out every managed option you have tested.

Buy it when

  • Volume is under a few hundred thousand pages a month, which covers most finance and operations teams.
  • Volume is spiky, because idle GPU hours are what destroy the self-hosted arithmetic.
  • You need structured fields with confidence scores, not a wall of text you then have to parse.
  • A person has to review low-confidence extractions, and somebody has to build that queue either way.
  • The engineering hours you would spend on inference are worth more spent on your own product.

Where DocuOCR lands on this scale is worth stating plainly. It runs about $14 to $20 per 1,000 pages depending on plan, which is more than a raw cloud OCR call and more than a saturated GPU. What that covers is everything in the right-hand column: classification, field-level extraction with confidence, validation rules, a human review queue for the pages that fail them, and export. If your comparison is against a raw text API you should expect us to cost more per page. If your comparison is against the six months it takes to build the workflow around one, the arithmetic usually goes the other way. Teams with a hard data residency requirement should look at on premise OCR software instead, where the deployment model, not the page rate, is the decision.

Frequently asked questions

How much does self hosted OCR cost?
The model is free and the GPU is not. The cheapest sensible box for a small OCR model, an AWS g6.xlarge with one NVIDIA L4, is $0.8048 an hour, which is $587.50 a month running continuously. Divide that by the pages you actually process: 50,000 pages a month works out to $11.75 per 1,000 pages, and 500,000 works out to $1.18.
Is self hosted OCR cheaper than an OCR API?
Only above roughly 391,700 pages a month. That is where a $587.50 monthly GPU bill crosses the $1.50 per 1,000 pages charged by AWS Textract, Azure Read and Google Enterprise Document OCR. Below that volume the API is cheaper, because it bills zero when you send nothing and a GPU bills 730 hours a month either way.
What is the break-even volume for running your own OCR model?
About 391,700 pages a month on a single L4 instance, 489,600 on an A10G, 905,700 on an L40S and 3.35 million on an H100. Those are the volumes at which the fixed monthly GPU bill equals what a $1.50 per 1,000 pages cloud OCR API would have charged for the same work, engineering time excluded.
How much does olmOCR cost per 1,000 pages?
The olmOCR paper states a million PDF pages for $176, which is $0.176 per 1,000 pages, on rented GPU capacity at fully saturated throughput. Priced at AWS on-demand H100 rates of $6.88 per GPU-hour instead, the same throughput comes to roughly $450 per million pages, or $0.45 per 1,000.
What GPU do you need to run an OCR model?
olmOCR asks for at least 12 GB of VRAM and supports the RTX 4090, L40S, A100 and H100. Most 1B to 3B document VLMs fit in 8 GB at FP16 and less when quantized, so a 24 GB L4 or A10G is the usual starting point. The larger cards buy throughput, not capability, which is why the cheap box is normally the right one.
Do open source OCR models save money?
They remove the license cost, not the compute cost, and compute is most of the bill. The saving is real but it arrives only at sustained high volume, and it comes with the work of running an inference server, handling retries, and building the confidence scoring and human review a managed product includes.
How does self hosted OCR compare to an LLM API in 2026?
The gap narrowed sharply. The olmOCR paper compared $176 per million pages against $6,240 per million for GPT-4o, a 35x difference. GPT-5.4-nano through the Batch API is now about $840 per million pages, so the gap is about 4.8x on rented GPUs and about 1.9x at AWS on-demand rates.
What are the hidden costs of self hosting OCR?
Idle GPU hours, retries on pages the model refuses or garbles, the engineering time to run and upgrade an inference server, and the work you now own that an API included: per-field confidence scores, validation, a review queue for low-confidence pages, and an export format. None of those appear on the GPU invoice.
Can you run OCR on your own servers for compliance reasons?
Yes, and that is usually the stronger reason to do it. When a contract, a regulator or a data residency policy says documents cannot leave your network, self hosting stops being a cost decision. In that case the right comparison is not against a public API rate but against an on-premise deployment of a document processing product.
Is a GPU cheaper than paying per page at 1 million pages a month?
Yes, if the GPU can keep up. One million pages a month on a $587.50 L4 instance is $0.59 per 1,000 pages against $1.50 from a cloud API, a 61 percent saving. That volume needs about 1,370 pages an hour sustained, so the throughput ceiling of the card, not the price, becomes the constraint.

Price the alternative before you rent a GPU

Upload a real document, look at the fields and the confidence scores, and then decide whether the pipeline is worth building. It takes about a minute.

From the same family of tools