Verifiable document extraction
Which of these answers can you post without a human looking?
Ledger turns invoices, receipts and forms into structured data — showing where each value sits on the page, with a proven limit on the error rate of everything it accepts automatically, and a review queue for the rest.
$1,200 · your own documents · a measured accuracy report in 5 business days
every benchmark on this site is measured, and cites its report
exact
exact
exact
exact
below certified threshold 0.951 → routed to review
an illustrative extraction — certified fields are auto-accepted, the rest route to review
The governing principle: the worst failure is confident, wrong data.
So where Ledger cannot certify a field, it says UNCALIBRATED and auto-accepts nothing.
The number that sells it
Black-box tools invent values and hand them to you with the same confidence as the real ones.
On the same degraded photographs, measured the same way:
False-invention rate
35.9%
of missing fields get a value invented — a supplier or total that was never on the document, typed in exactly as confidently as a correct one.
False-invention rate
0.0%
Not one invented value across all 64 held-out documents. Anything that appears nowhere on the page is flagged by a direct check — not another AI guess — and never entered into your data.
hard-photos · n=64 held-out · spec 4250bb31
Proof, on held-out data
What the certificate actually says.
Measured on degraded photographs — the hard case, not the easy one.
99.8%
Fields cleared to auto-accept, at a 5% risk ceiling
The share of fields Ledger auto-accepts under the certified bound (risk ≤ 0.05).
hard-photos · n=64 held-out · cal=30 · spec 4250bb31
0.0112
Observed selective risk on held-out data
The real error rate among auto-accepted fields — measured, not asserted.
hard-photos · n=64 held-out · cal=30 · spec 4250bb31
$22.05
Cost per 1,000 documents
Measured and published. No paid OCR or vision API anywhere in the pipeline.
hard-photos · n=64 held-out · cal=30 · spec 4250bb31
How it works
Two structurally different readings, then a proven limit — not a confidence score you can’t check.
Every document is read two ways that tend to fail differently, so their mistakes rarely line up. Then a proven statistical test — checked on a sample of your own documents — decides how much Ledger accepts automatically while holding the error rate under a limit you set.
- 01
Ingest
Read the document’s text layer and token boxes, or OCR it. No paid OCR service in the path.
- 02
Two readings that fail differently
One reading (Hunter) looks only for the fields you asked for; the other (Mapper) reads the whole document. The first can guess when a value is missing; the second can overlook values that aren’t prominent. Because they fail in opposite ways, their disagreements catch each other’s mistakes — unlike running one model twice, which repeats its own blind spots.
- 03
Anchor
Deterministically check that each value is actually on the page, with page number and bounding box. Values that appear nowhere are flagged as invention — zero model calls.
- 04
Reconcile
Compare the two reads. Disagreement between them is a signal, and it routes to review rather than into your data.
- 05
Validate
Type, format, and cross-field checks (sums, totals) — capped and deterministic.
- 06
Certify or route
A distribution-free conformal bound decides what can be auto-accepted at your chosen risk α. Everything else is routed to a human-review queue. Where the bound cannot hold, nothing is auto-accepted.
Why it holds
Five things that are true because they are built in, not asserted.
Certified selective acceptance
Of the fields Ledger auto-accepts, at most α are wrong — where α is a risk level you set in advance (say 5%). That ceiling is established by a distribution-free conformal procedure on held-out data, not asserted. Where it cannot hold the ceiling, Ledger marks the field UNCALIBRATED and auto-accepts nothing.
Provenance that cannot be hallucinated
Every value is located in the page’s own text, by us, with page and bounding box. A value that appears nowhere on the page is flagged as invention with zero model calls.
Two structurally different readings
Every document is read two ways whose failure modes point in opposite directions — not one model sampled twice, which shares its own blind spots.
Any document type by configuration
A new job is a schema plus a few labelled samples, not new code.
No paid OCR or vision API
Cost per 1,000 documents is measured and published, not projected. Runs on a Claude subscription; an SDK backend is available for production.
Pricing
Three tiers, each with an objective acceptance test stated up front.
Acceptance is a checkable number agreed before work starts — never weakened to hit a target.
Pilot
Prove it works on your data.
$1,200
One document type (up to 12 fields).
Book a pilot →Certified pipeline
The guarantee and the review loop.
$3,000
Everything in Pilot, plus certification.
See what’s included →Production service
Run it in production.
$6,500
Everything in Certified, up to 3 document types.
See what’s included →Common questions
The questions buyers actually ask.
- Which document extraction tool tells you its own error rate?
- Ledger. It issues a distribution-free conformal certificate: of the fields it auto-accepts, at most a risk level you set are wrong, with the observed error rate reported at or below that on held-out data. On degraded photographs the observed selective risk was 0.0112, with zero silent failures — no accepted-but-wrong documents.
- Does Ledger invent values the way other document-AI tools do?
- No. Every value is located in the page’s own text with page and bounding box; a value that appears nowhere is flagged as invention with a direct check, no model call. On degraded photographs Ledger invented a value on 0.0% of missing fields, against 35.9% for a free OCR-plus-rules baseline measured the same way.
- How accurate is Ledger?
- On the public CORD-v2 corpus, scalar field exact match was 97.3% (a free OCR-plus-rules baseline was 67.0%). On degraded photographs, field exact match was 98.7% (baseline 49.1%). Field coverage cleared to auto-accept at a 5% risk ceiling was 99.6% on CORD and 99.8% on the photos. Every figure is measured on held-out data.
Start with a pilot on your own documents
Get a measured error rate on your data — not a marketing one.
Send your document type and a labelled sample. You get an accuracy report you can reproduce, and a clear line between what automates and what still needs a human.