How do we evaluate OCR without trusting one score?

By Wei Jie Chee · 12 Mar 2026, 00:00 Z

Download printable cheat-sheet (CC-BY 4.0)
Evidence auditorInspect the method and where public scores stop helping.

A useful OCR evaluation combines corpus structure, deterministic checks, visual audit, failure classes, and explicit routing consequences.

Do this first

Check whether the corpus, failure classes, and review method resemble the decision you need to make before using any score.

Keep this boundary in view

The corpus is domain-specific and its review process does not create universal ground truth for every document type.

Inspect the evidence and what would change the conclusion
Evidence layer
Original scan-heavy comparison
Observed
March 2026
Sample
31 PDFs, 1,331 pages, five OCR stacks

What supports it

The original pilot compared five OCR stacks across 31 scan-heavy chemistry PDFs containing 1,331 pages.

Change our mind if

A simpler evaluation predicts the same consequential failures and routing decisions across independent corpora with less review effort.

Claim OCR-METHOD-31PDF-V1 / v1, checked 6 Aug 2026

This post answers a methodology question: how do you benchmark OCR on scan-heavy PDFs without fooling yourself with one headline score.

Use this article for the method, the evidence, and the limits. If you only need the current deployment answer, use the workflow-fit guide: https://instavar.com/research/ocr/choose-an-ocr-model-by-workflow.

The short version

  • We ran an original 31-PDF, 1331-page scan-heavy pilot across GLM-OCR, dots.ocr-1.5, MonkeyOCR, PaddleOCR PP-StructureV3, and FireRed-OCR.
  • The important result was not a universal winner. It was a routing rule by page type.
  • The result changed when the FireRed-OCR wrapper was patched to handle near-blank pages and preserve page images.
  • The later public OCR story moved on to include Hunyuan and DeepSeek; this post remains the method and evidence record for the original pilot.
Update (Mar 2026):
The newer workflow-boundary comparison now includes Hunyuan and DeepSeek alongside GLM and FireRed.
At that newer workflow boundary, Hunyuan is the strongest grounded workflow, DeepSeek is the second grounded workflow and the strongest blank-page detector, FireRed remains the best balanced workflow, and GLM remains the fastest typical workflow.
Use the updated market-map and workflow-fit posts for the current shortlist and deployment answer: https://instavar.com/research/ocr/open-document-ocr-models
https://instavar.com/research/ocr/choose-an-ocr-model-by-workflow

Trust basis: this was run self-hosted on a single RTX 3090 Ti 24 GB box, the raw outputs were kept, the harness was versioned as it changed, and every page in the corpus was reviewed at contact-sheet scale before the disputed pages were checked again at higher zoom.

Quick definitions:

  • Corpus means the set of PDFs and pages we tested.
  • Artifact score means a cleanup-cost score for obvious OCR damage, such as repeated lines or spaced-out words.
  • Visual audit means a human checked page images next to OCR output, instead of trusting the metric alone.
  • Routing means choosing the model by page type, not using one model everywhere.

Local test / OCR-METHOD-31PDF-V1

Test this claim on your documents.

Copy a read-only experiment brief that asks your coding agent to preserve raw evidence, test a negative case, and return a verdict that can disagree with this page.

Follow OCR research via RSS

Preview the experiment brief
Use Codex to test this bounded OCR claim in my local environment.

Source: https://instavar.com/research/ocr/benchmarking-ocr-on-scan-heavy-pdfs
Claim ID: OCR-METHOD-31PDF-V1
Claim version: v1, checked 6 Aug 2026
Claim: A useful OCR evaluation combines corpus structure, deterministic checks, visual audit, failure classes, and explicit routing consequences.
Observed evidence: The original pilot compared five OCR stacks across 31 scan-heavy chemistry PDFs containing 1,331 pages.
Evidence layer: Original scan-heavy comparison.
Sample: 31 PDFs, 1,331 pages, five OCR stacks.
Boundary: The corpus is domain-specific and its review process does not create universal ground truth for every document type.
Potential falsifier: A simpler evaluation predicts the same consequential failures and routing decisions across independent corpora with less review effort.

Safety and privacy:
- Work read-only by default and keep all documents and outputs local.
- Do not upload documents, reveal credentials, or send document contents to an external service.
- Do not install software, download large models, start paid jobs, or change my environment without asking first.
- If the available tools cannot run the comparison safely, stop with a concrete setup plan instead of pretending the claim was tested.

Test method:
1. Inspect the available OCR workflows and record their exact versions, runtime, hardware, and configuration.
2. Help me choose a small representative sample. Include a known difficult page and a negative control with expected text or structure when available.
3. Before running anything, state the primary failure we are testing and the measurement that would expose it.
4. Preserve raw outputs. Compare text fidelity, structure, blank-page behavior, grounding correctness, runtime, and cleanup effort only where those properties can actually be measured.
5. Treat anchor count as an unverified quantity until sampled anchors are checked against the page.
6. Report the result as support, contradict, mixed, or inconclusive. Explain what observation produced that verdict.
7. Name the smallest follow-up test that could change the verdict.
What did your local test say?

Save a coarse verdict in this browser. Instavar receives no document contents through this control.