Best open-source OCR and document parsing models
43 open-weight models that turn PDFs and scans into Markdown, HTML or JSON, ranked on the two benchmarks most labs report. Most are under 2B parameters and run on a single consumer GPU. Every score shows where it comes from. Last checked 2026-11-06.
Ranking
Sorted by OmniDocBench v1.6, then olmOCR-Bench for models that only report that. Click a column to sort. ✓ official leaderboard · no mark: reported by the lab · ° third party.
| # | Model | License | |||||
|---|---|---|---|---|---|---|---|
| 1 | OXR 1.0 SoMark | 97.03✓ | 87.8 | 1.5B | ~4.1 GB | OXR Open Source License | 2026-10-02 |
| 2 | Youtu-Parsing-Omni Tencent (Youtu) | 96.96 | — | 5.3B | ~11.7 GB | Youtu-Parsing license | 2026-10-09 |
| 3 | TeleOCR TeleAI (XingChen) | 96.91✓ | — | 1.4B | ~3.8 GB | Apache-2.0 | 2026-08-17 |
| 4 | Xiaomi-OCR-0 Xiaomi | 96.83 | — | 870M | ~2.7 GB | Apache-2.0 | 2026-09-30 |
| 5 | OvisOCR3 Alibaba (Ovis) | 96.74 | — | 850M | ~2.7 GB | Apache-2.0 | 2026-10-21 |
| 6 | OvisOCR2 Alibaba (Ovis) | 96.47✓ | — | 850M | ~2.7 GB | Apache-2.0 | 2026-07-13 |
| 7 | PaddleOCR-VL 1.6 Baidu (PaddlePaddle) | 96.34✓ | — | 960M | ~2.9 GB | Apache-2.0 | 2026-05-27 |
| 8 | MinerU2.5 Pro (2605) OpenDataLab (Shanghai AI Lab) | 95.72 | — | 1.2B | ~3.3 GB | Apache-2.0 | 2026-05-20 |
| 9 | GLM-OCR Z.ai | 95.22✓ | 75.2✓ | 1.3B | ~3.7 GB | MIT | 2026-01-30 |
| 10 | HunyuanOCR 1.5 Tencent (Hunyuan) | 94.74 | — | 1.1B | ~3.2 GB | Tencent Hunyuan Community License | 2026-07-06 |
| 11 | MiniCPM-V 4.7 35B-A3B OpenBMBgeneral | 94.24 | — | 35.2B (3B active) | ~71.4 GB | Apache-2.0 | 2026-10-07 |
| 12 | Unlimited-OCR Baidu | 94.00✓ | — | 3.3B | ~7.7 GB | MIT | 2026-06-22 |
| 13 | Infinity-Parser2 Pro INF Technology | 93.95 | 87.6 | 35.1B (3B active) | ~71.2 GB | Apache-2.0 | 2026-05-11 |
| 14 | Qianfan-OCR Baidu (Qianfan) | 93.90✓ | 79.8 | 4.7B | ~10.5 GB | Apache-2.0 | 2026-03-18 |
| 15 | Youtu-Parsing Tencent (Youtu) | 93.74✓ | — | 2.5B | ~6 GB | Youtu-Parsing license | 2026-01-23 |
| 16 | Ovis2.6 30B-A3B Alibaba (Ovis)general | 93.70✓ | — | 31.4B (3B active) | ~63.8 GB | Apache-2.0 | 2026-02-12 |
| 17 | Logics-Parsing v2 Alibaba (Logics) | 93.33✓ | — | 4.4B | ~9.9 GB | Not stated | 2026-02-13 |
| 18 | ABot-OCR acvlab | 93.30✓ | — | 2.1B | ~5.3 GB | Not stated | 2026-05-26 |
| 19 | FireRed-OCR FireRed team (Xiaohongshu) | 93.26✓ | 70.2✓ | 2.1B | ~5.3 GB | Apache-2.0 | 2026-02-28 |
| 20 | Infinity-Parser2 Flash INF Technology | 91.98 | 86.0 | 2.2B | ~5.4 GB | Apache-2.0 | 2026-05-11 |
| 21 | MonkeyOCR v2 (B) MonkeyOCR team | 91.80✓ | — | 880M | ~2.8 GB | Apache-2.0 | 2026-07-11 |
| 22 | jina-ocr-v1 Jina AI | 91.14 | 83.4 | 3.4B (570M active) | ~7.7 GB | CC-BY-NC-4.0 | 2026-09-02 |
| 23 | dots.ocr rednote (dots) | 90.77✓ | 79.1✓ | 3B | ~7.1 GB | MIT | 2025-07-30 |
| 24 | DeepSeek-OCR 2 DeepSeek | 90.25✓ | 76.3✓ | 3.4B (570M active) | ~7.8 GB | Apache-2.0 | 2026-01-27 |
| 25 | Dolphin v2 ByteDance | 89.50✓ | — | 3.8B | ~8.5 GB | Not stated | 2025-12-01 |
| 26 | OCRVerse DocTron | 88.60✓ | — | 4.8B | ~10.7 GB | Not stated | 2026-01-30 |
| 27 | MiniCPM-V 4.6 OpenBMBgeneral | 86.93 | — | 1.3B | ~3.6 GB | Apache-2.0 | 2026-04-13 |
| 28 | Dolphin 1.5 ByteDance | 86.52✓ | — | 400M | ~1.8 GB | MIT | 2025-10-17 |
| 29 | MiniCPM-V 4.7 1B OpenBMBgeneral | 85.39 | — | 1.6B | ~4.1 GB | Apache-2.0 | 2026-10-06 |
| 30 | LightOnOCR-3 4B LightOn | — | 86.3 | 4.5B | ~10.1 GB | Apache-2.0 | 2026-10-06 |
| 31 | Chandra OCR 2 Datalab | — | 85.8 | 5.3B | ~11.6 GB | OpenRAIL-M (modified) | 2026-03-16 |
| 32 | LightOnOCR-3 1B LightOn | — | 84.5 | 1B | ~3 GB | Apache-2.0 | 2026-10-07 |
| 33 | dots.mocr rednote (dots) | — | 83.9 | 3B | ~7.1 GB | MIT | 2026-03-19 |
| 34 | LightOnOCR-2 1B LightOn | — | 83.2 | 1B | ~3 GB | Apache-2.0 | 2026-01-16 |
| 35 | MiniCPM-OCR 1.0 OpenBMB | — | 82.7 | 1.3B | ~3.6 GB | Apache-2.0 | 2026-10-21 |
| 36 | Falcon OCR 1.5 TII | — | 82.4 | 270M | ~1.5 GB | Apache-2.0 | 2026-09-11 |
| 37 | olmOCR 2 Ai2 | — | 82.4 | 8.3B | ~17.6 GB | Apache-2.0 | 2025-10-06 |
| 38 | Qwen3-VL 4B Alibaba (Qwen)general | — | 79.2° | 4.4B | ~9.9 GB | Apache-2.0 | 2025-10-11 |
| 39 | DeepSeek-OCR DeepSeek | — | 75.7✓ | 3.3B (570M active) | ~7.7 GB | MIT | 2025-10-17 |
| 40 | Nanonets-OCR2 3B Nanonets | — | 69.5° | 3.8B | ~8.5 GB | Not stated | 2025-10-13 |
| 41 | Unlimited-OCR 2 Baidu | — | — | 3.3B | ~7.7 GB | MIT | 2026-10-27 |
| 42 | LightOnOCR-3 0.8B LightOn | — | — | 850M | ~2.7 GB | Apache-2.0 | 2026-10-07 |
| 43 | Granite-Docling 258M IBM | — | — | 260M | ~1.5 GB | Apache-2.0 | 2025-09-17 |
How to read this
- OmniDocBench v1.6: Full-page parsing of 1,600+ Chinese and English pages (papers, books, slides, forms, newspapers): text, tables, formulas and reading order combined into one 0-100 score.
- olmOCR-Bench: Share of 7,000+ pass/fail unit tests passed on hard English PDFs: arXiv math, old scans, tables, multi-column layouts, tiny text, headers and footers.
- Sources. Scores marked ✓ come from the benchmark's own leaderboard, where all models are scored the same way. The rest are reported by each lab on its model card or in its paper, sometimes with different settings, so treat gaps under a point as a tie.
- Memory assumes 16-bit weights, which is how these models usually run, plus about 1 GB for image processing.
- Not included: classic OCR engines without a language model (Tesseract, PP-OCRv6, Surya, Indra OCR), closed APIs (Mistral OCR, Gemini) and language-specific fine-tunes. Missing a model? Tell us.
Questions
What is the best open-source OCR model?
On OmniDocBench v1.6, the broadest document-parsing test, OXR 1.0 leads with 97.03. On olmOCR-Bench, which focuses on hard English PDFs, OXR 1.0 leads with 87.8%. The top models are within a point or two of each other, so pick by license, size and the kind of documents you have.
What is the best small OCR model?
Xiaomi-OCR-0 (870M parameters) scores 96.83 on OmniDocBench v1.6 and needs about 2.7 GB of memory. Most top document models today are under 2B parameters, so they run on almost any GPU and many laptops.
Which OCR model can I use commercially?
TeleOCR is the best-scoring model under a plain Apache 2.0 or MIT license (96.91 on OmniDocBench v1.6). Several others have custom licenses with revenue limits or non-commercial terms; each model page summarizes the license.
What is the difference between OmniDocBench and olmOCR-Bench?
OmniDocBench scores full-page parsing (text, tables, formulas and reading order) on Chinese and English documents of many types. olmOCR-Bench runs thousands of pass/fail checks on hard English PDFs such as arXiv math, old scans and dense tables. Labs usually report one or the other, so the table shows both rather than merging them.