OCR evidence benchmark
Cross-benchmark scores, historical cohorts and documented prices.
| Model | Rank index | DPB | DrDoc | IDP | MDP | MORE | NDI | olm | OmniDoc | Pure | Real5 | Wild | $/1k pages |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TeleOCR | 99.4 TeleOCR · provisional rank Mean percentile across 3 mature core families: OmniDoc v1.6 full, PureDoc Avg₃, Wild-OmniDoc. | — | 68.0† | — | — | — | — | — | 96.9 | 78.5 | 90.7 | 88.5† | Self-hosted |
| Xiaomi-OCR-0 | 92.4 Xiaomi-OCR-0 · provisional rank Mean percentile across 2 mature core families: OmniDoc v1.6 full, Wild-OmniDoc. | — | — | — | — | — | — | — | 96.8† | — | 92.7 | 87.9† | Self-hosted |
| Nanonets OCR-3 | 87.4 Nanonets OCR-3 · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 80.2† | — | — | — | 87.4† | — | — | — | — | $10.00† |
| OvisOCR2 | 86.3 OvisOCR2 · provisional rank Mean percentile across 3 mature core families: OmniDoc v1.6 full, PureDoc Avg₃, Wild-OmniDoc. | — | 59.3† | — | — | — | — | — | 96.5 | 75.1 | 92.3 | 87.9† | Self-hosted |
| GPT-5.4 | 84.5 GPT-5.4 · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 84.4† | — | — | — | 81.0† | — | — | — | — | Token-priced |
| dots.mocr | 81.1 dots.mocr · provisional rank Mean percentile across 3 mature core families: MDP private, olmOCR, PureDoc Avg₃. | — | — | — | 82.8 | — | — | 83.9† | — | 70.4 | — | — | Self-hosted |
| Chandra 2 open | 73.0 Chandra 2 open · provisional rank Mean percentile across 3 mature core families: DocParsing DPB, MDP private, olmOCR. | 0.791† | — | — | 82.4 | — | — | 85.9† | — | — | — | — | Self-hosted |
| ABot-OCR | 71.1 ABot-OCR · provisional rank Mean percentile across 2 mature core families: OmniDoc v1.6 full, PureDoc Avg₃. | — | — | — | — | — | — | — | 93.3 | 70.4 | — | — | — |
| Gemini 3 Pro | 71.0 Gemini 3 Pro · provisional rank Mean percentile across 3 mature core families: IDP Core, olmOCR, OmniDoc v1.6 full. | — | — | 81.8† | — | — | — | 77.7† | 92.9 | — | 89.2 | — | $19.00† |
| Gemini-3.1-Pro | 70.1 Gemini-3.1-Pro · provisional rank Mean percentile across 3 mature core families: IDP Core, olmOCR, PureDoc Avg₃. | — | — | 89.6† | — | — | — | 69.8† | — | 70.4 | — | — | Token-priced |
| MonkeyOCRv2-B-Parsing | 68.7 MonkeyOCRv2-B-Parsing · provisional rank Mean percentile across 2 mature core families: MDP private, PureDoc Avg₃. | — | — | — | 84.7 | — | — | — | — | 64.9 | 89.2 | — | Self-hosted |
| Qwen3.5-9B | 67.6 Qwen3.5-9B · provisional rank Mean percentile across 3 mature core families: IDP Core, olmOCR, PureDoc Avg₃. | — | — | 76.2† | — | — | — | 77.2† | — | 70.9 | — | — | Self-hosted |
| Youtu-Parsing | 67.3 Youtu-Parsing · provisional rank Mean percentile across 2 mature core families: OmniDoc v1.6 full, PureDoc Avg₃. | — | — | — | — | — | — | — | 93.7 | 68.3 | — | — | — |
| PaddleOCR-VL-1.6 | 67.0 PaddleOCR-VL-1.6 · provisional rank Mean percentile across 4 mature core families: MDP private, OmniDoc v1.6 full, PureDoc Avg₃, Wild-OmniDoc. | — | 55.1† | — | 83.0 | — | — | — | 96.3 | 59.3 | 93.2 | 87.4† | Self-hosted |
| Qwen3-VL-Plus | 66.9 Qwen3-VL-Plus · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 79.8† | — | — | — | 77.9† | — | — | — | — | Self-hosted |
| Jina-OCR-v1 | 66.7 Jina-OCR-v1 · provisional rank Mean percentile across 2 mature core families: olmOCR, OmniDoc v1.6 full. | — | — | — | — | — | — | 83.4† | 91.1† | — | — | — | Self-hosted |
| MinerU2.5-Pro | 66.4 MinerU2.5-Pro · provisional rank Mean percentile across 4 mature core families: MDP private, OmniDoc v1.6 full, PureDoc Avg₃, Wild-OmniDoc. | — | 62.3† | — | 74.3 | — | — | — | 95.8 | 70.1 | 88.9 | 87.3† | Self-hosted |
| Claude Opus 4.6 | 64.2 Claude Opus 4.6 · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 81.1† | — | — | — | 74.1† | — | — | — | — | $40.75† |
| Claude-Sonnet-4.6 | 63.8 Claude-Sonnet-4.6 · provisional rank Mean percentile across 3 mature core families: IDP Core, MDP private, olmOCR. | — | — | 81.2† | 77.6 | — | — | 73.9† | — | — | — | — | $24.45† |
| Gemini 3 Flash | 61.4 Gemini 3 Flash · provisional rank Mean percentile across 3 mature core families: IDP Core, olmOCR, OmniDoc v1.6 full. | — | — | 80.5† | — | — | — | 75.3† | 92.6 | — | — | — | — |
| Qwen3.5-4B | 58.0 Qwen3.5-4B · provisional rank Mean percentile across 3 mature core families: IDP Core, olmOCR, PureDoc Avg₃. | — | — | 74.5† | — | — | — | 75.4† | — | 69.8 | — | — | Self-hosted |
| Qwen3-VL-235B | 55.8 Qwen3-VL-235B · provisional rank Mean percentile across 3 mature core families: IDP Core, olmOCR, OmniDoc v1.6 full. | — | — | 80.0† | — | — | — | 76.8† | 89.8 | — | 88.9 | — | Self-hosted |
| FireRed-OCR | 54.8 FireRed-OCR · provisional rank Mean percentile across 2 mature core families: OmniDoc v1.6 full, PureDoc Avg₃. | — | — | — | — | — | — | — | 93.3 | 65.6 | — | — | — |
| GPT-5.2 | 52.7 GPT-5.2 · provisional rank Mean percentile across 3 mature core families: IDP Core, olmOCR, OmniDoc v1.6 full. | — | — | 77.4† | — | — | — | 79.1† | 86.6 | — | 78.7 | — | $21.35† |
| dots.ocr | 51.2 dots.ocr · provisional rank Mean percentile across 6 mature core families: MDP private, MORE multilingual, olmOCR, OmniDoc v1.6 full, PureDoc Avg₃, Wild-OmniDoc. | — | — | — | 79.7 | 84.3† | — | 79.1† | 90.8 | 64.5 | 86.4 | 81.8† | Self-hosted |
| Nanonets-OCR2 | 51.0 Nanonets-OCR2 · provisional rank Mean percentile across 3 mature core families: IDP Core, olmOCR, PureDoc Avg₃. | — | — | 73.8† | — | — | — | 82.0† | — | 58.4 | — | — | — |
| Logics-Parsing-v2 | 50.6 Logics-Parsing-v2 · provisional rank Mean percentile across 3 mature core families: OmniDoc v1.6 full, PureDoc Avg₃, Wild-OmniDoc. | — | — | — | — | — | — | — | 93.3 | 72.6 | — | 77.1† | — |
| OCRVerse | 48.6 OCRVerse · provisional rank Mean percentile across 2 mature core families: OmniDoc v1.6 full, PureDoc Avg₃. | — | — | — | — | — | — | — | 88.6 | 69.4 | — | — | — |
| MinerU2.5 | 48.5 MinerU2.5 · provisional rank Mean percentile across 4 mature core families: DocParsing DPB, MORE multilingual, OmniDoc v1.6 full, PureDoc Avg₃. | 0.816† | — | — | — | 48.9† | — | — | 93.0 | 67.7 | 85.6 | — | Self-hosted |
| Unlimited-OCR | 47.2 Unlimited-OCR · provisional rank Mean percentile across 3 mature core families: MDP private, OmniDoc v1.6 full, PureDoc Avg₃. | — | — | — | 58.9 | — | — | — | 94.0 | 63.7 | — | — | — |
| HunyuanOCR-1.5 | 47.1 HunyuanOCR-1.5 · provisional rank Mean percentile across 3 mature core families: MDP private, PureDoc Avg₃, Wild-OmniDoc. | — | — | — | 81.2 | — | — | — | — | 67.6 | — | 77.6† | Self-hosted |
| Qianfan-OCR | 45.9 Qianfan-OCR · provisional rank Mean percentile across 2 mature core families: OmniDoc v1.6 full, PureDoc Avg₃. | — | — | — | — | — | — | — | 93.9 | 51.0 | — | — | — |
| Kimi K2.5 | 41.8 Kimi K2.5 · provisional rank Mean percentile across 2 mature core families: MDP private, OmniDoc v1.6 full. | — | — | — | 81.2 | — | — | — | 84.5 | — | 89.1 | — | — |
| HunyuanOCR | 41.2 HunyuanOCR · provisional rank Mean percentile across 5 mature core families: DocParsing DPB, MDP private, MORE multilingual, OmniDoc v1.6 full, PureDoc Avg₃. | 0.513† | — | — | 68.6 | 92.4† | — | — | 90.0 | 60.6 | — | — | Self-hosted |
| GPT-5-Mini | 40.3 GPT-5-Mini · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 73.3† | — | — | — | 69.9† | — | — | — | — | $3.05† |
| MonkeyOCR-pro-3B | 36.9 MonkeyOCR-pro-3B · provisional rank Mean percentile across 4 mature core families: DocParsing DPB, MDP private, OmniDoc v1.6 full, PureDoc Avg₃. | 0.826† | — | — | 53.6 | — | — | — | 88.6 | 55.4 | 79.5 | — | Self-hosted |
| GLM-OCR | 36.3 GLM-OCR · provisional rank Mean percentile across 7 mature core families: DocParsing DPB, IDP Core, MDP private, olmOCR, OmniDoc v1.6 full, PureDoc Avg₃, Wild-OmniDoc. | 0.735† | — | 54.9† | 68.8 | — | — | 68.4† | 95.2 | 63.3 | 90.3 | 85.1† | Self-hosted |
| GPT-4.1 | 35.1 GPT-4.1 · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 74.7† | — | — | — | 49.4† | — | — | — | — | $13.60† |
| Qwen3.5-2B | 34.5 Qwen3.5-2B · provisional rank Mean percentile across 3 mature core families: IDP Core, olmOCR, PureDoc Avg₃. | — | — | 67.1† | — | — | — | 71.9† | — | 62.5 | — | — | Self-hosted |
| Mistral Small 4 | 31.9 Mistral Small 4 · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 68.5† | — | — | — | 69.6† | — | — | — | — | — |
| Qwen3-VL-2B | 31.0 Qwen3-VL-2B · provisional rank Mean percentile across 2 mature core families: MORE multilingual, PureDoc Avg₃. | — | — | — | — | 83.6† | — | — | — | 62.1 | — | — | Self-hosted |
| OpenDoc-0.1B | 30.1 OpenDoc-0.1B · provisional rank Mean percentile across 2 mature core families: OmniDoc v1.6 full, PureDoc Avg₃. | — | — | — | — | — | — | — | 90.7 | 52.3 | — | — | — |
| Claude Haiku 4.5 | 29.5 Claude Haiku 4.5 · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 72.9† | — | — | — | 61.2† | — | — | — | — | $8.15† |
| Dolphin-v2 | 28.9 Dolphin-v2 · provisional rank Mean percentile across 2 mature core families: OmniDoc v1.6 full, PureDoc Avg₃. | — | — | — | — | — | — | — | 89.5 | 57.0 | — | — | Self-hosted |
| DeepSeek-OCR 2 | 28.7 DeepSeek-OCR 2 · provisional rank Mean percentile across 3 mature core families: DocParsing DPB, OmniDoc v1.6 full, PureDoc Avg₃. | 0.740† | — | — | — | — | — | — | 90.3 | 49.5 | 73.0 | — | Self-hosted |
| Nanonets-ocr2-3B | 28.1 Nanonets-ocr2-3B · provisional rank Mean percentile across 2 mature core families: MDP private, olmOCR. | — | — | — | 67.6 | — | — | 69.5† | — | — | — | — | — |
| Ministral-8B | 26.5 Ministral-8B · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 71.7† | — | — | — | 58.7† | — | — | — | — | — |
| Qwen3.5-0.8B | 22.9 Qwen3.5-0.8B · provisional rank Mean percentile across 3 mature core families: IDP Core, olmOCR, PureDoc Avg₃. | — | — | 61.2† | — | — | — | 64.8† | — | 56.0 | — | — | Self-hosted |
| DeepSeek-OCR | 21.9 DeepSeek-OCR · provisional rank Mean percentile across 4 mature core families: MDP private, MORE multilingual, olmOCR, PureDoc Avg₃. | — | — | — | 54.5 | 82.9† | — | 75.7† | — | 47.0 | 74.0 | — | Self-hosted |
| Nanonets-OCR-s | 15.7 Nanonets-OCR-s · provisional rank Mean percentile across 2 mature core families: MDP private, OmniDoc v1.6 full. | — | — | — | 66.6 | — | — | — | 83.6 | — | 84.2 | — | — |
| GPT-5-Nano | 13.5 GPT-5-Nano · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 65.8† | — | — | — | 35.2† | — | — | — | — | $0.61† |
| Llama-3.2-Vision-11B | 12.9 Llama-3.2-Vision-11B · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 58.6† | — | — | — | 49.1† | — | — | — | — | — |
| Pixtral-12B | 11.7 Pixtral-12B · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 59.0† | — | — | — | 38.3† | — | — | — | — | — |
| Gemma-4-E4B-it | 8.9 Gemma-4-E4B-it · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 55.0† | — | — | — | 47.0† | — | — | — | — | — |
| Gemma-4-E2B-it | 3.0 Gemma-4-E2B-it · provisional rank Mean percentile across 2 mature core families: IDP Core, olmOCR. | — | — | 44.1† | — | — | — | 38.2† | — | — | — | — | — |
| Chandra 2 API | Unranked | — | — | — | — | — | 0.773† | 86.7† | — | — | — | — | Service $4.00† |
| Dolphin-1.5 | Unranked | — | — | — | — | — | — | — | 86.5 | — | 61.5 | — | Self-hosted |
| GLM-5.3-Flash | Unranked | — | — | — | — | — | — | — | — | 79.7 | 90.8 | — | — |
| Kimi K2.6 | Unranked | — | — | — | — | — | — | — | — | 70.1 | 89.8 | — | — |
| MonkeyOCR-pro-1.2B | Unranked | — | — | — | — | — | — | — | — | 53.5 | 77.2 | — | Self-hosted |
| MonkeyOCRv2-S-Parsing | Unranked | — | — | — | 84.0 | — | — | — | — | — | 87.9 | — | Self-hosted |
| PP-StructureV3 | Unranked | — | — | — | 49.6 | — | — | — | — | — | 64.5 | — | — |
◊ provisional rank: hover or click for reasons · † qualified evidence / contextual price · — no comparable result. Choose All registered to find models without matched scores; hover a model name for configuration and evidence gaps. Prices retain their source date in historical views.
Page rates & workload estimates
Vendor rates, evaluated offerings and benchmark cost estimates are different bases. Compare the provider and mode as well as the number. Current service rates do not guarantee the model generation used in an older benchmark.
| Model / service | USD / 1,000 pages | Provider & mode | Basis / verified | Scope & source |
|---|---|---|---|---|
| Datalab Convert Accurate | $10 | Datalab via OpenOCR Accurate | third_party_listing 2026-10-13 | Published 2026-10-05; 20 pages and 141 rule tests, uncertainty intervals overlap. Source ↗ |
| Mistral OCR 4.1 | $2 | Mistral Batch | vendor_list 2026-10-13 | Official batch discount is 50%; $4 standard × 0.5 = $2/1,000 pages. No 90% batch discount assumed. Source ↗ |
| Mistral OCR 4.1 | $5 | Mistral Annotated | vendor_list 2026-10-13 | Annotated-page product; not the plain OCR rate. Source ↗ |
| Mistral OCR 4.1 | $5 | Mistral via OpenOCR Evaluated offering | third_party_listing 2026-10-13 | OpenOCR listed $0.005/page for its evaluated offering; does not replace official standard rate. Source ↗ |
| Datalab Convert Accurate | $10 | Datalab Accurate | vendor_list 2026-10-13 | Current accurate-mode hosted service; standalone Chandra generation not pinned. Source ↗ |
| Datalab Convert / Chandra 2.1 | $4 | Datalab Fast / balanced | vendor_list 2026-10-13 | Current Convert product rate. The combined legacy model label does not establish a pinned current model generation. Source ↗ |
| Chandra 2.1 API | $4 | Datalab Balanced | vendor_list 2026-10-13 | June 17 vendor evaluation used balanced mode; current service rate, historical generation not guaranteed. Source ↗ |
| Chandra 2 API | $4 | Datalab Balanced (current service) | vendor_list 2026-10-13 | Current Datalab Convert rate; not verified as a purchasable pinned Chandra 2 API generation. Source ↗ |
| Extend Parse | $25 | Extend Performance · PAYG | vendor_list 2026-10-13 | 2 credits/page × $0.0125/credit × 1,000. Performance mode only; a scored Light-mode run has a different rate. Source ↗ |
| Extend Parse | $6.25 | Extend Light · PAYG | vendor_list 2026-10-13 | 0.5 credits/page × $0.0125/credit × 1,000; a distinct accuracy/cost mode. Source ↗ |
| Reducto r-1 Parse | $10 | Reducto Standard | vendor_list 2026-10-13 | Base parsing; optional OCR-data and prompted-region add-ons not included. Source ↗ |
| Reducto r-1 Parse | $8 | Reducto Batch | vendor_list 2026-10-13 | 20% batch discount on the $10 standard rate. Source ↗ |
| LlamaParse Cost Effective | $3.75 | LlamaIndex v2 Cost-effective | vendor_list 2026-10-13 | 3 credits/page × $1.25/1,000 credits. Current v2 product tier; not necessarily the benchmarked historical configuration. Source ↗ |
| LlamaParse Agentic | $12.5 | LlamaIndex v2 Agentic | vendor_list 2026-10-13 | 10 credits/page × $1.25/1,000 credits. Current v2 tier; not necessarily the benchmarked historical configuration. Source ↗ |
| LlamaParse Fast | $1.25 | LlamaIndex v2 Fast | vendor_list 2026-10-13 | Base v2 tier; optional layout/form add-ons and spreadsheet page accounting not included. Source ↗ |
| LlamaParse Agentic Plus | $56.25 | LlamaIndex v2 Agentic Plus | vendor_list 2026-10-13 | Base v2 tier; optional layout/form add-ons and spreadsheet page accounting not included. Source ↗ |
| Nanonets OCR-3 | $10 | Nanonets IDP harness Published workload estimate | benchmark_estimate 2026-10-13 | Page cost published by the IDP operator; not a general provider per-page tariff or a conversion from current token prices. Source ↗ |
| GPT-5.2 | $21.35 | Nanonets IDP harness Published workload estimate | benchmark_estimate 2026-10-13 | Page cost published by the IDP operator; not a general provider per-page tariff or a conversion from current token prices. Source ↗ |
| Gemini 3 Pro | $19 | Nanonets IDP harness Published workload estimate | benchmark_estimate 2026-10-13 | Page cost published by the IDP operator; not a general provider per-page tariff or a conversion from current token prices. Source ↗ |
| Claude-Sonnet-4.6 | $24.45 | Nanonets IDP harness Published workload estimate | benchmark_estimate 2026-10-13 | Page cost published by the IDP operator; not a general provider per-page tariff or a conversion from current token prices. Source ↗ |
| Claude Opus 4.6 | $40.75 | Nanonets IDP harness Published workload estimate | benchmark_estimate 2026-10-13 | Page cost published by the IDP operator; not a general provider per-page tariff or a conversion from current token prices. Source ↗ |
| Claude Haiku 4.5 | $8.15 | Nanonets IDP harness Published workload estimate | benchmark_estimate 2026-10-13 | Page cost published by the IDP operator; not a general provider per-page tariff or a conversion from current token prices. Source ↗ |
| GPT-5-Mini | $3.05 | Nanonets IDP harness Published workload estimate | benchmark_estimate 2026-10-13 | Page cost published by the IDP operator; not a general provider per-page tariff or a conversion from current token prices. Source ↗ |
| GPT-5-Nano | $0.61 | Nanonets IDP harness Published workload estimate | benchmark_estimate 2026-10-13 | Page cost published by the IDP operator; not a general provider per-page tariff or a conversion from current token prices. Source ↗ |
| GPT-4.1 | $13.6 | Nanonets IDP harness Published workload estimate | benchmark_estimate 2026-10-13 | Page cost published by the IDP operator; not a general provider per-page tariff or a conversion from current token prices. Source ↗ |
| GPT-5.6 Luna | $1.23 | OpenRouter via OpenOCR Benchmark standard-page estimate | benchmark_estimate 2026-10-13 | OpenOCR workload estimate; provider and offering differ from IDP. Source ↗ |
| Claude Opus 4.6 | $21.7 | OpenRouter via OpenOCR Benchmark standard-page estimate | benchmark_estimate 2026-10-13 | OpenOCR workload estimate; provider and offering differ from IDP. Source ↗ |
| Qwen3-VL-235B | $1.48 | OpenRouter via OpenOCR Benchmark standard-page estimate | benchmark_estimate 2026-10-13 | OpenOCR workload estimate; provider and offering differ from IDP. Source ↗ |
| Gemini 3.6 Flash | $5.59 | Google via OpenOCR Benchmark standard-page estimate | benchmark_estimate 2026-10-13 | OpenOCR workload estimate; provider and offering differ from IDP. Source ↗ |
| Claude-Sonnet-4.6 | $13 | OpenRouter via OpenOCR Benchmark standard-page estimate | benchmark_estimate 2026-10-13 | OpenOCR workload estimate; provider and offering differ from IDP. Source ↗ |
| Mistral OCR 4.1 | $4 | Mistral Standard | vendor_list 2026-10-13 | Pinned OCR 4.1 standard page rate; batch and annotations are separate modes. Source ↗ |
| Amazon Textract (unversioned service) | $1.5 | Amazon Web Services DetectDocumentText · US West (Oregon) · first 1M pages/month | vendor_list 2026-10-13 | OCR-only published per-page example $0.0015 × 1000. Free tier not assumed; forms, tables, queries and other features cost extra. Source ↗ |
| Amazon Textract (unversioned service) | $0.6 | Amazon Web Services DetectDocumentText · US West (Oregon) · pages above 1M/month | vendor_list 2026-10-13 | Marginal OCR-only tier $0.0006/page; not a blended first-million price. Source ↗ |
| Google Document AI Enterprise OCR (unversioned service) | $1.5 | Google Cloud Enterprise OCR · on demand · standard volume | vendor_list 2026-10-13 | Standard on-demand $1.50/1000 pages below 5M monthly tier; excludes add-ons, parser charges, free allowance and commitment discounts. Source ↗ |
| Google Document AI Enterprise OCR (unversioned service) | $0.6 | Google Cloud Enterprise OCR · on demand · volume above 5M/month | vendor_list 2026-10-13 | Marginal high-volume tier $0.60/1000 pages, not applied to standard volume; no commitment discount assumed. Source ↗ |
| Mathpix OCR API (unversioned service) | $5 | Mathpix v3/pdf document pages · up to 1M/month | vendor_list 2026-10-13 | Published $0.005/page × 1000; excludes one-time $19.99 activation fee. Image/stroke rates are different units. Source ↗ |
| Mathpix OCR API (unversioned service) | $3.5 | Mathpix v3/pdf document pages · above 1M/month | vendor_list 2026-10-13 | Marginal $0.0035/page × 1000; not the standard-volume tier. Source ↗ |
| Mathpix OCR API (unversioned service) | $1.5 | Mathpix Files API asynchronous pages · up to 30M/month | vendor_list 2026-10-13 | Published $0.0015/page × 1000; asynchronous service, shared monthly page allotment with v3/pdf. Excludes activation fee. Source ↗ |
| Mathpix OCR API (unversioned service) | $1 | Mathpix Files API asynchronous pages · above 30M/month | vendor_list 2026-10-13 | Marginal $0.001/page × 1000; not a blended low-volume price. Excludes activation fee. Source ↗ |
API token rates
USD per million tokens. These rates are never converted into an assumed page cost. Input images, page size, reasoning, output length, caching and service tier affect the bill.
| Model | Input / 1M | Cached input / 1M | Output / 1M | Provider & mode | Scope & source |
|---|---|---|---|---|---|
| GPT-6 Astra (low) | $10 | $1 | $50 | OpenAI Standard · 2026-10-13 | Standard direct API. Tool fees and regional surcharges are additional. Above 272k input tokens: input 2×, output 1.5×. Low reasoning setting shares the base model token tariff; actual output usage varies. gpt-6-astra ↗ |
| GPT-5.6 Sol | $4 | $0.4 | $20 | OpenAI Standard · 2026-10-13 | Standard direct API. Tool fees and regional surcharges are additional. Above 272k input tokens: input 2×, output 1.5×. Promotional rate available at least through November 21, 2026. gpt-5.6-sol ↗ |
| GPT-5.6 Terra | $2 | $0.2 | $12 | OpenAI Standard · 2026-10-13 | Standard direct API. Tool fees and regional surcharges are additional. Above 272k input tokens: input 2×, output 1.5×. gpt-5.6-terra ↗ |
| GPT-5.6 Luna | $0.2 | $0.02 | $1.2 | OpenAI Standard · 2026-10-13 | Standard direct API. Tool fees and regional surcharges are additional. Above 272k input tokens: input 2×, output 1.5×. gpt-5.6-luna ↗ |
| GPT-5.4 | $2.5 | $0.25 | $15 | OpenAI Standard · 2026-10-13 | Standard direct API. Tool fees and regional surcharges are additional. Above 272k input tokens: input 2×, output 1.5×. gpt-5.4 ↗ |
| GPT-5.2 | $1.75 | $0.175 | $14 | OpenAI Standard · 2026-10-13 | Standard direct API. Tool fees and regional surcharges are additional. gpt-5.2 ↗ |
| GPT-5-Mini | $0.25 | $0.025 | $2 | OpenAI Standard · 2026-10-13 | Standard direct API. Tool fees and regional surcharges are additional. Provider model page marks this generation deprecated. gpt-5-mini ↗ |
| GPT-5-Nano | $0.05 | $0.005 | $0.4 | OpenAI Standard · 2026-10-13 | Standard direct API. Tool fees and regional surcharges are additional. Provider model page marks this generation deprecated. gpt-5-nano ↗ |
| GPT-4.1 | $2 | $0.5 | $8 | OpenAI Standard · 2026-10-13 | Standard direct API. Tool fees and regional surcharges are additional. Provider model page marks this generation deprecated. gpt-4.1 ↗ |
| Anthropic Opus 4.7 | $5 | $0.5 | $25 | Anthropic Standard · 2026-10-13 | Standard direct/global API. Batch, cache writes, regional and fast rates differ. claude-opus-4-7 ↗ |
| Claude Opus 4.6 | $5 | $0.5 | $25 | Anthropic Standard · 2026-10-13 | Standard direct/global API. Batch, cache writes, regional and fast rates differ. claude-opus-4-6 ↗ |
| Claude-Sonnet-4.6 | $3 | $0.3 | $15 | Anthropic Standard · 2026-10-13 | Standard direct/global API. Batch, cache writes, regional and fast rates differ. claude-sonnet-4-6 ↗ |
| Claude Haiku 4.5 | $1 | $0.1 | $5 | Anthropic Standard · 2026-10-13 | Standard direct/global API. Batch, cache writes, regional and fast rates differ. claude-haiku-4-5 ↗ |
| Claude Opus 5 | $5 | $0.5 | $25 | Anthropic Standard · 2026-10-13 | Standard direct/global API. Batch, cache writes, regional and fast rates differ. claude-opus-5 ↗ |
| Claude Opus 5.5 | $4 | $0.2 | $20 | Anthropic Standard · 2026-10-13 | Standard direct/global API. Batch, cache writes, regional and fast rates differ. claude-opus-5-5 ↗ |
| Claude Sonnet 5.5 | $2 | $0.1 | $10 | Anthropic Standard · 2026-10-13 | Standard direct/global API. Batch, cache writes, regional and fast rates differ. claude-sonnet-5-5 ↗ |
| Claude Fable 5.1 | $10 | $0.25 | $50 | Anthropic Standard · 2026-10-13 | Standard direct/global API. Batch, cache writes, regional and fast rates differ. claude-fable-5-1 ↗ |
| Gemini-3.1-Pro | $2 | $0.2 | $12 | Google Standard · ≤200k input · 2026-10-13 | Explicit preview endpoint; IDP label does not pin an endpoint snapshot. Output includes thinking; storage/grounding extra. gemini-3.1-pro-preview ↗ |
| Gemini-3.1-Pro | $4 | $0.4 | $18 | Google Standard · >200k input · 2026-10-13 | Long-prompt band; output includes thinking; cache storage and grounding extra. gemini-3.1-pro-preview ↗ |
Imported prices awaiting source verification
These prior observations are preserved as historical context. Their source is the imported snapshot; they are not current verified vendor offers.
| Model | USD / 1,000 pages | Imported basis | As of | Notes |
|---|---|---|---|---|
| Mistral OCR 4.1 | $4 | Official page price | 2026-09-30 | $0.40 / 1k pages in batch; $5 / 1k annotated pages. |
| Datalab Convert / Chandra 2.1 | $4 | Official page price | 2026-09-30 | $10 / 1k pages in accurate mode. |
| Extend Parse | $6.25 | Official page price | 2026-09-30 | PAYG light parse; performance mode $25 / 1k. |
| Reducto r-1 Parse | $10 | Official page price | 2026-09-30 | Batch queue $8 / 1k (20% discount). |
| Nanonets OCR-3 | $10 | IDP listing | 2026-09-30 | Public IDP Leaderboard API-price listing. |
| GPT-6 Astra (low) | $70.57 | NDI harness | 2026-09-30 | Page figure is NDI's measured/estimated benchmark configuration; token rates are current OpenAI list prices. |
| GPT-5.6 Terra | $15.51 | NDI harness | 2026-09-30 | NDI page-cost estimate plus current OpenAI API token rates. |
| GPT-5.2 | $21.35 | IDP Leaderboard | 2026-09-30 | Document-specific page cost reported by the IDP Leaderboard; current OpenAI list token rates. |
| GPT-5-Mini | $3.05 | IDP Leaderboard | 2026-09-30 | Document-specific page cost reported by the IDP Leaderboard. |
| GPT-5-Nano | $0.61 | IDP Leaderboard | 2026-09-30 | Document-specific page cost reported by the IDP Leaderboard. |
| GPT-4.1 | $13.6 | IDP Leaderboard | 2026-09-30 | Document-specific page cost reported by the IDP Leaderboard. |
| Anthropic Opus 4.7 | $71.4 | NDI harness | 2026-09-30 | NDI page-cost estimate; Anthropic list token price. |
| Claude Opus 4.6 | $40.75 | IDP Leaderboard | 2026-09-30 | Document-specific page cost reported by the IDP Leaderboard. |
| Claude-Sonnet-4.6 | $24.45 | IDP Leaderboard | 2026-09-30 | Document-specific page cost reported by the IDP Leaderboard. |
| Claude Haiku 4.5 | $8.15 | IDP Leaderboard | 2026-09-30 | Document-specific page cost reported by the IDP Leaderboard. |
| Gemini 3 Pro | $19 | IDP Leaderboard | 2026-09-30 | Included for context because the same IDP harness publishes a page-cost estimate. |
| NDI OCR (low) | $2.7 | NDI harness | 2026-09-30 | Page-cost estimate used by NDI. |
| NDI OCR (high) | $6.5 | NDI harness | 2026-09-30 | Page-cost estimate used by NDI. |
| LlamaParse Cost Effective | $3.8 | NDI harness | 2026-09-30 | Page-cost estimate used by NDI. |
| Databricks Parse (high) | $6.12 | NDI harness | 2026-09-30 | Page-cost estimate used by NDI. |
| Azure Document Intelligence | $10 | NDI harness | 2026-09-30 | NDI estimate; actual Azure rates vary by region/tier. |
| LlamaParse Agentic | $13.8 | NDI harness | 2026-09-30 | Page-cost estimate used by NDI. |
| Mistral OCR 4.1 | $4 | vendor_list | 2026-10-13 | Inherited $4 standard / $0.40 batch claim. The batch figure was not verified; current batch documentation specifies 50% off. See verified standard and batch observations. |
Self-hosted models & unknown page costs
Open weights do not mean zero processing cost. Hardware, throughput, electricity, hosting and licenses vary. We do not assign an invented page price.
Chandra 1 open · Chandra 2 open · DeepSeek-OCR · DeepSeek-OCR 2 · Docling pipeline (unversioned) · Dolphin · Dolphin-1.5 · Dolphin-v2 · dots.mocr · dots.ocr · dots.ocr-1.5 · GLM-OCR · Granite-Docling-258M · Hiro-MOSS-OCR-0.3B · HunyuanOCR · HunyuanOCR-1.5 · Jina-OCR-v1 · LightOnOCR-3-0.8B · LightOnOCR-3-1B · LightOnOCR-3-4B · MinerU 2.5.4 · MinerU-2.5-pipeline · MinerU-2.5-VLM · MinerU-Pipeline · MinerU2.5 · MinerU2.5-Pro · MinerU2-VLM · MonkeyOCR-3B · MonkeyOCR-pro-1.2B · MonkeyOCR-pro-3B · MonkeyOCRv1.5 · MonkeyOCRv2-B-Parsing · MonkeyOCRv2-S-Parsing · NVIDIA Nemotron Parse 2.0 · olmOCR · olmOCR-2-7B · olmOCR-7B · olmOCR v0.4.0 · olmOCR2 · OvisOCR2 · PaddleOCR-1.5 · PaddleOCR-VL · PaddleOCR-VL-1.5 · PaddleOCR-VL-1.6 · Qwen3.5-0.8B · Qwen3.5-122B-A10B · Qwen3.5-27B · Qwen3.5-2B · Qwen3.5-35B-A3B · Qwen3.5-397B-A17B · Qwen3.5-4B · Qwen3.5-9B · Qwen3.5-Instruct-9B · Qwen3.6-27B · Qwen3.6-35B-A3B · Qwen3.8-27B · Qwen3.8-Flash-Next · Qwen3-VL-235B · Qwen3-VL-235B-Instruct · Qwen3-VL-2B · Qwen3-VL-4B · Qwen3-VL-8B · Qwen3-VL-Instruct-8b · Qwen3-VL-Plus · SmolDocling-256M-preview · Surya OCR 2 · TeleOCR · TeleOCR / OvisOCR2 / PaddleOCR-VL · Tesseract (unversioned engine) · Xiaomi-OCR-0
Methodology, provenance & sources
Rank is an equal-weight mean of percentiles across mature core families. Maturity requires six scored models from three organizations; one variant per family contributes. Two families permit a provisional index. Three or more remove the limited-coverage qualification; other evidence reasons may still make the rank provisional. The default view requires two primary evidence families.
Comparable measured public-benchmark results can contribute regardless of operator. Author-reported, vendor/competitor, mixed and unverified evidence qualifies both the affected model and every rank using that comparison cohort. Assumptions and vendor-internal tests never contribute. Correlated variants, small-sample tests, recognition tasks and VQA stay secondary. Published conflicts are preserved and explained. Dates are model release dates; historical views use today's evidence for retrospective cohorts.
Some older records were migrated from an existing research snapshot; their source links are preserved, but they have not all been independently re-run. Missing model releases are omitted from historic cohorts until the current snapshot.
Official OmniDocBench comprehensive table — Current displayed table labelled v1.6_full; repo update log mentions v1.7.
PureDocBench leaderboard — Source-traceable clean / digital degradation / real degradation.
Official MDPBench leaderboard — Public and held-out private results; 17 languages.
Nace AI seven-benchmark aggregate — Seven-benchmark same-harness normalized aggregate; vendor operated, may overlap underlying tests.
TeleOCR public project comparison — TeleOCR team reports its comparison with competitors using Wild-OmniDoc and a limited four-model Dr.Doc run; not an independent reproduction.
olmOCR / Datalab / Nanonets published comparisons — Provenance is specified per entry; different runs and harnesses.
DocParsingBench — Community document-parsing aggregate.
Nanonets IDP benchmarking — Independent model comparisons in vendor-operated harness.
Real5-OmniDocBench — Real-world degradations of OmniDoc v1.5 pages; correlated with OmniDoc.
MORE 149-language benchmark — Multilingual real document parsing.
PolyOCR-Venus technical report — Table 8: specialized PolyOCR-2.7B MDP public results; no private score. Table 6 evaluates distinct PolyOCR-9B direct and PP-DocLayoutV3 pipeline configurations. Weights absent from reviewed release.
Xiaomi-OCR-0 technical report — Author-reported two-stage parsing with PP-DocLayoutV3; reported 0.8B excludes the layout detector. Tables 1–3: OmniDoc v1.6, Real5 (recaptured OmniDoc v1.5) and Wild; no independent reproduction.
OpenOCR 20-page hard set — Published 2026-10-05; 20 pages and 141 rule tests, uncertainty intervals overlap.
Datalab Chandra 2.1 release — 90-language and complex table scores; not comparable with public suites.
Mistral OCR pricing — OCR 4.1 standard USD 4/1,000 pages. The flattened pricing table places 0.40 under cached input, not batch; the old 0.40 batch claim is unverified. Official batch documentation specifies 50% off.
OCR research snapshot 2026-09-30 — Prior research import; not a new independent rerun. Underlying source links preserved.
IndicOCR v1.6 English subset — English subset is not v1.6_full and must not silently replace it.
Datalab hosted processor rate card — Convert fast/balanced $4 and accurate $10 per 1,000 pages; EU +25%; optional retention discount and add-ons. Current service rates do not pin a historical Chandra generation.
Extend Pay As You Go pricing — PAYG $0.0125/credit; Light Parse 0.5 credits/page, Performance Parse 2 credits/page. Scale uses a different credit rate and monthly plan.
Reducto r-1 Parse pricing — Standard r-1 Parse $10/1,000 pages; batch Parse 20% discount. Optional OCR data return and prompted regions cost extra.
LlamaParse v2 tier pricing — USD 1.25/1,000 credits; v2 Fast 1, Cost-effective 3, Agentic 10, Agentic Plus 45 credits/page. Add-ons and billable-page definitions vary.
Anthropic direct API token pricing — Standard direct/global API prices per million tokens, separate from benchmark page-cost estimates; caching, batch, fast mode and regional pricing have distinct rates.
Gemini 3.1 Pro Preview token pricing — Prices apply to gemini-3.1-pro-preview, not Gemini 3 Pro. Separate <=200k and >200k prompt bands; output includes thinking. Cache storage and grounding extra.
Xiaomi-OCR-0 release and weights — Model card news states September 30 release of technical report and weights; Apache-2.0 license. Self-hosted compute costs are not a vendor page rate.
PolyOCR-Venus release contents — Repository publishes report and evaluation code; weights, training code and complete parsing pipelines are absent. Do not use report publication as a weights release date.
Mistral OCR 4.1 version and annotated price — Version 4.1 released July 16, 2026; standard $4 and annotated $5 per 1,000 pages.
IDP Leaderboard: Nanonets OCR-3 — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: GPT-5.2 — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: Gemini 3 Pro — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: GPT-5.4 — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: Gemini 3 Flash — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: Gemini-3.1-Pro — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: Claude-Sonnet-4.6 — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: Claude Opus 4.6 — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: Claude Haiku 4.5 — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: GPT-5-Mini — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: GPT-5-Nano — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: GPT-4.1 — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
IDP Leaderboard: Qwen3-VL-235B — Nanonets-operated evaluation: IDP Core Bench v1.0 and OmniDocBench v1.5 are separate tests. Page costs, where listed, are operator benchmark estimates, not token list rates.
OpenAI gpt-6-astra API price — Direct API standard USD per million text tokens. Image tokenization and output length determine document cost; no fixed page conversion.
OpenAI gpt-5.6-sol API price — Direct API standard USD per million text tokens. Image tokenization and output length determine document cost; no fixed page conversion.
OpenAI gpt-5.6-terra API price — Direct API standard USD per million text tokens. Image tokenization and output length determine document cost; no fixed page conversion.
OpenAI gpt-5.6-luna API price — Direct API standard USD per million text tokens. Image tokenization and output length determine document cost; no fixed page conversion.
OpenAI gpt-5.4 API price — Direct API standard USD per million text tokens. Image tokenization and output length determine document cost; no fixed page conversion.
OpenAI gpt-5.2 API price — Direct API standard USD per million text tokens. Image tokenization and output length determine document cost; no fixed page conversion.
OpenAI gpt-5-mini API price — Direct API standard USD per million text tokens. Image tokenization and output length determine document cost; no fixed page conversion.
OpenAI gpt-5-nano API price — Direct API standard USD per million text tokens. Image tokenization and output length determine document cost; no fixed page conversion.
OpenAI gpt-4.1 API price — Direct API standard USD per million text tokens. Image tokenization and output length determine document cost; no fixed page conversion.
Mistral Batch Processing discount — Batch documentation states a 50% discount and supports the OCR endpoint. Applied to the verified $4 OCR 4.1 standard page rate: $2 per 1,000 pages.
Real5 maintainer-published Xiaomi evaluation, October 12 — News adds Xiaomi on October 12. Main table reports 92.73 overall, versus 95.24 in the Xiaomi paper. Exact run pipeline is not specified; preserve both source-specific observations, do not average. Real5 reuses OmniDoc v1.5 pages and is not an independent aggregate vote.
Jina-OCR-v1 technical report — Author measurements: OmniDocBench v1.6 and olmOCR-Bench; default dynamic resolution and the strict evaluation prompt. Baselines are partly copied from other publications.
Jina-OCR-v1 public release announcement — September 14 announcement explicitly releases public weights. Hub repository creation September 1 is not treated as a weights release.
LightOnOCR-3 release and evaluation tables — October 8 author release; scores use published normalization/postprocessing. ParseBench three-category and five-category means remain distinct; no independent reproduction is claimed.
LightOnOCR-3-0.8B model card — Exact public checkpoint and Apache-2.0 license; the 1B keeps the LightOnOCR-2 architecture, while 0.8B/4B use Qwen3.5.
LightOnOCR-3-1B model card — Exact public checkpoint and Apache-2.0 license; the 1B keeps the LightOnOCR-2 architecture, while 0.8B/4B use Qwen3.5.
LightOnOCR-3-4B model card — Exact public checkpoint and Apache-2.0 license; the 1B keeps the LightOnOCR-2 architecture, while 0.8B/4B use Qwen3.5.
NVIDIA Nemotron Parse 2.0 model card — August 3 public release. Author benchmark results use a five-checkpoint equal-weight soup. Dataset/protocol revisions are not fully pinned; no overall OmniDoc score is inferred from the notes subset.
Hiro-MOSS-OCR-0.3B model card — May 26 public weights. OmniDoc v1.5/v1.6 scores explicitly use ground-truth layout labels, so they are separate assisted recognition variants, never full-page rank votes.
Granite-Docling-258M model card — September 17, 2025 release. FinTabNet 150dpi table TEDS is task-specific. Full-page OCR/layout tables do not pin an exact dataset split in the card and are not assigned to a core benchmark.
SmolDocling-256M-preview model card — Official checkpoint, Apache-2.0. Exact public-weights release date not established by this audit; paper publication is not used as a weights date.
Docling official project — Pipeline catalog entry; backend and exact package/model versions must be pinned before adding a comparable score.
Amazon Textract official product — Hosted service. DetectDocumentText, forms, tables, queries and layout are separate configurations; no matched full-page public score verified in this addition.
Google Document AI Enterprise Document OCR — Hosted OCR processor; parser/add-ons and processor versions must remain distinct. No matched core score verified in this addition.
Mathpix OCR API documentation — Hosted STEM OCR service. Historical unversioned Mathpix observations do not identify the current API generation.
Tesseract official repository — Open-source OCR engine; version, traineddata, languages and page-segmentation settings must be pinned. Catalog entry has no invented full-page parsing score.
Google Document AI official pricing — On-demand Enterprise Document OCR rate bands only; OCR add-ons and parsing processors are separate charges, and commitment discounts are not assumed.
Amazon Textract official pricing — Published US West (Oregon) DetectDocumentText examples; OCR-only tier rates. Tables/forms/queries incur other charges.
Mathpix official OCR API pricing — v3/pdf document-page rates and Files API batch-page rates remain distinct. Image/stroke request prices are not converted into page prices; one-time activation fee is excluded from marginal page costs.