Open Source Alternatives LogoOpen Source Alternatives
AlternativesBlogAdvertise
Open Source Alternatives LogoOpen Source Alternatives

Stay Updated

Subscribe to our newsletter for the latest news and updates about Alternatives

Open Source Alternatives LogoOpen Source Alternatives

Handpicked Open Source Alternatives to Paid Softwares

Product
  • Categories
  • Tag
  • Advertise
Resources
  • Blog
  • Collection
  • Submit
  • Advertise your tool
Company
  • Privacy Policy
  • Terms of Service
  • Refund Policy
  • Sitemap
Alternatives
  • Claude Code
  • Jira
  • Notion
  • Slack
  • Linear
  • Wispr Flow
  • All alternatives
Copyright © 2026 All Rights Reserved.
Home/Categories/AI & Machine Learning/Marker
icon of Marker

Marker

Open source alternative to Unstructured.io, LlamaParse and Reducto

Convert PDFs, images, Office files, and EPUB documents to markdown, JSON, or HTML using open source document AI with multilingual OCR.

40.4K starsPythonApache-2.0Active this week
Visit websiteGitHub repo
Contents
  1. 01Who Marker is for
  2. 02The problem it solves
  3. 03How it solves it
  4. 04Strengths and trade-offs
  5. 05Marker vs alternatives
  6. 06Quick start
  7. 07Tech stack
  8. 08FAQ
  9. 09Similar open-source tools
TL;DR

Marker is an open source document converter that turns PDFs, images, Office files, and EPUBs into clean markdown, JSON, or HTML. It replaces managed parsing APIs like LlamaParse and Unstructured.io for teams that need to keep document content on their own infrastructure. The code is Apache-2.0 licensed and runs on GPU, CPU, or Apple Silicon. Best for engineers building RAG systems or AI training pipelines who need high-accuracy document parsing without per-page API costs.Apache-2.0 · Python · 40.4K stars · Active this week

who it's for

Who Marker is for#

Data engineers building RAG pipelines

Marker converts documents to clean markdown or typed JSON blocks that feed directly into embedding models without HTML noise. Block metadata lets you split on section boundaries rather than arbitrary character counts. Batch mode processes entire folder hierarchies with configurable worker counts and multi-GPU support.

Skip if:

Your documents are already in clean text or HTML. Marker's value is parsing unstructured formats like PDFs and scanned images; if your content is already structured, a lighter chunking library handles it with less overhead.

AI researchers processing academic paper corpora

Balanced mode handles multi-column arXiv PDFs, embeds equations as LaTeX, and preserves table structure. The --page_range flag targets specific sections. Multi-GPU batch processing converts thousands of papers on a single machine, producing citation-ready markdown for training data pipelines.

Skip if:

You only need metadata (authors, abstracts, references) rather than full-text conversion. Dedicated bibliography parsers handle structured metadata extraction with less overhead.

Teams with data residency or confidentiality requirements

Regulated industries where documents cannot be sent to third-party APIs can run Marker fully air-gapped. Models download once; after that, no internet connection is required. Datalab also offers VPC and on-premises managed deployments for teams that want managed infrastructure without data leaving their network.

Skip if:

Your documents are not confidential and volume is modest. A managed API like LlamaParse is simpler to operate for teams without data residency constraints.

Financial and insurance document workflows

TableConverter extracts structured data from claim forms, financial statements, and regulatory filings. Word-level bounding boxes in the JSON output trace each value back to its position in the source document. The --use_llm flag improves accuracy on complex form layouts that the base model handles inconsistently.

Skip if:

Your documents are primarily narrative text without tables or structured forms. The full extraction pipeline adds setup complexity that only pays off on structured document content.

the problem

The problem it solves#

Extracting clean, structured text from real documents is harder than it looks. PDFs mix vector text, raster images, and metadata in a format designed for display, not parsing. Tables fragment across pages. Equations render as images. Scanned pages have no text layer. Multi-column academic papers collapse into wrong reading order when text is extracted directly.

Most teams reach for managed parsing APIs to avoid this complexity. LlamaParse, Unstructured.io, and Reducto handle the hard cases server-side, but every page you parse flows through their infrastructure. Per-page pricing adds up fast for high-volume workloads: a research lab processing tens of thousands of arXiv papers, or a financial team parsing annual reports at scale, quickly hits costs that make a self-hosted path worth the setup effort. And for teams with strict data residency or confidentiality requirements, sending documents to a third-party API is not an option.

how Marker solves it

How it solves it#

Multi-format document ingestion

Converts PDFs, images, PPTX, DOCX, XLSX, HTML, and EPUB in all languages. The base pip package handles PDFs and images; installing marker-pdf[full] adds Office and EPUB support. All formats share the same output pipeline: markdown, JSON, HTML, or chunks.

Balanced and fast processing modes

Balanced mode uses the surya VLM for layout detection, OCRs inline math, and re-OCRs whole pages when embedded text is bad; it scores 76.0% on olmocr-bench overall and 83.5% on born-digital PDFs. Fast mode uses a lightweight rf-detr layout detector and avoids VLM calls on clean digital documents, suited for CPU-only servers or large-scale batch jobs.

LLM-assisted hybrid mode

Pass --use_llm to improve accuracy on tables that span multiple pages, inline math, form extraction, and custom output formatting. Works with Gemini, Claude, OpenAI-compatible endpoints, Azure, Vertex, OpenRouter, or Ollama, so you choose the LLM backend.

Typed block JSON output with bounding boxes

JSON output is a tree of typed blocks (paragraphs, tables, equations, figures, forms) with page bounding boxes and word-level coordinates. This lets you extract specific block types programmatically, such as all tables or all forms, using the Python API's contained_blocks() method.

Extensible Python API

The PdfConverter class accepts custom processor lists, renderers, and LLM services via ConfigParser. TableConverter extracts only tables; OCRConverter runs OCR only. Custom processors can manipulate the internal block tree between pipeline stages, enabling domain-specific extraction logic without forking the core library.

Multi-GPU and multi-node batch processing

Run marker on a folder to process thousands of files in parallel. VLLM_GPUS=0,1,2,3 spans multiple GPUs on one machine; --num_chunks and --chunk_idx shard workloads across multiple nodes. The parent process budgets VLM concurrency automatically against the inference server's capacity.

strengths · trade-offs

Strengths and trade-offs#

Strengths

  • Apache-2.0 code license with no per-page costThe code is Apache-2.0, free to use commercially with no per-page parsing fees. Unlike LlamaParse or Unstructured.io's managed APIs, a self-hosted Marker deployment has a fixed monthly infrastructure cost regardless of document volume. High-volume workloads become structurally cheaper once the server is in place.
  • Benchmark accuracy ahead of comparable open source toolsBalanced mode scores 76.0% overall on olmocr-bench and 83.5% on born-digital PDFs, ahead of MinerU and docling on the same third-party benchmark. The suite covers 1,403 PDFs across math, tables, multi-column layout, scanned documents, and other hard edge cases.
  • Full infrastructure control and data residencyDocument content never leaves your network. For regulated industries (healthcare, finance, legal) where sending documents to a third-party processor creates compliance obligations, self-hosting removes that relationship. Models download once and run air-gapped on isolated networks with no ongoing internet requirement.
  • Flexible LLM backend integrationThe --use_llm flag integrates with any OpenAI-compatible endpoint, Gemini, Claude, Azure, Vertex, OpenRouter, or a local Ollama instance. If you already run a local model server, Marker can use it for hybrid-mode accuracy boosts without adding a cloud API dependency.

Trade-offs

  • -Model weight license restricts commercial use above the startup thresholdThe code is Apache-2.0, but the model weights use a modified OpenRAIL-M license. Research, personal use, and startups under $5M in funding or revenue can use the weights freely. Teams running Marker for their own organization's internal documents are permitted; teams offering Marker-powered parsing as a paid service to external customers need a commercial license from Datalab.
  • -GPU or local inference server required for highest accuracyBalanced mode requires Docker with an NVIDIA GPU (for vLLM) or a llama.cpp binary (for CPU and Apple Silicon). Without the inference server configured, Marker falls back to fast mode, which skips VLM calls on clean digital documents and cannot OCR scanned pages. Setup is more involved than a managed API and needs ongoing infrastructure maintenance.
  • -Large open issue count reflects edge cases in the wildThe repository has 485 open issues against 40k+ stars. Edge cases in heavily scanned documents, complex table layouts, and some equation types appear in the tracker. Development is active (last push October 2026), but testing against your own document corpus before production deployment is advisable.
versus alternatives

Marker vs alternatives#

Marker vs LlamaParse

LlamaParse is a managed document parsing API from LlamaIndex built for ingesting documents into RAG pipelines. It has no self-hosting option and charges per page parsed.

FeatureMarkerLlamaParse
LicenseApache-2.0 (code); OpenRAIL-M (model weights)Proprietary
Self-hostingYesNo
Per-page costNone (self-hosted)Yes
GPU requiredOptional (CPU mode available)N/A (managed)
Output formatsMarkdown, JSON, HTML, chunksMarkdown, JSON
LLM integrationAny OpenAI-compatible, Gemini, Claude, OllamaLlamaIndex ecosystem

Marker is the better choice for high-volume document processing, strict data residency requirements, or workflows that need custom extraction logic in the parsing pipeline. LlamaParse is simpler to start: no Python environment, no inference server, no GPU. For teams with modest volume and no confidentiality constraints, LlamaParse can reach production faster.

Marker vs Unstructured.io

Unstructured.io is a document parsing platform with broad file type coverage and both managed and self-hosted paths. Its enterprise self-hosted edition requires a commercial license.

FeatureMarkerUnstructured.io
LicenseApache-2.0 (code); OpenRAIL-M (model weights)Apache-2.0 (community); commercial for enterprise
Self-hostingYes, freeCommunity edition free; enterprise requires licensing
File type supportPDF, images, Office files, EPUB25+ file types
Equation handlingLaTeX via surya VLMLimited
Python APIPdfConverter, TableConverter, OCRConverterPartitioning functions and UnstructuredLoader

Marker focuses on PDF and Office file accuracy, with deep handling of equations, multi-column layouts, and tables. Unstructured.io covers more source formats and has wider ecosystem integrations. For teams embedded in the Unstructured.io ecosystem or needing the widest possible format coverage, Unstructured.io may fit better. For teams that need high-accuracy equation and table extraction from PDFs without enterprise licensing overhead, Marker is the simpler path.

install · quick start

Quick start#

bash
Install with pip; the [full] extra adds support for Office files and EPUB documents.
```bash
pip install marker-pdf
pip install marker-pdf[full]
```
tech stack · detected from GitHub

What it's built on#

Languages
Python
frequently asked

FAQ#

Is Marker free to use?

The code is Apache-2.0 and free for personal, research, and commercial use. The model weights use a modified OpenRAIL-M license: free for research, personal use, and startups under $5M in funding or revenue. Commercial use of the weights beyond that threshold requires a license from Datalab. Self-hosters processing their own organization's documents fall under the free tier in most cases.

What file formats does Marker support?

The base install (pip install marker-pdf) handles PDFs and images. Installing marker-pdf[full] adds PPTX, DOCX, XLSX, HTML, and EPUB support. OCR covers 90+ languages via the surya multilingual model.

Does Marker require a GPU?

No. GPU gives the highest accuracy in balanced mode (NVIDIA, via Docker and vLLM). CPU and Apple Silicon work via llama.cpp. On CPU, Marker defaults to fast mode, which skips VLM calls on clean digital PDFs. Scanned documents need the VLM for OCR regardless of mode, so a GPU or llama.cpp setup is required to process scanned-only files.

How does Marker compare to LlamaParse?

LlamaParse is a managed API with no self-hosting option; Marker runs on your own infrastructure. LlamaParse is simpler to start: no GPU, no server setup, no Python environment to manage. Marker eliminates per-page fees and keeps document content on your network. On complex scanned documents, LlamaParse's proprietary models may outperform Marker's open source weights for teams without dedicated GPU infrastructure.

Can I use Marker from Python?

Yes. The PdfConverter class is the main entry point. Pass custom configuration, processors, and LLM services via ConfigParser. TableConverter handles table-only extraction; OCRConverter handles OCR-only tasks. JSON output gives you a typed block tree with bounding boxes, suitable for programmatic extraction of specific content types like tables or forms.

also worth a look

Similar open-source tools#

Unstructured

Unstructured

Document parsing and ETL for LLMs, RAG pipelines, and AI agents.

15.6KHTMLApache-2.0
MinerU

MinerU

Document parsing for LLM workflows, OCR, and agent reading.

81.8KPythonApache-2.0 with commercial threshold and attribution terms
pdf-inspector

pdf-inspector

Rust-powered PDF parser with smart OCR routing for AI pipelines

19.7KRustMIT
MarkItDown

MarkItDown

Convert PDFs, Office files, and images to Markdown, free

190.2KPythonMIT
Bifrost

Bifrost

Open-source AI gateway with 23+ providers, failover, and MCP support.

8.8KGoApache-2.0
FckSignups

FckSignups

Open-source tools that work instantly, no signup required

4.5KTypeScriptGPL-3.0

Repository

Stars
40.4K
Forks
2.9K
License
Apache-2.0
Latest
v2.0.0
Last commit
1 day ago
Last verified
Oct 15, 2026
Repo
datalab-to/marker ↗

Additional details

Language
Python
Open issues
485
Contributors
29
First release
2023

Categories

AI & Machine LearningData & AnalyticsLLMOps & AI ToolingDeveloper ToolsAPIs & Integration

Tags

LLMLLMOpsAI AgentsDeveloper ToolsOpen CoreRAGAPI InfrastructureWorkflow AutomationScraping