Self-hosted OCR and document AI apps for small businesses

Short answer

We track 9 active self-hostable apps for OCR, PDF parsing and AI document processing: PaddleOCR, MinerU, Paperless-ngx, OCRmyPDF, olmOCR, Unstract, Paperless-AI, paperless-gpt, Docling Serve.

Most popular on GitHub: PaddleOCR (92.2k stars).

Run on an ordinary CPU server according to their own docs: PaddleOCR, MinerU, OCRmyPDF, Docling Serve.

Need a GPU for practical use: olmOCR (Required for local inference: a recent NVIDIA GPU with at least 12 GB of GPU RAM (tested on RTX 4090, L40S, A100, H100). Without a GPU you can point it at a remote vLLM or OpenAI-compatible server.).

Lowest official hardware: MinerU (minimum 2 GB RAM, from €11.99/month on our reference server).

Permissive license (MIT/Apache-2.0, fewest conditions): PaddleOCR, olmOCR, Paperless-AI, paperless-gpt, Docling Serve.

No official CPU/RAM figure published: PaddleOCR, Paperless-ngx, OCRmyPDF, olmOCR, Paperless-AI, paperless-gpt, Docling Serve.

Last updated · generated from the same verified data as each app page

Comparison table

Self-hosted OCR and document AI apps for small businesses
AppWhat it isGPUOfficial hardwareEst. server costLicenseGitHub stars
PaddleOCROCR toolkit and document AI engine that turns scans, images and PDFs into LLM-ready text, Markdown or JSON.Optional. The server uses a GPU by default if available, otherwise the CPU.Not publishedNot estimated (no official RAM figure)Apache-2.0 (Permissive)92.2k
MinerUDocument parser that converts PDFs, scans and Office files into clean Markdown or JSON for LLMs and RAG.Optional. The basic tier runs ONNX models on CPU; the standard/advanced tiers work on CPU with 8 GB RAM (Vulkan recommended). PyTorch and vLLM/lmdeploy engines need a GPU with 8 GB+ VRAM and 16 GB RAM. The official Docker image targets NVIDIA GPUs only.minimum 2 GB RAMfrom €11.99/moMinerU Open Source License (Apache-2.0 with additional terms) (Custom / conditional)83.0k
Paperless-ngxDocument management system that OCRs scans into a searchable archive, auto-tags them and adds optional LLM suggestions and chat.No. OCR and the built-in classifier run on CPU; LLM features call the provider you configure.Not publishedNot estimated (no official RAM figure)GPL-3.0 (Copyleft (GPL))47.6k
OCRmyPDFCommand-line tool and Docker image that adds a searchable OCR text layer to scanned PDFs, with a watched-folder service.No. Tesseract runs on CPU; the optional EasyOCR plugin is the one that recommends a GPU.Not publishedNot estimated (no official RAM figure)MPL-2.0 (Copyleft (GPL))35.2k
olmOCRAi2's vision-language OCR that turns PDFs and scans into clean Markdown, including tables, equations and handwriting.Required for local inference: a recent NVIDIA GPU with at least 12 GB of GPU RAM (tested on RTX 4090, L40S, A100, H100). Without a GPU you can point it at a remote vLLM or OpenAI-compatible server.Not publishedGPU server (not estimated)Apache-2.0 (Permissive)19.8k
UnstractNo-code LLM platform that turns invoices, forms and other documents into structured JSON.Not required by the platform itself; LLMs are reached through the provider you configure (cloud API or a local server such as Ollama).minimum 8 GB RAMfrom €35.99/moAGPL-3.0 (Network copyleft (AGPL))7.4k
Paperless-AIAI auto-tagging and document chat for Paperless-ngx (currently unmaintained).Not statedNot publishedNot estimated (no official RAM figure)MIT (Permissive)6.0k
paperless-gptLLM add-on for paperless-ngx that does better OCR and writes titles, tags and correspondents.Not needed for the app itself. A GPU only matters if you run the LLM locally (for example with Ollama).Not publishedNot estimated (no official RAM figure)MIT (Permissive)2.8k
Docling ServeDocling document conversion (PDF, Office, images to Markdown/JSON) as a self-hosted API with a demo UI.CPU-only image (docling-serve-cpu) is published; CUDA 12.8 and 13.0 images are available for NVIDIA GPUs, and an AMD ROCm image can be built locally. DOCLING_DEVICE picks cpu, cuda or mps, otherwise the best device is chosen.Not publishedNot estimated (no official RAM figure)MIT (Permissive)1.9k

Apps from our "Document processing" category, sorted by GitHub stars; archived projects are excluded. "CPU server" means the project's own docs say the GPU is optional or not needed, or its official requirements list CPU and RAM only; "needs a GPU" means its docs say so for practical use. We do not rank by OCR quality. Cost = cheapest Hetzner Cloud Regular Performance (shared AMD vCPU) plan that meets the project's official RAM and vCPU figure, list price read on 2026-11-01, excl. VAT, server only (no LLM API usage, backups or your time).

Frequently asked questions

What is the best self-hosted OCR app for a small business?

Most popular on GitHub: PaddleOCR (92.2k stars). Run on an ordinary CPU server according to their own docs: PaddleOCR, MinerU, OCRmyPDF, Docling Serve. Need a GPU for practical use: olmOCR (Required for local inference: a recent NVIDIA GPU with at least 12 GB of GPU RAM (tested on RTX 4090, L40S, A100, H100). Without a GPU you can point it at a remote vLLM or OpenAI-compatible server.). Lowest official hardware: MinerU (minimum 2 GB RAM, from €11.99/month on our reference server). Permissive license (MIT/Apache-2.0, fewest conditions): PaddleOCR, olmOCR, Paperless-AI, paperless-gpt, Docling Serve. No official CPU/RAM figure published: PaddleOCR, Paperless-ngx, OCRmyPDF, olmOCR, Paperless-AI, paperless-gpt, Docling Serve. The right choice depends on your documents and whether you have a GPU.

Which self-hosted OCR and document apps run without a GPU?

PaddleOCR: GPU optional (CPU mode documented) MinerU: GPU optional (CPU mode documented) OCRmyPDF: GPU optional (CPU mode documented) Docling Serve: GPU optional (CPU mode documented)

Which document AI apps need a GPU?

olmOCR: Required for local inference: a recent NVIDIA GPU with at least 12 GB of GPU RAM (tested on RTX 4090, L40S, A100, H100). Without a GPU you can point it at a remote vLLM or OpenAI-compatible server.

Which self-hosted document apps have an MIT or Apache license?

PaddleOCR, olmOCR, Paperless-AI, paperless-gpt, Docling Serve. MinerU uses MinerU Open Source License (Apache-2.0 with additional terms). Paperless-ngx uses GPL-3.0. OCRmyPDF uses MPL-2.0. Unstract uses AGPL-3.0.

Related

Every figure on this page comes from the linked app pages, which cite the project's own repository and docs. Spotted something wrong? Tell us.