Best Open Source OCR for English Business Documents

Aug 29, 2026 8 min read

PaddleOCR leads on English at 0.071 edit distance against Tesseract at 0.096, but only if you switch to the English-specific recognizer. Costs, licenses and the layer no open-source engine covers.

// Try it now, no signup required

PDF, JPG, PNG, BMP, HEIC, TIFF

Upload a document to extract

Free on your own files. No credit card, no signup to test.

The short answer: for English business documents, PaddleOCR is the best open-source OCR engine to start with, but only if you switch the recognizer to the English-specific model. On the independent OmniDocBench text evaluation it scores 0.071 normalized edit distance on English, against 0.096 for Tesseract and 0.26 for EasyOCR, where lower is better. For whole-page parsing including tables, PaddleOCR-VL-1.6 leads all 32 ranked systems at 96.34. Docling is the better choice when your documents are digital PDFs rather than scans, and Surya is worth testing on English specifically because it beats PaddleOCR there at 0.057.

The awkward part of that recommendation is the qualifier. PaddleOCR ships a general recognizer that most tutorials use, and PaddlePaddle's own published table puts that model at 64.70 on English against 86.38 on Chinese. There is a dedicated English model in the same repository that scores 85.25 in a 7.5 MB file. Nobody is hiding this. It is just in a collapsed section of the documentation that a five-minute quickstart never opens.

Best open source OCR for English documents, ranked

Two different questions get mixed together under "OCR", and they have different winners. One is character recognition: given a picture of text, what does it say. The other is document parsing: given a page, give me its reading order, its headings and its tables. Here is the character-recognition comparison first, from OmniDocBench's text evaluation. These are normalized edit distances, so lower is better, and we pulled them on August 29, 2026.

EngineEnglishChineseColored backgroundRotated 90 degreesLicense
Surya0.0570.1230.2350.634Apache-2.0 code, capped model weights
PaddleOCR 2.9.10.0710.0550.0850.015Apache-2.0
OpenOCR0.0700.0680.0810.038Open source
Tesseract 5.50.0960.5510.3310.117Apache-2.0
EasyOCR0.2600.3980.3880.970Apache-2.0

Read the English column and the rotation column together, because that is where the real decision lives. On clean English text, Tesseract at 0.096 is not far behind PaddleOCR at 0.071. If your input is a born-digital PDF that someone printed and scanned flat on an office multifunction device, a working Tesseract pipeline is not obviously worth replacing. The moment your input is a phone photo, a colored remittance advice or a page that arrived sideways in a fax queue, the gap becomes enormous: 0.085 against 0.331 on multi-colored backgrounds, and 0.015 against 0.117 on 90-degree rotation.

Surya deserves the top row and an asterisk. It genuinely posts the best English number in the table. It is also weak on rotated pages, at 0.634, and its weights carry a revenue-linked license rather than a plain permissive one, which for a company above the threshold turns an engineering decision into a procurement decision.

Which open source OCR handles tables and layout?

Character accuracy stops mattering the moment your document has a grid in it. An engine that reads every character correctly and puts them in the wrong column has produced a worse result than one that misreads a digit but keeps the structure. For that, the comparison is OmniDocBench's whole-page composite.

SystemSizeOverallTable TEDSBest suited to
PaddleOCR-VL-1.60.9B96.3494.76Scanned pages with tables, Apache-2.0 throughout
MinerU2.5-Pro1.2B95.7593.42Academic and technical documents
GLM-OCR0.9B95.2292.83General document parsing
olmOCR7B85.7483.00Prose-heavy corpora, text edit distance well behind the leaders
Markernot stated78.4465.77Fast Markdown conversion
Doclingnot statedNot currently scoredNot currently scoredDigital PDFs, CPU only, no GPU needed

One thing worth knowing before you quote 96.34 at a colleague: the Overall column is a composite, defined by the benchmark as one minus the text edit distance times 100, plus the table score, plus the formula score, all divided by three. It is not a character accuracy rate. It ranks systems well and it promises nothing in absolute terms. The full board, along with the finding that AWS Textract, Azure Document Intelligence and Google Document AI publish no accuracy figure and appear on no public leaderboard at all, is on our OCR accuracy comparison.

What does open source OCR actually cost to run?

Free to license, not free to run, and the numbers are smaller than most teams expect. PaddlePaddle benchmarks its models on an NVIDIA Tesla T4. AWS rents exactly one Tesla T4 as a g4dn.xlarge for $0.5260 an hour on demand in US East. Multiply the published per-module timings by that rate and PaddleOCR comes out at about $0.0333 per 1,000 pages of GPU compute on the mobile pipeline, assuming 40 recognized text lines per page. Docling, which is CPU-bound, prices out at about $0.21 per 1,000 pages against IBM's own published throughput.

EngineHardwareCompute per 1,000 pagesCompute per 1M pages
PaddleOCR, PP-OCRv5 mobile1x Tesla T4$0.0333$33
PaddleOCR, PP-OCRv5 server1x Tesla T4$0.0625$63
Docling, native backend16 vCPU, no GPU$0.2053$205
AWS, Azure or Google, plain textManaged$1.50$1,500
Azure Layout or AWS tablesManaged$10.00 to $15.00$10,000 to $15,000

A g4dn.xlarge running around the clock costs $383.98 a month, which buys about 256,000 pages of managed API at $1.50 per 1,000. So the break-even is roughly a quarter of a million pages a month, and that same box could theoretically process 11.5 million. In other words you break even at about 2 percent utilization. The honest conclusion, which cuts against every vendor including us: compute is almost never the reason to buy a document API. The arithmetic in full, including the sensitivity to how many lines are on your pages, is on our PaddleOCR cost page and in the cross-engine version at self-hosted OCR cost.

Which licenses do you actually have to clear?

This is the part that surprises people at the review stage rather than the prototype stage, because a permissive badge on a repository page does not always describe the model weights underneath it.

ProjectCodeModel weightsThe catch
PaddleOCRApache-2.0Apache-2.0None. Framework, weights and the ERNIE base model are all Apache-2.0.
TesseractApache-2.0Apache-2.0None, but it is a line recognizer with no layout model.
DoclingMITCDLA-Permissive-2.0 and Apache-2.0The Nemotron OCR engine option ships under the NVIDIA Open Model License.
Marker and SuryaApache-2.0Modified AI Pubs Open Rail-MWeights are free only for startups under $5M in funding or revenue.
MinerUApache-2.0 plus added termsApache-2.0 plus added termsA separate commercial license is required above $20M monthly revenue or 100M monthly active users.

PaddleOCR is the only one in that table where every layer carries the same standard terms, and that is a genuine advantage nobody markets. If you are building something you intend to sell, the difference between plain Apache-2.0 and Apache-2.0 with a growth clause is worth an hour of a lawyer's time now instead of a re-platform later.

Can open source OCR extract invoice fields?

No, and this is the single most common misunderstanding in the category. Every engine in this article returns text and bounding boxes. None of them returns an invoice number, a vendor name, a purchase order reference or a total. None tells you how confident it is that the number in the bottom right is the amount due rather than the sales tax. Turning coordinates into named fields is a separate piece of work, and it is the piece that takes the time.

Think of it as three layers. The recognizer reads characters. A field mapping layer decides which characters are which business value, usually per vendor template or with a model of your own. Then a workflow layer handles the values the mapping was not confident about, gets a human to look at them, and pushes the approved result into the system that needs it, whether that is a general ledger or an accounts payable approval queue. Choosing between PaddleOCR and Tesseract is a decision about layer one. The other two layers are where the months go, and they cost the same regardless of which engine won the benchmark.

How do you pick, in practice?

A short decision procedure that reflects what the tables above actually say:

  • Your documents are born-digital PDFs. Start with Docling. It reads the text layer directly, needs no GPU, and its published throughput numbers describe exactly this case.
  • Your documents are scans or photos, in English, and you have a GPU. Start with PaddleOCR, and set the recognizer to en_PP-OCRv5_mobile_rec on day one rather than after the first accuracy review.
  • Your documents have tables that matter. Test PaddleOCR-VL. A 0.9B model leading a 32-system board on table structure is not a marketing claim, it is a reproducible result.
  • You already have a Tesseract pipeline that works on clean English scans. Do not rip it out on the strength of a 0.025 edit-distance difference. Rip it out when your input mix starts including colored, rotated or photographed pages.
  • You need per-field confidence, validation and human review. No open-source engine gives you these. That is the point at which a managed product stops being a luxury.

What nobody in this comparison can tell you

Every accuracy figure PaddlePaddle publishes is measured on a private dataset. The documentation names them plainly: a "PaddleX in-house English dataset" for the English model, a "PaddleOCR in-house Chinese dataset" of 11,000 images for the Chinese ones. That is normal practice and it is disclosed, but it means the only numbers in this article you could independently reproduce are the OmniDocBench ones, and OmniDocBench is a general document benchmark, not a benchmark of your vendor's invoice template.

So the last step is not a table. Take twenty of your hardest real documents, the ones with the handwritten annotation in the margin and the table that runs across a page break, and run them through the two engines you shortlisted. An afternoon of that will tell you more than every leaderboard in this article combined, and it is the only evidence that survives contact with a production queue.

Extract your documents with DocuOCR

DocuOCR's AI OCR software turns any document into clean, structured data in seconds. No template setup required.

Start free

← Back to all articles