Loading...
Loading...
97 OCR models measured on 20 scanned pages that break ordinary OCR: degraded scans, scanned mathematics, tables and multi-column layouts. The hard-corpus measurement covers 141 rule tests; Quality also includes the blank-page result when available.
Fastest
Ministral 3 8B 25121.9s per page · 68.3 quality · ~6,670 pages / $1 (benchmark reference)
Fastest model among the top 10 models; Mistral Ministral 3 8B 2512, via OpenRouter
Best value
Ministral 8B 2512~7,040 pages / $1 (benchmark reference) · 69.7 quality · 2.3s
Cheapest model among the top 10 models; Ministral 8B 2512, via Mistral
One row per model, ordered by quality score. Each model uses its highest-scoring offering; the provider shown is where that result was measured.
97 ranked models · click a column to sort
| Rank | Model | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| 1 | Mistral OCR 4.1 via Mistral | 84.0±6.3 | 69 | 80 | 92 | 95 | — | 200 pages / $1$0.005/page | 100 |
| 2 | Datalab Convert (accurate) via Datalab | 77.2±7.1 | 54 | 73 | 92 | 91 | 25.9s | 100 pages / $1$0.01/page | 100 |
| 3 | Ministral 8B 2512 via Mistral | 69.7±7.7 | 62 | 67 | 84 | 67 | 2.3s | ~7,040 pages / $1$0.000142/page · Benchmark reference | 100 |
| 4 | Ministral 3 8B 2512 Mistral · via OpenRouter | 68.3±7.8 | 62 | 61 | 84 | 67 | 1.9s | ~6,670 pages / $1$0.00015/page · Benchmark reference | 100 |
| 5 | Claude Opus 4.5 Anthropic · via OpenRouter | 67.5±7.5 | 58 | 78 | 72 | 62 | 5.6s | ~46.1 pages / $1~$0.0217 per standard page | 100 |
| 6 | Claude Opus 4.8 (Fast) Anthropic · via OpenRouter | 66.9±8.2 | 65 | 33 | 88 | 81 | 2.5s | ~27.3 pages / $1~$0.0367 per standard page | — |
| 7 | Qwen3.8 Flash Qwen · via OpenRouter | 65.5±7.7 | 69 | 77 | 40 | 76 | — | ~2,200 pages / $1~$0.000454 per standard page | 100 |
| 8 | Muse Spark 1.2 Meta · via OpenRouter | 65.5±7.8 | 73 | 70 | 48 | 71 | 7.6s | ~103 pages / $1~$0.00975 per standard page | — |
| 9 | Mistral Medium 3 Mistral · via OpenRouter | 64.9±8.0 | 62 | 59 | 72 | 67 | 3.9s | ~684 pages / $1~$0.00146 per standard page | 100 |
| 10 | GPT-5.6 Luna OpenAI · via OpenRouter | 64.8±8.1 | 73 | 52 | 48 | 86 | 4.8s | ~816 pages / $1~$0.00123 per standard page | 100 |
| 11 | Mistral Medium 3.1 Mistral · via OpenRouter | 64.6±8.1 | 73 | 51 | 68 | 67 | 2.2s | ~684 pages / $1~$0.00146 per standard page | 100 |
| 12 | Step 3.7 Flash StepFun · via OpenRouter | 63.6±8.0 | 69 | 59 | 64 | 62 | 11.9s | ~1,150 pages / $1~$0.000867 per standard page | 100 |
| 13 | Gemini 3 Flash Preview Google · via OpenRouter | 63.6±7.7 | 65 | 78 | 44 | 67 | 2.7s | ~750 pages / $1$0.001333/page · Benchmark reference | 100 |
| 14 | Claude Opus 4.6 Anthropic · via OpenRouter | 63.4±8.1 | 65 | 46 | 80 | 62 | 6.1s | ~46.1 pages / $1~$0.0217 per standard page | 100 |
| 15 | Claude Opus 4 Anthropic · via OpenRouter | 63.1±8.2 | 58 | 46 | 72 | 76 | 8.0s | ~18.3 pages / $1~$0.0547 per standard page | — |
| 16 | Gemini Flash Latest via Google | 63.0±7.7 | 69 | 78 | 52 | 52 | 6.1s | ~1,660 pages / $1$0.000601/page · Benchmark reference | 100 |
| 17 | Qwen3 VL 235B A22B Instruct Qwen · via OpenRouter | 63.0±8.2 | 69 | 45 | 52 | 86 | 4.4s | ~678 pages / $1~$0.00148 per standard page | 100 |
| 18 | Mistral Medium 2505 via Mistral | 62.1±8.0 | 62 | 61 | 64 | 62 | 3.7s | ~739 pages / $1~$0.00135 per standard page | 100 |
| 19 | Mistral Medium 2508 via Mistral | 61.9±8.2 | 77 | 46 | 72 | 52 | 2.0s | ~602 pages / $1~$0.00166 per standard page | 100 |
| 20 | Claude Sonnet 4.5 via Anthropic | 61.1±8.3 | 69 | 30 | 64 | 81 | 5.7s | ~211 pages / $1$0.004746/page · Benchmark reference | 100 |
| 21 | Llama 4 Maverick Meta · via OpenRouter | 61.0±7.4 | 69 | 74 | 60 | 81 | 4.9s | ~1,560 pages / $1~$0.00064 per standard page | 33 |
| 22 | Mistral Large 3 2512 Mistral · via OpenRouter | 58.5±8.3 | 69 | 35 | 68 | 62 | 4.6s | ~849 pages / $1~$0.00118 per standard page | 100 |
| 23 | Ministral 14B 2512 via Mistral | 57.7±8.2 | 65 | 26 | 68 | 71 | 4.9s | ~7,520 pages / $1$0.000133/page · Benchmark reference | 100 |
| 24 | MiMo-V2.5 Xiaomi · via OpenRouter | 57.3±8.2 | 58 | 54 | 56 | 62 | 13.3s | ~2,620 pages / $1~$0.000381 per standard page | 100 |
| 25 | Gemini 3.5 Flash-Lite Google · via OpenRouter | 56.9±8.2 | 69 | 57 | 16 | 86 | 1.7s | ~504 pages / $1~$0.00198 per standard page | 100 |
| 26 | Magistral Medium 2509 via Mistral | 56.6±8.2 | 65 | 16 | 64 | 81 | 1.9s | ~334 pages / $1$0.002996/page · Benchmark reference | 100 |
| 27 | Grok 4.5 xAI · via OpenRouter | 56.5±8.2 | 73 | 54 | 28 | 71 | 5.3s | ~176 pages / $1~$0.00567 per standard page | 100 |
| 28 | Gemini 3.6 Flash via Google | 56.5±8.3 | 69 | 42 | 48 | 67 | 4.1s | ~179 pages / $1~$0.00559 per standard page | 100 |
| 29 | Ministral 3B 2512 via Mistral | 56.2±8.2 | 58 | 44 | 76 | 48 | 1.7s | ~1,170 pages / $1$0.000856/page · Benchmark reference | 100 |
| 30 | Qwen3-VL 30B A3B Instruct (DeepInfra) via DeepInfra | 56.1±8.2 | 73 | 62 | 8 | 81 | 4.5s | ~2,470 pages / $1~$0.000404 per standard page | 100 |
| 31 | Mistral Medium 3.5.0 via Mistral | 55.4±8.2 | 65 | 16 | 64 | 76 | — | —Benchmark reference | — |
| 32 | MiniMax M3 MiniMax · via OpenRouter | 55.0±8.3 | 69 | 38 | 56 | 57 | 4.8s | ~940 pages / $1~$0.00106 per standard page | 100 |
| 33 | GLM 5.3 Flash Z.ai · via OpenRouter | 55.0±8.0 | 62 | 0 | 68 | 91 | — | ~1,420 pages / $1~$0.000703 per standard page | 100 |
| 34 | Ministral 3 3B 2512 Mistral · via OpenRouter | 54.5±8.3 | 58 | 41 | 72 | 48 | 1.8s | ~10,300 pages / $1$0.000097/page · Benchmark reference | 100 |
| 35 | Grok 4.3 xAI · via OpenRouter | 54.3±8.1 | 69 | 12 | 60 | 76 | 4.7s | ~318 pages / $1~$0.00314 per standard page | 100 |
| 36 | Claude Sonnet 4.6 Anthropic · via OpenRouter | 54.1±8.2 | 73 | 17 | 64 | 62 | 5.2s | ~76.9 pages / $1~$0.013 per standard page | 100 |
| 37 | GPT-5.6 Luna Pro OpenAI · via OpenRouter | 53.9±8.2 | 69 | 57 | 28 | 62 | 22.0s | ~189 pages / $1~$0.0053 per standard page | 100 |
| 38 | Llama 4 Scout Meta · via OpenRouter | 53.6±8.2 | 54 | 67 | 32 | 62 | 1.6s | ~1,370 pages / $1~$0.000731 per standard page | 100 |
| 39 | Mistral Small 2506 via Mistral | 53.6±8.1 | 65 | 16 | 76 | 57 | 1.9s | ~7,250 pages / $1$0.000138/page · Benchmark reference | 100 |
| 40 | Gemini Flash-Lite Latest via Google | 53.4±8.1 | 73 | 70 | 4 | 67 | 1.6s | ~4,930 pages / $1$0.000203/page · Benchmark reference | 100 |
| 41 | Seed-2.0-Code ByteDance Seed · via OpenRouter | 53.0±8.1 | 73 | 75 | 16 | 48 | 15.4s | ~259 pages / $1~$0.00385 per standard page | 100 |
| 42 | Magistral Small 2509 via Mistral | 52.9±8.1 | 65 | 13 | 76 | 57 | 2.0s | ~1,340 pages / $1$0.000749/page · Benchmark reference | 100 |
| 43 | Gemini 3.7 Flash Google · via OpenRouter | 51.6±8.3 | 69 | 45 | 40 | 52 | 3.8s | ~226 pages / $1~$0.00442 per standard page | 100 |
| 44 | Qwen2.5-VL 32B Instruct (DeepInfra) via DeepInfra | 51.5±8.2 | 62 | 58 | 20 | 67 | 5.2s | ~467 pages / $1$0.00214/page | 100 |
| 45 | Claude Fable 5 Anthropic · via OpenRouter | 50.8±7.9 | 69 | 0 | 72 | 62 | 6.8s | ~27.3 pages / $1~$0.0367 per standard page | — |
| 46 | Claude Sonnet 4 Anthropic · via OpenRouter | 49.5±8.0 | 69 | 16 | 32 | 81 | 3.8s | ~76.9 pages / $1~$0.013 per standard page | 100 |
| 47 | Muse Glimmer 30B Meta · via OpenRouter | 49.1±8.1 | 77 | 28 | 16 | 76 | 7.6s | ~754 pages / $1~$0.00133 per standard page | 100 |
| 48 | Claude Sonnet 5 Anthropic · via OpenRouter | 47.4±7.7 | 69 | 0 | 44 | 76 | 4.6s | ~136 pages / $1~$0.00733 per standard page | 100 |
| 49 | Qwen3.8 27B Qwen · via OpenRouter | 47.3±8.0 | 69 | 17 | 36 | 67 | 5.2s | ~455 pages / $1~$0.0022 per standard page | 100 |
| 50 | Claude Opus 5 (Fast) via OpenRouter | 46.0±7.7 | 65 | 0 | 52 | 67 | 3.8s | ~27.3 pages / $1~$0.0367 per standard page | — |
| 51 | Gemini 3.1 Flash Lite via Google | 45.6±8.3 | 65 | 28 | 64 | 86 | 1.2s | ~821 pages / $1~$0.00122 per standard page | 0 |
| 52 | Claude Opus 5 via OpenRouter | 45.5±7.7 | 65 | 3 | 52 | 62 | 5.0s | ~45.2 pages / $1~$0.0221 per standard page | 100 |
| 53 | Gemini 3.1 Flash Lite Preview via Google | 45.5±8.2 | 69 | 42 | 64 | 67 | 1.1s | ~845 pages / $1~$0.00118 per standard page | 0 |
| 54 | Grok Build 0.1 xAI · via OpenRouter | 45.1±7.6 | 77 | 0 | 32 | 71 | 32.7s | ~89.5 pages / $1~$0.0112 per standard page | 100 |
| 55 | Gemini 3.5 Flash Google · via OpenRouter | 44.2±8.0 | 73 | 22 | 44 | 38 | 5.9s | ~59.6 pages / $1~$0.0168 per standard page | — |
| 56 | Qwen3.6 35B A3B Qwen · via OpenRouter | 43.8±8.1 | 69 | 39 | 0 | 67 | 6.4s | ~1,170 pages / $1~$0.000852 per standard page | 100 |
| 57 | GPT-4.1 Nano OpenAI · via OpenRouter | 43.5±7.9 | 58 | 22 | 28 | 67 | 2.3s | ~3,040 pages / $1~$0.000329 per standard page | 100 |
| 58 | Nex-N2-Mini Nex AGI · via OpenRouter | 43.1±8.0 | 73 | 25 | 8 | 67 | 2.3s | ~8,640 pages / $1~$0.000116 per standard page | — |
| 59 | Gemini 3.1 Flash Image Preview (Gemini 3.1 Flash Image Preview) Google · via OpenRouter | 42.8±8.3 | 73 | 38 | 48 | 52 | 1.8s | ~1,140 pages / $1$0.000878/page · Benchmark reference | 33 |
| 60 | Claude Haiku 4.5 Anthropic · via OpenRouter | 42.6±7.9 | 69 | 22 | 32 | 48 | 3.4s | ~274 pages / $1~$0.00365 per standard page | 100 |
| 61 | o4 Mini via OpenAI | 41.7±7.4 | 73 | 0 | 8 | 86 | 11.7s | ~72.1 pages / $1~$0.0139 per standard page | — |
| 62 | Nova 2 Lite Amazon · via OpenRouter | 41.6±7.8 | 69 | 16 | 48 | 33 | 2.0s | ~580 pages / $1~$0.00172 per standard page | 100 |
| 63 | Perceptron Mk1 Perceptron · via OpenRouter | 41.1±7.4 | 62 | 1 | 16 | 86 | 13.6s | ~982 pages / $1~$0.00102 per standard page | 100 |
| 64 | Mistral Large 2512 via Mistral | 40.5±8.2 | 73 | 25 | 72 | 52 | 4.3s | ~376 pages / $1$0.00266/page · Benchmark reference | 0 |
| 65 | Nova Lite 1.0 Amazon · via OpenRouter | 40.1±7.4 | 65 | 0 | 52 | 43 | 2.2s | ~4,260 pages / $1~$0.000235 per standard page | 100 |
| 66 | Qwen3.6 27B Qwen · via OpenRouter | 40.0±8.1 | 69 | 35 | 0 | 76 | 10.4s | ~365 pages / $1~$0.00274 per standard page | 67 |
| 67 | Qwen3.6 Flash Qwen · via OpenRouter | 39.0±8.2 | 73 | 42 | 0 | 81 | 15.4s | ~1,270 pages / $1~$0.000789 per standard page | 33 |
| 68 | Anthropic Claude Haiku Latest via OpenRouter | 37.9±7.7 | 69 | 19 | 16 | 48 | — | ~231 pages / $1~$0.00433 per standard page | 100 |
| 69 | GPT-5.6 Terra Pro OpenAI · via OpenRouter | 37.6±7.5 | 69 | 15 | 0 | 67 | 14.2s | ~50.7 pages / $1~$0.0197 per standard page | — |
| 70 | Sonar Pro Perplexity · via OpenRouter | 37.1±7.6 | 69 | 17 | 0 | 62 | 3.1s | ~91.9 pages / $1~$0.0109 per standard page | 100 |
| 71 | GPT 4o (2024-11-20) via OpenAI | 36.3±7.5 | 77 | 16 | 0 | 52 | 1.8s | ~263 pages / $1$0.003798/page · Benchmark reference | 100 |
| 72 | GPT-5.6 Sol OpenAI · via OpenRouter | 36.1±7.1 | 73 | 0 | 0 | 71 | 6.4s | ~139 pages / $1~$0.00721 per standard page | 100 |
| 73 | GPT 4.1 (2025-04-14) via OpenAI | 36.1±7.3 | 65 | 6 | 16 | 57 | 1.6s | ~333 pages / $1$0.003006/page · Benchmark reference | 100 |
| 74 | Grok 4.6 SpaceXAI · via OpenRouter | 36.0±7.8 | 69 | 19 | 0 | 76 | 4.0s | ~99.4 pages / $1~$0.0101 per standard page | 67 |
| 75 | Azure Document Intelligence v4 via Azure | 35.1±7.0 | 69 | 0 | 0 | 71 | 1.4s | ~93.5 pages / $1$0.0107/page · Benchmark reference | 100 |
| 76 | GPT-5.6 Sol Pro OpenAI · via OpenRouter | 33.7±7.6 | 58 | 25 | 0 | 52 | 8.6s | ~77.3 pages / $1~$0.0129 per standard page | — |
| 77 | GPT-5.1-Codex OpenAI · via OpenRouter | 33.5±6.9 | 77 | 0 | 0 | 57 | 6.0s | ~135 pages / $1~$0.0074 per standard page | 100 |
| 78 | Sonar Perplexity · via OpenRouter | 32.8±6.8 | 69 | 0 | 0 | 62 | 2.5s | ~966 pages / $1~$0.00104 per standard page | 100 |
| 79 | Sonar Pro Search Perplexity · via OpenRouter | 32.7±7.3 | 65 | 13 | 0 | 52 | 4.2s | ~203 pages / $1$0.004935/page · Benchmark reference | — |
| 80 | GPT 4o Mini (2024-07-18) via OpenAI | 32.3±6.8 | 77 | 0 | 0 | 52 | 2.2s | ~254 pages / $1$0.003933/page · Benchmark reference | 100 |
| 81 | Document AI via Google | 32.0±6.8 | 62 | 0 | 0 | 67 | 622ms | ~100 pages / $1$0.01/page · Benchmark reference | 100 |
| 82 | OpenAI GPT Mini Latest via OpenRouter | 31.8±6.8 | 65 | 0 | 0 | 62 | — | ~313 pages / $1~$0.00319 per standard page | 100 |
| 83 | GPT-5.4 Image 2 OpenAI · via OpenRouter | 31.6±6.8 | 69 | 0 | 0 | 57 | 2.5s | ~48.2 pages / $1~$0.0207 per standard page | 100 |
| 84 | GPT 4.1 Mini (2025-04-14) via OpenAI | 31.1±7.7 | 69 | 0 | 44 | 71 | 2.4s | ~1,660 pages / $1$0.000602/page · Benchmark reference | 0 |
| 85 | Gemini 3.1 Pro Preview Custom Tools via Google | 30.4±6.7 | 69 | 0 | 0 | 52 | 27.9s | ~18.3 pages / $1~$0.0546 per standard page | — |
| 86 | o3 via OpenAI | 30.4±6.7 | 69 | 0 | 0 | 52 | 5.8s | ~54.7 pages / $1~$0.0183 per standard page | 100 |
| 87 | Gemini 2.5 Flash Google · via OpenRouter | 30.1±7.0 | 69 | 0 | 0 | 71 | 2.1s | ~974 pages / $1$0.001027/page · Benchmark reference | 67 |
| 88 | GPT-5.6 Terra OpenAI · via OpenRouter | 29.4±6.6 | 65 | 0 | 0 | 52 | 2.6s | ~118 pages / $1~$0.00851 per standard page | 100 |
| 89 | GPT-5.5 OpenAI · via OpenRouter | 29.2±6.6 | 69 | 0 | 0 | 48 | 7.6s | ~35.6 pages / $1~$0.0281 per standard page | — |
| 90 | Inkling Small Thinking Machines · via OpenRouter | 28.4±7.5 | 73 | 0 | 48 | 52 | 2.5s | ~389 pages / $1~$0.00257 per standard page | 0 |
| 91 | Claude 3 Haiku Anthropic · via OpenRouter | 27.7±6.4 | 54 | 0 | 0 | 57 | 2.7s | ~1,100 pages / $1~$0.000912 per standard page | — |
| 92 | Gemini 2.5 Pro via Google | 25.6±6.3 | 69 | 0 | 0 | 33 | 27.0s | ~25.1 pages / $1~$0.0398 per standard page | — |
| 93 | Nova Pro 1.0 Amazon · via OpenRouter | 21.1±5.9 | 65 | 0 | 0 | 19 | 2.4s | ~320 pages / $1~$0.00313 per standard page | 100 |
| 94 | AWS Textract via AWS | 19.5±5.8 | 73 | 0 | 0 | 5 | 1.2s | ~623 pages / $1$0.001605/page | 100 |
| 95 | docTR via OpenOCR (Local) | 12.8±4.8 | 46 | 0 | 0 | 5 | 1.1s | 500 pages / $1$0.002/page | 100 |
| 96 | UI-TARS 7B ByteDance · via OpenRouter | 11.5±6.4 | 58 | 10 | 4 | 14 | 3.5s | ~4,180 pages / $1~$0.000239 per standard page | 33 |
| 97 | EasyOCR via OpenOCR (Local) | 4.8±3.0 | 19 | 0 | 0 | 0 | 1.8s | 500 pages / $1$0.002/page | 100 |
Not yet run on the hard corpus. They can be used today; a score is published once the run completes.
“Latest” names follow whatever the provider currently serves, so they are not measured separately. Use the pinned release above for a ranked number.
Rank follows the unrounded quality score, highest first. Exact score matches use canonical model ID order to give every model a unique position. The corpus contains 20 scanned pages from AI2’s olmOCR-bench, scored with 141 rule tests. The quality score shows a percentage; its reported 95% confidence interval comes from the hard corpus, so nearby positions may have overlapping uncertainty. Category columns show pass rates for each page type. Speed is average end-to-end time per page through OpenOCR, including network overhead. Price shows pages per $1 and the current per-page charge; token-model prices are estimates. Speed and value recommendations are drawn from the top 10 models. When several offerings serve the same model, only the highest-scoring one is shown. Where published, separate 11-image clean-document results are available on the model evidence page. These results do not determine rank. Models measured only on the hard corpus have no reported clean score or clean-run latency. Blank page: each model is also given a blank page three times. A model that invents text loses up to 15 quality points, in proportion to how often it did. Read the full methodology → See what models hallucinated →
Clean-corpus snapshot ocr-shared-11-normalized/v2, scorer ocr-shared-11-scorer/v2, published 2026-10-05: 165 complete offering runs; 127 canonical models displayed on this page. Hard-corpus scores come from the olmocr-hard-20 corpus, version v2.