Extracting Data From Documents With AI
Last updated:
Why this is the project to start with
Somebody in your business opens a document, reads it and types what it says into a system. It is high volume, low judgement, and the correct answer is verifiable because it is written on the page.
That combination makes extraction the safest and most measurable AI project available. There is no ambiguity about whether it worked: the invoice number either matches or it does not.
How it works end to end
- The document arrives — email attachment, upload, scanner, shared folder
- If it is an image or a scan, OCR converts it to text
- The model extracts the fields you defined, returning structured data
- Each field comes back with a confidence indication
- High-confidence records post automatically; the rest go to a review queue
- A human corrects the queue, and those corrections become evaluation data
Step five is the whole design. Extraction without confidence routing is a system that puts occasional wrong data into your database, which is worse than no automation at all.
What accuracy to expect
| Document type | Typical field accuracy | Auto-post rate |
|---|---|---|
| Clean digital PDF invoices | 97–99% | 85–95% |
| Emailed orders, varied formats | 93–97% | 70–85% |
| Good-quality scans | 92–96% | 65–80% |
| Photographed documents | 85–93% | 40–65% |
| Handwritten forms | 70–88% | 20–45% |
These are field-level figures from projects we have run. The auto-post rate matters more than raw accuracy: it is the proportion of documents nobody has to touch, which is what actually saves time.
Confidence routing in practice
Not every field matters equally. A misread purchase order number is expensive; a misread delivery instruction usually is not. So thresholds are set per field.
- Critical fields — amounts, identifiers, dates — get a high threshold
- Descriptive fields get a lower one
- Any total that does not add up routes to review regardless of confidence
- A supplier never seen before routes to review on the first few documents
The cheapest accuracy improvement available is not a better model. It is a validation rule that checks the line items sum to the total.
Validating against what you already know
The most valuable checks are the ones that use your own data. Does this supplier exist? Does the purchase order number match an open order? Is the price within tolerance of the agreed rate?
These catch errors no model-level confidence score can, because they compare the extraction against reality rather than against the model's own certainty. Every extraction project we build has more validation code than model code.
Rolling it out without risk
- Weeks 1–2: run in shadow. Extract everything, post nothing, compare to what humans typed.
- Weeks 3–4: auto-post only the highest-confidence documents from known suppliers.
- Month 2: widen the thresholds as the evidence supports it.
- Ongoing: review the corrections queue weekly and feed it back into the evaluation set.
The shadow period is what makes this safe, and it produces the business case at the same time: at the end of two weeks you know exactly what proportion would have posted correctly.
Frequently asked questions
How many document formats can it handle?
What about handwriting?
Does it work in other languages?
What happens to documents it cannot read?
Have a task that involves reading, sorting or drafting?
Send us a handful of real examples. We will tell you what accuracy is achievable before you commit to anything.
Related services
What we build for problems like this one