How Reducto differentiates
One extraction layer for the entire document estate, "PDF, Excel or even fax": from everyday invoices and statements to 500-page credit agreements, fund-of-funds structures, bundled multi-invoice files, and K-1s that arrive differently from every preparer. Everyday documents get cheaper and more accurate. The long, bespoke documents become possible at all.
SOURCES ARE MARKED THROUGHOUT: independent benchmarks · competitors' own documentation · Reducto figures. Where a competitor is genuinely strong, this document says so.
Leaf-level accuracy from Reducto's Deep Extract, with 225 of 225 long documents completed. Every field scored, including fields nested deep inside arrays, at the length where other systems truncate, chunk, or fail. Next-best vendors completed 210 and 203.
Recall and precision: the share of fields actually captured. On a credit agreement the expensive failure is the covenant that was never extracted, not the one extracted slightly wrong. Next best: 92.7% and 77.5%.
Everyday documents (invoice-class) at 99%+ field accuracy with no human review, read by purpose-built models in the ~100M-parameter class instead of at frontier-token prices. One layer for the whole estate is what moves the cost line.
Your documents, and why they defeat the incumbent stack
Six document families from the estate. The pattern repeats: each incumbent architecture was built for a different document than the one in front of it. The grids in 02 and 03 score these same failure modes vendor by vendor.
Credit & loan agreements
One agreement, several amendments. The current value of a covenant or pricing grid lives in whichever amendment last touched that section, and defined terms cross-reference each other across hundreds of pages. The document is a legal argument, not a form.
Fund-of-funds documents
The same fields repeat per underlying fund, per share class, per period: arrays inside arrays. Flat key-value extraction destroys exactly the hierarchy the accounting needs, so the output is unusable even when every individual value is right.
Bundled invoice & statement files
Intake arrives as one blob. Each invoice or statement spans two to three pages with no separator sheets, no barcodes, and no fixed boundaries, and each piece needs its own extraction before anything downstream can run.
K-1s
Thousands of preparers, each rendering the federal K-1 its own way, with the values that matter pushed onto attached statements: box 20Z becomes an arbitrary-length array living on attachment pages that no prebuilt model has seen.
Capital-account statements & notices
Every GP formats commitments, contributions, distributions, and NAV its own way, and the estate arrives in mixed media: born-digital PDFs, Excel-native files, and scanned or faxed notices with real-world artifacts.
Schedules of investments & waterfalls
Merged cells, no gridlines, footnoted values, and tables that continue across pages. One misplaced cell silently shifts a column of valuations, and the error survives every downstream check because the table still looks like a table.
Feature by feature: capability
| Capability | ABBYY | Hyperscience | Textract / Azure DI | Bedrock Data Automation | Databricks ai_parse_document | Frontier LLM direct | Reducto |
|---|---|---|---|---|---|---|---|
| New layout, zero setup: a K-1 from a new preparer, a lender format never seen before | ✗template first | ✗labeled samples first | △generic fields; custom needs training1 | △blueprint + 3–10 tuning examples2 | △parse only; extraction is a separate generic LLM call3 | ✓prompt-dependent | ✓zero-shot, schema or schemaless |
| 500+ page agreement, one shot, no chunking | ✗ | ✗ | △OCR yes; document-level extraction no | △no public long-document evidence | ✗hard cap: 500 pages / 100 MB3 | ✗truncates and degrades silently | ✓no chunking penalty; Deep Extract completed 225/225 long documents4 |
| Amendment-aware values: the third amendment supersedes section 4.2 | ✗ | ✗ | ✗ | △per-field instructions exist; long-document reasoning is the gap | ✗ | △can reason, unreliable at length | ✓instructable in the schema |
| Nested schemas: fund-of-funds arrays inside arrays | ✗ | △ | ✗ | △blueprint fields are string / number / boolean2 | ✗ | △fragile as depth grows | ✓define the array once; it iterates |
| Bundled files: dozens of 2–3 page invoices or statements in one PDF | △rule / barcode separation | △trained classifier | △trained custom classifier (Azure); nothing zero-shot | △ | ✗ | △manual orchestration | ✓split by plain-language description, routed to per-type schemas |
| Merged-cell, gridline-free, footnoted tables: schedules of investments, waterfalls | △per-template zones | △ | △one generic pass | △ | △HTML out; accuracy unbenchmarked3 | △loses row / column integrity | ✓multi-pass structure checks; best model routed per table5 |
| One API across the estate: born-digital PDF + Excel-native + faxed scans | △strong on scans; Excel via config | △ | △ | △ | △docs warn on dense or low-resolution content3 | △vision quality varies | ✓all three, one call |
1 Vendor docs: Textract Queries / Azure custom models require configuration or training per document type. 2 AWS BDA docs and blog; AWS also calls schemas "blueprints," not to be confused with internal blueprints. 3 Databricks' own function docs: 500-page / 100 MB limits, English-tuned, "may take a while to run or ignore content." 4 micro1 LongExtractionBench, independent, 225 long documents; report available on request. 5 When a frontier model beats Reducto's own on a table type, routing surfaces it automatically; continuous evaluation decides.
Feature by feature: the operating model
| Operating question | ABBYY | Hyperscience | Textract / Azure DI | Bedrock Data Automation | Databricks | Frontier LLM direct | Reducto |
|---|---|---|---|---|---|---|---|
| Per-field confidence usable for auto-accept | △OCR / rule-level | ✓automation-rate thresholds, built on trained samples | △field confidence on prebuilt / custom models; generic output is word-level | ✓broad bands: ≥90 high, 70–89 medium6 | ✗none for extraction | ✗token probabilities are not calibrated | ✓per extracted field; see 04 |
| Citation tied to each extracted schema field | △zones, not fields | △ | △on prebuilt / custom models; generic output is words + geometry | ✓per field | △element metadata, not extracted fields | ✗ | ✓per-field bounding box + page |
| Setup for a new document type | build a template | label and train | configure or train a custom model | author a blueprint + examples | write prompts around the parse | write prompts + build evals | paste an existing JSON schema |
| When layouts drift or models change, who fixes accuracy | you | you (retrain) | you | shared | you | you (the prompt treadmill) | Reducto: continuous evaluation, auto-optimization, shared engineering channel |
| Independent third-party evidence on long-document extraction | not evaluated7 | not evaluated7 | not evaluated7 | not evaluated7 | not evaluated7 | n/a | ✓micro1: 99.6% recall / precision, 99.3% leaf accuracy4 |
| Deployment | on-prem ✓ | on-prem ✓ | their cloud | their cloud (AWS) | your lakehouse | API / your Bedrock | SaaS, hybrid VPC inside your AWS, or on-prem |
| Throughput at a 30M-docs / month scale | capacity licenses | capacity licenses | ✓scales | ✓scales | ✓batch | rate limits + retries | ✓1,000 req/s at the edge; batches queue rather than reject |
6 AWS's published guidance brackets confidence into bands and recommends human verification below them (AWS blog). 7 "Not evaluated" means not present on the benchmark cited; each vendor can be asked for its own independent long-document results.
Confidence per field, citations per field
Every extracted field carries two properties: a confidence score you can threshold, and a bounding-box citation to the exact page region it came from. Together they set the only number that matters operationally: how much of the estate flows through with no human review at all.
The threshold is the business case
Set an acceptance threshold, and review effort stops scaling with volume and starts scaling with genuine ambiguity. Everything above the line needs no reviewer; everything below arrives as an exception with evidence attached.
Calibration is the test
A confidence score is only useful if 95 behaves like 95. In an evaluation, plot confidence against actual correctness and find the threshold where auto-accepted fields meet your error tolerance. That one chart converts extraction accuracy into staffing math, for any vendor.
Mapped to evaluation criteria
Groundedness: every field cites the page region it came from. Faithfulness: superseded and struck values are never invented, and the citation proves it. Accuracy: scored per field, nested fields included. For the highest-stakes fields, the Deep Extract harness adds verification passes, the mode behind the 99.3% / 99.6% numbers above.
Where the cost difference actually comes from
Document AI cost is four lines, not one. Reducto moves all four.
Purpose-built models in the ~100M-parameter class handle layout, OCR, and table structure, with frontier models reserved for the cases where they genuinely win. You stop paying frontier-token prices for document reading, and the models you do run work over clean structured text instead of raw PDFs.
Per-field confidence plus per-field citations let high-confidence fields flow straight through and route only genuine exceptions to people.
No templates to rebuild, no samples to relabel, no custom models to retrain, no prompt-and-eval treadmill when a new model ships. Chasing the frontier is Reducto's product, not a standing item on the team roadmap.
A covenant, fee term, or amendment that was never extracted becomes rework, breaks, or client exposure downstream. Recall is the quiet budget line that never shows up on a per-page price sheet.
Vendor by vendor, in one breath each
ABBYY
Strong heritage OCR on stable scanned forms; every new GP or lender variant is a template build, and layout drift breaks silently.
Hyperscience
The best of trained IDP, and its automation-rate framing is right; it reaches those rates through labeled training samples per document class, which becomes the product you operate on an estate with hundreds of drifting formats.
Textract / Azure Document Intelligence
Excellent, cheap OCR infrastructure returning words and boxes; finished schema fields, splitting, validation, and evaluation remain your build.
Bedrock Data Automation
The serious hyperscaler option, with blueprints, confidence, and citations; a single generic model stack, confidence guidance that recommends human verification below 90, and no public long-document evidence.
Databricks ai_parse_document
Convenient bulk ingestion where the data lives; a parser, not an extraction system, with a documented 500-page / 100 MB cap that the longest agreements exceed outright.
Frontier models direct
The right reasoning engines and the wrong document readers past ~100 pages; give them structured input and they do their best work, which is why Reducto complements rather than replaces them.
How it fits, and terms
Modularity
Parse, Split, Extract, and Edit are independent APIs, callable from Databricks pipelines, Bedrock agents, LangGraph, or Claude tool use and Skills.
Existing JSON schemas work as-is; existing orchestration and business logic stay untouched.
Security
SOC 2 · GDPR · DPA included in the trial agreement · zero-data-retention configured on the account.
Documents are never used for training, so evaluation can run on real client documents rather than redacted mockups.
Deployment
SaaS, hybrid VPC (processing inside your AWS while Reducto manages GPUs and model updates), or on-prem.
EU-stringency requirements mapped against our security attestation on request.
Test every claim here on your own documents
Ten documents per schema is enough to separate the field. Reducto provisions the environment and credits under the trial terms; your team keeps the scorecard, judged on your own criteria: faithfulness, groundedness, accuracy.