https://txtfetch.com/compare/libraries/
Five open-source parsers, and what running one actually costs.
Docling, MarkItDown, PyMuPDF4LLM, Marker, and MinerU are all free to download. Every one still needs a model to host, a GPU decision, and a patch schedule. Here's the honest comparison, cited and dated.
Why compare txtfetch to a library you'd run yourself?
Every parser on this page is a library. You install it, you host it, and you own its updates. txtfetch is a hosted API: one HTTP call, nothing to install. That's the same honest framing our Apache Tika page already uses, and it applies here too.
This page names real strengths for each library. It also names the licence terms and the operational cost that a "free" download doesn't advertise up front.
the five-way matrix
| Capability | Docling | MarkItDown | PyMuPDF4LLM | Marker | MinerU |
|---|---|---|---|---|---|
| Hosting | self-hosted only | self-hosted only | self-hosted only | self-hosted only | self-hosted only |
| Ships neural model weights | + | – | – | + | + |
| GPU required | optional | – | – | optional | ~ |
| Table extraction | + | ~ | + | + | + |
| OCR engine bundled | + | – | ~ | + | + |
| Structured or JSON output | + | – | + | + | + |
| Built-in chunking for RAG | + | – | + | + | – |
| Single HTTP endpoint | ~ | – | – | ~ | ~ |
Full licence citations, dated, live on each spoke below. No row on this page states an accuracy or speed figure. See /benchmarks for txtfetch's own numbers.
A short decision list
- Need the broadest bundled OCR language coverage? MinerU ships 109 languages by default.
- Have only native, born-digital PDFs and no GPU? PyMuPDF4LLM is the fastest path.
- Need one document object that exports to Markdown, JSON, and RAG-ready chunks? Try Docling.
- Want the lightest possible install, with no model weights at all? MarkItDown fits.
- Need the highest table and math fidelity, and can run a GPU? Marker's --use_llm pass targets that.
- Want none of the above to manage? That's the case for a hosted call instead.
What self-hosting any of them costs
Every library on this page is free to download. None of them is free to run in production. Each one needs somewhere to put its model weights, a decision about GPU spend, and a plan for cold starts on a fresh process. Someone has to patch the library itself, and its model dependencies, as new CVEs and file-format edge cases turn up.
Two of the five, PyMuPDF4LLM and MinerU, carry licence terms that need a real read before you ship. PyMuPDF4LLM's default is AGPL-3.0's network-copyleft clause. MinerU adds its own usage thresholds. Marker's model weights carry a separate revenue and funding threshold from its Apache-2.0 code. Each spoke below names its own checklist.
When one HTTP call is simpler
txtfetch has no model to host and no GPU to provision. Apache Tika and Tesseract run on our infrastructure, checked against 615 formats with a real parser behind them (see the coverage list). If your team would rather ship the product than run a document-parsing service, that's the case for a hosted call.
The standard OCR tier ships English trained data plus script detection only (TESSDATA_LANGS=eng osd). See /languages for the full per-language detail, and request quality=premium for a hard non-English scan.
compare each one to txtfetch
txtfetch vs Docling
A document-conversion library built around one unified document object, with broad format coverage.
MIT
txtfetch vs MarkItDown
A lightweight, zero-model Python utility that converts files to Markdown for LLM prompts.
MIT
txtfetch vs PyMuPDF4LLM
A PDF-first extension of PyMuPDF, built for fast Markdown and JSON output with no GPU.
Dual-licensed: GNU AGPL-3.0, or a paid Artifex commercial licence
txtfetch vs Marker
A layout- and VLM-driven converter with an optional LLM pass for the highest-fidelity tables and math.
Apache-2.0
txtfetch vs MinerU
A VLM-and-OCR document parser with the broadest native OCR language coverage of the five.
MinerU Open Source License, a custom licence based on Apache-2.0
More comparisons
- Compare hub — the commercial extraction APIs, priced per page.
- Why not just run Apache Tika myself? — the same question, asked of the engine behind txtfetch itself.
- Benchmarks — txtfetch's own measured accuracy, per category, with the full methodology.
frequently asked questions
- Are Docling, MarkItDown, PyMuPDF4LLM, Marker, and MinerU really free?
- The code for all five is open source. Three (Docling, MarkItDown, and PyMuPDF4LLM's dual option) use permissive or fully free terms. PyMuPDF4LLM's default is AGPL-3.0. Marker and MinerU add extra terms above a funding, revenue, or usage threshold. Check each spoke's licence section before you pick one.
- Which of these should I pick for a RAG pipeline?
- It depends on your documents and your infrastructure. A CJK-heavy scan set favors MinerU's OCR coverage. A native-PDF-only pipeline with no GPU favors PyMuPDF4LLM. A mixed Office and web estate favors Docling or MarkItDown. Each spoke names its own real strengths.
- Does txtfetch use any of these libraries internally?
- No. txtfetch runs Apache Tika and Tesseract, not any of the five libraries on this page. See /compare/self-hosted-tika for that build.
- Why doesn't this page show accuracy or speed numbers?
- txtfetch has no benchmark run against these five libraries, so publishing one would be a guess dressed up as a fact. See /benchmarks for txtfetch's own measured numbers and their caveats.
Keep the library. Add the hard formats.
Some teams run both. Send only the files the library cannot read.
Read the quickstart →