# Datalab

> Datalab turns any document into accurate, structured data. PDFs, scans,
> spreadsheets, and slides become markdown, HTML, JSON, or the exact fields
> you define. Datalab trains its own models (Chandra 2.5 runs the API),
> publishes open benchmarks, and runs in its cloud, your VPC, or air-gapped.

- Website: https://www.datalab.to
- Docs: https://documentation.datalab.to (index for agents: https://documentation.datalab.to/llms.txt)
- Quickstart: https://documentation.datalab.to/docs/welcome/quickstart.md
- OpenAPI: https://www.datalab.to/openapi.json
- Pricing (markdown): https://www.datalab.to/pricing.md
- Benchmarks (markdown): https://www.datalab.to/benchmarks.md
- Sign up: https://www.datalab.to/auth/sign_up (up to $20 of free usage each month)

## Quickstart

```python
# pip install datalab-python-sdk
from datalab_sdk import DatalabClient, ConvertOptions

client = DatalabClient()  # reads DATALAB_API_KEY

result = client.convert(
    "contract.pdf",
    options=ConvertOptions(output_format="markdown", mode="accurate"),
)
print(result.markdown)
```

## Processors and modes

- Convert: documents to markdown, HTML, JSON, or chunks. Modes: fast, balanced, accurate.
- Extract: fields you define, as JSON with per-field citations and confidence scores. Modes: turbo, fast, balanced (default), accurate.
- Segment: split a combined file into the separate documents it contains.
- Document agent (agent processor): multi-step document work described in plain language, run as a versioned processor. It replaces custom processors.
- Form fill and form fields: fill PDF and image forms, or find a form's fillable fields.
- Track changes: tracked changes and margin comments from Word files, PDFs, and scans.
- Also: spreadsheet tables, create document, eval, and add-ons for chart understanding, infographics, word bounding boxes, and table cell boxes.

## Prices (US dollars per 1,000 pages)

| Processor | What it does | Rate |
| --- | --- | --- |
| Convert — lite | Fast CPU OCR to markdown or HTML: text, tables and lists; no images or LLM passes | $0.50 |
| Convert — fast / balanced | Document to markdown or HTML | $4 |
| Convert — accurate | Highest-fidelity conversion | $10 |
| Extraction — turbo / fast | Structured fields, single pass. Turbo returns JSON only; fast adds per-field citations and runs on Convert | $6 |
| Extraction — balanced | Structured fields, multi-pass with per-field verification | $15 |
| Extraction — accurate | Structured fields, multi-pass with per-field verification, strongest model | $20 |
| Segment | Detect boundaries between combined documents. Page-level split returns just the page ranges; block-level returns parsed markdown | $0.50 |
| Track changes | Diff revisions in a Word document | +$6 |
| Form fill | Populate a form's fields | $10 |
| Agent processor | Document agent workflows — the successor to custom processors, for higher-accuracy and more involved document work | $10 |
| Spreadsheet tables | Table extraction (500 cells count as one page) | $6 |
| Create document | Generate a document | $6 |
| Form fields | Find a form's fillable fields and their labels | $3 |
| OCR (legacy Surya) | Text-only recognition | $2 |
| Custom processor | Your own pipeline | $20 |
| Eval | Score output quality against a rubric | $2 |
| Chart understanding (add-on) | Adds chart parsing to a run | +$3 |
| Infographic (add-on) | Adds infographic parsing to a run | +$4 |
| Word bounding boxes (add-on) | A box and confidence score for every word | +$3 |
| Table cell bounding boxes (add-on) | Per-cell table bounding boxes (includes word bboxes) | +$3 |
| List bounding boxes (add-on) | Per-item list bounding boxes (includes word bboxes) | +$3 |

A "+" rate is an add-on on top of the processor it runs with. Details and plans: https://www.datalab.to/pricing.md

## Benchmarks

- Overall (OmniParseBench): Datalab accurate 93.5, Datalab balanced 91.6, Reducto 90.8.
- Tables (OmniParseBench · table tag): Datalab accurate 95.2, Extend 94.7, LlamaParse 93.7.
- Multi-column (OmniParseBench · multi_column tag): Datalab accurate 94.2, Datalab balanced 91.9, LlamaParse 91.4.
- olmOCR-bench (olmOCR-bench · Chandra 2.5): Chandra 2.5 86.9, Chandra OCR 2 85.8, LightOnOCR-3-4B 85.4.

Full tables with every parser, test counts, and sources: https://www.datalab.to/benchmarks.md

## Deployment and scale

- Managed cloud: capacity for 1B+ pages in a day, SOC 2 Type II, opt-in zero data retention, optional BAA and EU residency.
- VPC deployment on AWS, GCP, or Azure.
- On-prem and air-gapped, with full model weights.

## Open source

Marker, Surya, Chandra, and Indra: 75k+ combined GitHub stars. https://github.com/datalab-to

## Latest posts

- [Word boxes that hold up on handwriting](https://www.datalab.to/blog/word-boxes-handwriting.md) (2026-10-20)
- [Find the fillable fields on any form](https://www.datalab.to/blog/form-field-detection.md) (2026-10-19)
- [Indra OCR 1.1: handwriting, 80+ languages and pages at any angle](https://www.datalab.to/blog/indra-ocr-1-1.md) (2026-10-19)
- [Script confusions: when an OCR model writes the right word in the wrong alphabet](https://www.datalab.to/blog/script-confusions.md) (2026-10-16)
- [Managing Model Uncertainty to Catch OCR Hallucinations](https://www.datalab.to/blog/managing-model-uncertainty.md) (2026-10-15)

Every blog post has a markdown version at its URL plus ".md".
