Meet @O.

Webinar on 18 November: Survive The AI EraWebinar: Survive The AI EraRegister
Free 30-min AI audit

Product & engineering · October 2026

Reading is easy. Getting it right is engineering.

High accuracy on accounting documents starts with the model. Reliability comes from how we test it, check its answers, and handle what it cannot read.

Accuracy you can inspect.

An invoice total off by one digit can look perfectly plausible. A bank statement can have accurate amounts and still be missing a transaction. In accounting, these distinctions matter.

We evaluate extraction field by field, inspect failures, and test changes against reference answers. This report presents Ogment’s updated production results and a historical example of how we improve the system.

Tax amount accuracy · Ogment
99.83%
Total accuracy · SROIE receipts
99.90%
Bank statement files completed
99.75%

Evaluation sample: For the updated evaluation, blurry or dirty documents were replaced with other documents. The results describe this replacement sample, not the full range of incoming document quality. The bank-statement sample contains 400 files. These results are separate from the original September benchmark.

These are extraction results, before accounting judgment or human correction. A field score is not the percentage of entirely correct documents. The benchmark does not measure Swiss VAT treatment, account assignment, or end-to-end bookkeeping accuracy.

The document is the evidence.

A structured value should be easy to trace back to its source. An arithmetic match supports review; it does not prove tax treatment or every field correct.

  • Invoices

    Subtotal plus printed tax should equal the total. Each extracted value still needs to agree with the document.

  • Difficult receipts

    When a tax line is unclear, an inferred amount is not printed evidence. A missing value and a confidently wrong value create different work for the reviewer.

  • Bank statements

    Opening balance plus signed transactions should equal the closing balance. A missing or reversed row can break this check even when other amounts were read accurately.

There is no single “accuracy.”

Document fields and matching scores are different tasks. We report them separately so a strong result on one cannot hide a weakness on another. The figures below show the updated production results; they are not a rerun of the earlier four-setup comparison.

Exact-match accuracy by field

  • Printed tax · aggregate score

    • Ogment production: 99.83%
  • Printed tax · CORD receipts

    • Ogment production: 99.61%
  • Total amount · SROIE receipts

    • Ogment production: 99.90%
Zoomed axis: 99.50–100%. The aggregate tax score and individual dataset scores have different scopes; they are shown as separate reported metrics. Higher is better.

Supplier and line-item matching scores

  • Supplier name (matching score)

    • Ogment production: 99.79%
  • Supplier address (matching score)

    • Ogment production: 99.68%
  • Line-item descriptions (matching score)

    • Ogment production: 99.64%
  • Line items with amounts (matching score)

    • Ogment production: 99.86%
Zoomed axis: 99.50–100%. These matching scores use different scoring rules from exact-match accuracy. They are not percentages of fully correct documents.

Clean invoices are only half the story.

Real receipts bring unfamiliar layouts, compact dates, and ambiguous tax lines. Looking at individual datasets makes the remaining errors visible, even after document-quality screening.

Incorrect or missing answers per 1’000

  • Printed tax · CORD receipts

    3.9 / 1’000

  • Total amount · SROIE receipts

    1.0 / 1’000

Ogment production · lower is better. Calculated as (100 − reported accuracy) × 10, rounded to one decimal. These are normalized rates, not observed counts.
  • Read the printed tax. Don’t infer the treatment.

    Extracting the tax amount printed on a receipt is separate from deciding whether it is deductible or which VAT code applies. This benchmark tests the former.

  • Make the difficult cases visible.

    For a reviewer, a missing value and a confidently wrong value create different work. Future evaluations should measure both, plus which mistakes the system flags.

A failure becomes a test.

One earlier version often classified receipts as invoices. We revised the classification instructions and reran the same document set. The effect was large on one receipt dataset, and a small regression remained elsewhere.

Document classification, before and after

  • Real receipts · SROIE

    • Before: 24.52%
    • After: 99.39%
  • Real receipts · CORD

    • Before: 98.80%
    • After: 100.00%
  • Synthetic receipts

    • Before: 83.28%
    • After: 100.00%
  • Synthetic invoices

    • Before: 99.95%
    • After: 99.84%
Historical September 2026 comparison on the same original 4’801 documents, not the updated replacement sample. Axis: 0–100%. This demonstrates a debugging improvement; a separate held-out evaluation is needed to establish generalization after tuning.
  1. Inspect the failure Was the source unreadable, the instruction ambiguous, or the extracted structure incomplete?
  2. Make the rule explicit Use the failure to clarify expected behavior, including how to represent missing information.
  3. Check every slice Measure improvements and regressions across document types, then confirm on unseen documents.

Every row has to be found.

An accurate amount on a matched transaction is useful. It does not tell you whether the entire statement was extracted. We report file completion separately.

Bank statement file outcomes

  • Ogment production

    • Completed after retry: 399
    • Not completed: 1
400 files in the updated sample. Poor-quality files were replaced, so the earlier 12-file exclusion does not apply. Completion means usable output, not correctness of every transaction.

Statement details and row score

  • Closing balance

    • Ogment production: 99.75%
  • Account number

    • Ogment production: 99.75%
  • Statement period

    • Ogment production: 99.75%
  • Transaction rows (matching score)

    • Ogment production: 99.88%
Zoomed axis: 99.50–100%. Closing balance, account number and period are field-accuracy results. The transaction-row matching score also accounts for missed and extra rows and uses a different scoring rule.

Matched-transaction accuracy excludes rows that could not be paired with the reference. A complete evaluation also needs missed-row and extra-row measurements.

Accuracy and review belong together.

The next question is practical: how accurate are the documents that pass validation, and how many require review? Field-level results alone do not answer it.

The proposed metric is whether every required critical field is correct on accepted documents, before human correction. It needs independently labeled documents and thresholds based on validated system signals. No calibrated document-acceptance result is claimed here.

The denominator matters.

A high score is meaningful only when the task, test set, and scoring rules are clear.

  • Reference answers

    Public datasets provide labeled document fields. Missing outputs count as errors when a reference answer exists. Fields without reference labels are excluded from that field’s score.

  • Exact match

    Dates are normalized to the same date representation. Amounts must match to the cent. Document numbers are normalized for spaces, punctuation, and case.

  • Evaluation sample

    For the updated evaluation, blurry or dirty documents were replaced with other documents. The results describe this replacement sample, not the full range of incoming document quality. The bank-statement sample contains 400 files. These results are separate from the original September benchmark.

  • Comparisons need the same protocol

    A replacement sample changes what a score describes. Updated production scores cannot establish an improvement over the original sample or rank against models measured only on the earlier benchmark.

Original dataset inventory and scope

The original benchmark used CORD v2 (1’000 real Indonesian receipts), ICDAR 2019 SROIE (987 real Malaysian scanned receipts), Invoice OCR Synthetic (2’814 synthetic invoices and receipts), and Indian Bank Statements (400 synthetic files: 200 digital originals and their scanned copies). No client documents were used. The updated evaluation replaces blurry or dirty documents; the historical classification chart retains the original sample.

What these results do not establish

These results do not measure performance on arbitrary Swiss documents, tax treatment, chart-of-accounts selection, reconciliation accuracy, entirely correct documents, or production accuracy after human review. Public benchmark exposure may affect model results. Small differences should not be treated as statistically established without uncertainty estimates.

Validation checks and second-pass extraction

A separate September run introduced arithmetic checks and a second extraction pass on a different 5’301-document set. Changed values are not necessarily corrected values. Before claiming an improvement, compare both passes to independent ground truth and count newly introduced errors. Arithmetic consistency alone cannot prove correctness.

Updated figures are Ogment’s reported evaluation results. The historical classification values come from the September report. The research links illustrate evaluation presentation; they are not sources for Ogment’s scores.

Teo BorschbergCEO, Ogment

Book your free 30-min AI audit

  • Where your team’s hours go, mandate by mandate
  • Which workflows an AI agent can take over first
  • A clear AI ROI estimate for your firm
Company size