Skip to content
SPECIFICTION
Get listed

OCRmyPDF vs Surya

OCRmyPDF

ocrmypdf.readthedocs.io

Surya

github.com

Side by side

FigureOCRmyPDFSurya
Price fromFree$400/mo
Free planYesYes
Free trial——
Open source——
WindowsYes—
macOSYesYes
LinuxYesYes
APIYesYes
Self-hostedYesYes
Plans published13
Spec score · OCR software8.5 (#10)8.7 (#6)
Spec score · OCR API Software8.2 (#12)8.2 (#13)
Supported inputspdfboth
Primary platformdesktopdesktop
PurposeOCRmyPDF adds a searchable text layer to scanned PDF files while preserving the original PDF as much as possible.Surya is a 650M-parameter OCR model for text recognition, layout analysis, reading order, and table recognition.

Plans

OCRmyPDF

  • OCRmyPDFFree

OCRmyPDF pricing →

Surya

  • FreeFree
  • Team$400 a month
  • EnterprisePriced on request

Surya pricing →

In their own words

OCRmyPDF

OCRmyPDF is free software that adds searchable text to scanned PDF files while retaining the original PDF as much as possible. It uses Tesseract to recognize text in page images and produces PDF/A-2b by default, with regular PDF output available as an alternative. Image-processing options such as deskew can adjust pages to support visual quality and OCR accuracy. When a PDF already contains text, its processing modes can stop with an error, skip affected pages, redo OCR, or force OCR across all pages. OCRmyPDF can also be used as a Python library, and plugins can customize processing steps. Installation methods are documented for Linux, macOS, Windows, FreeBSD, and Docker; Paperless-ngx and Nextcloud OCR are named as third-party integrations. Results may be poor for low-quality scans or languages not specified for processing, and handwriting is not recognized. The project also notes that accuracy may trail commercial solutions. Its documentation advises processing only PDFs users trust and warns that its example Docker web service has no security measures and is not meant for public internet deployment.

Visit ocrmypdf.readthedocs.io

Surya

Surya is a 650M-parameter OCR model for extracting text and analyzing document structure. It handles layout, reading order and tables, and supports OCR in 91 languages. Surya 2 returns page content as structured blocks that can include HTML, polygons, bounding boxes, confidence values and reading order. Table recognition can provide row and column geometry; full mode can also return HTML with spanning cells and header rows. Equations found in page OCR are represented as KaTeX-compatible LaTeX within math tags. Users can work with a Python package, command-line tools or an interactive Streamlit app for images and PDFs. Layout, OCR and table recognition require an inference backend: vLLM on NVIDIA GPUs or llama.cpp on CPU and Apple Silicon, or a connection to an existing server. Surya is free and open source. The code uses Apache 2.0, while the model weights have a separate modified AI Pubs Open Rail-M license with commercial-use conditions. It is specialized for documents, not photos or natural scenes.

Visit github.com