Skip to content
ReviewRamble

The weekly brief

AI, reviewed, in your inbox.

  • New reviews of tools, models, MCP servers and repos, with the verdict up front
  • Re-checked prices and ratings when something changes
  • New analysis pieces as they are published

Models, agents, MCP servers and the tools actually worth your time.

One email a week. Unsubscribe with the link in any brief. How we use your email

Surya OCR 2.5

Datalab's 689M-parameter document parser: layout, OCR, tables and maths as HTML, fast on one GPU, free under $5M revenue.

Reviewed by Andrew Miller · Updated

Visit Surya OCR 2.5 Open source

Our rating

4.0/5

Surya 2.5 makes a sub-1B model a credible full document parser at about 16,000 pages an hour on one H100, but its weights licence is the one to read first.

What is Surya OCR 2.5?

Surya OCR 2.5 is a 689-million-parameter vision-language model from Datalab, the company behind the Marker PDF converter, released on 29 October 2026 with version 0.23.0 of the surya-ocr package. One model handles layout analysis with reading order, full-page OCR, tables as HTML with merged cells, and inline maths as LaTeX. Text-line detection is a separate small model.

It runs through the surya-ocr package, which starts a vLLM server on NVIDIA GPUs or llama.cpp on CPUs and Apple Silicon, with an experimental MLX backend. Marker 2.1.0 uses it by default. It drops one Surya 2 feature: table row and column geometry.

The code is Apache 2.0. The weights are under a modified OpenRAIL-M licence: free for research, personal use and companies under $5M in both revenue and funding; above that a paid licence is needed, priced on request.

How much does Surya OCR 2.5 cost?

PlanPriceWhat you get
WeightsFree under $5MModified OpenRAIL-M; paid licence above the threshold
Datalab Convert API$4 per 1,000 pagesFast or balanced mode; accurate $10
Team$400/monthIncludes $400 of usage

Weights free for research, personal use and companies under $5M revenue and funding; paid licence above that (price not published). Datalab API: Convert $4 per 1,000 pages fast/balanced, $10 accurate; Team plan $400/month.

Is Surya OCR 2.5 worth it?

Surya 2.5 is a speed upgrade more than an accuracy leap, and speed is what matters at this size. Datalab measures 4.52 pages a second on one H100 at 192 DPI, against 2.72 for Surya 2 with multi-token prediction, because it writes about 1,514 tokens per page instead of 3,917. Looping, the failure mode where a page runs to the token cap, falls from 3.8% of requests to 0.1%.

Accuracy gains are modest and mostly self-reported. On Datalab's own OmniParseBench it scores 85.9 against 83.3 for Surya 2, with a published bootstrap interval; on Ai2's olmOCR-bench it moves from 82.8 to 83.7. The first outside check, the BHL OCR evaluation, placed it 12th of 26 with a character error rate of 0.0432, tied with olmOCR-2. That is respectable for 689M parameters, not a new leader.

The multilingual picture is mixed. Datalab's internal 91-language set gives 74.9% overall, barely up from 74.5%; Chinese, German and Vietnamese improved, while English fell from 94.3% to 90.3%, Russian from 77.8% to 71.7% and Bengali from 61.6% to 55.3%. Teams with Russian or South Asian documents should re-test before upgrading. Table geometry is gone: surya_table --mode simple returns an error, so pipelines that need cell coordinates must stay on Surya 2.

The licence is the real constraint. Free use stops at $5M of revenue or funding, a lower ceiling than it sounds for a funded startup, and the paid price is not published. PaddleOCR-VL and DeepSeek-OCR 2 are under Apache 2.0; Surya's advantage over them is its packaging, a pip install that spawns its own server and returns structured blocks with labels, polygons and confidence scores.

Where it earns its place

  • An ML engineer at a seed-stage legal-tech startup

    Turn 500,000 scanned contract pages a month into structured HTML

    At Datalab's 4.52 pages a second, one H100 clears that in about 31 hours of GPU time. The company is under the $5M threshold, so the weights are free; it must budget for a licence once it raises past that.

  • A researcher digitising a university library's journals

    Extract text, maths and reading order from old scientific papers

    Equations come back as KaTeX-compatible LaTeX inside the HTML, and old-scan pass rates on olmOCR-bench are only 44.3%, so very degraded pages still need a larger model or manual review.

  • An operations lead at a 40-person accounting firm

    Parse client PDFs without running GPUs

    Datalab's hosted Convert API charges $4 per 1,000 pages in fast or balanced mode, so 20,000 pages a month is about $80; its pricing page does not say which modes run Surya and which run Chandra.

Before you commit

Setup
pip install surya-ocr, then surya_ocr on an image, PDF or folder; it spawns vLLM in Docker on NVIDIA GPUs or llama-server on CPU and Apple Silicon. Use --keep_server to avoid reloading per command.
Integrations
Marker 2.1.0 uses it by default; vLLM, llama.cpp (GGUF published), experimental MLX; OpenAI-compatible server can be shared; Streamlit demo app.
Data and privacy
Code Apache 2.0; weights modified OpenRAIL-M, free for research, personal use and companies under $5M revenue and funding. Self-hosted runs send nothing to Datalab.
Cost at scale
About 16,000 pages an hour on one H100 at 192 DPI, rising to about 22,000 at 96 DPI. On an M4 Max, 0.19 pages a second. Hosted: $4 per 1,000 pages fast, $10 accurate.
Limits
Documents only, not photos or scenes; no table geometry; vLLM context must hold an image of about 8,000 tokens plus a 12,288-token page budget; surya-ocr and vLLM conflict in one Python environment.

What’s good

  • 4.52 pages a second on one H100 at 192 DPI, 1.7 times Surya 2
  • Layout, reading order, OCR, HTML tables and LaTeX maths from one 689M model
  • Runs on CPU and Apple Silicon via llama.cpp, Q8 under 4.3GB RSS
  • Looping cut from 3.8% to 0.1% of pages

What’s not

  • Weights free only under $5M revenue and funding; paid price not published
  • No table row and column geometry; Surya 2 still needed for that
  • English, Russian and Bengali scores fell on Datalab's multilingual set
  • Independent rank 12th of 26 on the BHL OCR board

Best for

Small teams and researchers who need fast self-hosted document parsing with layout and tables, and whose company sits under the licence threshold.

Surya OCR 2.5 alternatives

Surya OCR 2.5: common questions

Is Surya OCR 2.5 worth it?
Surya 2.5 makes a sub-1B model a credible full document parser at about 16,000 pages an hour on one H100, but its weights licence is the one to read first. We rate it 4.0 out of 5.
How much does Surya OCR 2.5 cost?
Weights free for research, personal use and companies under $5M revenue and funding; paid licence above that (price not published). Datalab API: Convert $4 per 1,000 pages fast/balanced, $10 accurate; Team plan $400/month.
What are the downsides of Surya OCR 2.5?
Weights free only under $5M revenue and funding; paid price not published; no table row and column geometry; Surya 2 still needed for that; english, Russian and Bengali scores fell on Datalab's multilingual set; independent rank 12th of 26 on the BHL OCR board.
Who is Surya OCR 2.5 best for?
Small teams and researchers who need fast self-hosted document parsing with layout and tables, and whose company sits under the licence threshold.
How much does Surya OCR 2.5 cost for a team or in production?
About 16,000 pages an hour on one H100 at 192 DPI, rising to about 22,000 at 96 DPI. On an M4 Max, 0.19 pages a second. Hosted: $4 per 1,000 pages fast, $10 accurate.
Is Surya OCR 2.5 safe for company data?
Code Apache 2.0; weights modified OpenRAIL-M, free for research, personal use and companies under $5M revenue and funding. Self-hosted runs send nothing to Datalab.
What are the best Surya OCR 2.5 alternatives?
The closest alternatives we have reviewed are PaddleOCR-VL-1.6 and DeepSeek-OCR 2.

Answers checked Oct 31, 2026.

Make Surya OCR 2.5? Show this rating on your siteSurya OCR 2.5 rated 4.0 out of 5 on ReviewRamble