Layout-aware OCR & form extraction
Extract tables, checkboxes, multi-column layouts, and key-value forms from PDFs/scans where naive chunking destroys structure.
At a glance — Oct 2026
Updated 2026-10-27 · forward this page: /jtbds/layout-aware-ocr#briefScores as of 2026-09-14 (43 days old; Depot marks scores stale after 30 days). The pick is still Depot's current editorial pick; it has not been re-reviewed since. Prices below carry their own dates.
- Depot Pick
- Reducto · 8.11/10 for this job (curated estimate, high confidence)
Distinct from `document-parse` (general LLM-ready chunks). Weight capability on layout fidelity. Confidence: medium-high on Reducto agentic OCR positioning.
- Runner-up
- LlamaParse · 8.24/10
Scores higher than the pick on: Price / performance, Latency / reliability, Developer & agent DX, Maturity / track record.
- When not to use the pick
- Simple markdown chunking is enough (LlamaParse), or you need broad ETL connectors (Unstructured).
- Lock-in / migration
- The pick has lower stored lock-in risk than runner-up LlamaParse (4.5 vs 4.8). Self-host fallback listed for this job: Florence-2-base, PaddleOCR, EasyOCR.
- Sourced price (usd_per_1k_pages)
Pick's lowest sourced SKU: r-1 Parse API $10 (usd_per_1k_pages) — source, as of 2026-10-19
Cheapest matching SKU: Reducto r-1 Parse API $10 — source, as of 2026-10-19. The pick is the cheapest.
Price history: first seen 2026-10-19 · last changed no change recorded · history JSON
- Free option
- Failure modes to watch
- Collateral side effects: Snapshot the workspace or app state, then diff it against an allowlist. A passing check plus an unexpected diff is a failure.
- Hallucinated tool arguments: Reject a call that fails the current schema or names an unknown id, and do that before the tool runs a side effect.
- Partial tool success: Require a per-item status and a failure count. Success for the task requires the failed count to be zero or explicitly handed to a retry queue.
- Schema drift: Validate every tool call and every loaded table against the current schema. Quarantine mismatches instead of coercing them.
- Silent truncation: Tools must return whether the payload was truncated and how long the original was. Fail the task if the answer depends on the missing span.
- Stale retrieval: Store the source URL and the time it was fetched. If a newer canonical page exists, or two stored sources disagree, do not answer from the older one.
Cite: Agent Provider Depot, Depot Pick for layout-aware-ocr: reducto, scores as of 2026-09-14. Agents: GET /api/decide?jtbd=layout-aware-ocr
Free Layout OCR options · All sourced prices, cheapest first · for data-etl agents
Reducto
Distinct from `document-parse` (general LLM-ready chunks). Weight capability on layout fidelity. Confidence: medium-high on Reducto agentic OCR positioning.
Pricing (directional): As of 2026-09-14 (reducto.ai/pricing): Standard $150 free usage then list: r-1 Parse $10 / 1k pages, Extract $20, Deep Extract $40, Split $20, Classify $7.50, Edit $60 ($15 pre-filled). Growth = volume + ZDR/BAA + EU/AU residency. Enterpris…
Lock-in risk: higher = more lock-in (worse). Overall already inverts this dimension.
Use when LlamaParse Agentic still drops tables/forms. Depot still picks LlamaParse for default document-parse DX/ecosystem.
Quote for Layout-aware OCR & form extraction
Depot Pick stays Reducto. Prices below are sourced SKU rows only (as of 2026-10-27). Input and output are not blended. GET /api/quote?jtbd=layout-aware-ocr
Only 1 candidate has a matching USD per 1k pages; nothing was compared, so pickIsPriceWinner is null.
- Extract API usd_per_1k_pages $20 source as of 2026-10-19
- r-1 Parse API usd_per_1k_pages $10 source as of 2026-10-19
1 of 4 candidates have no sourced price row. 3 are excluded from the USD per 1k pages comparison (doc_pages). min sourced document-parse price per 1k pages among candidates (per-page rows are used only when no per-1k row exists; never converted); credit-based plans were not ranked; not quality-adjusted
Runners-up
LlamaParse
Depot pick for document-parse (PDF/Office → LLM-ready markdown/JSON). Unstructured when you need ETL…
Unstructured
Best when you want connector-heavy document ETL or to self-host the OSS partitioner. LlamaParse remains the…
Jina AI
Promoted high after pinning official models API token matrix ($0.05/1M). Best as EU-friendly all-in-one…
When NOT to use the top pick
Simple markdown chunking is enough (LlamaParse), or you need broad ETL connectors (Unstructured).
Full ranking (score table)
Ranked with this JTBD's weights. Scores are curated estimates unless marked otherwise. Agents: prefer /api/decide then this table for tie-breaks.
| # | Provider | Overall | Fit | $/perf | Latency | DX | As of |
|---|---|---|---|---|---|---|---|
| 1 | LlamaParse | 8.2 | 9.0 | 7.8 | 8.4 | 8.8 | 2026-09-14 |
| 2 | Unstructured | 8.1 | 8.4 | 8.2 | 8.2 | 8.0 | 2026-09-14 |
| 3 | ReductoDepot Pick | 8.1 | 9.0 | 7.2 | 8.2 | 8.4 | 2026-09-14 |
| 4 | Jina AI | 8.1 | 8.2 | 8.6 | 7.8 | 8.8 | 2026-09-14 |
Score methodology for this job
Distinct from `document-parse` (general LLM-ready chunks). Weight capability on layout fidelity. Confidence: medium-high on Reducto agentic OCR positioning.
capabilityFit: 32%pricePerformance: 12%latencyReliability: 14%developerDx: 12%privacyPosture: 12%lockInRisk: 8%maturity: 10%