Benchmarks
Self-reported accuracy, speed, and coverage as of 2026-07-27 (version 2026.Q3). Refreshed quarterly.
Accuracy and speed by format
| Format | Parsing success | Row accuracy | Median runtime | p95 runtime | Sample |
|---|---|---|---|---|---|
| CSV | 99.7% | 99.9% | 180 ms | 520 ms | 412 |
| XLSX | 99.2% | 99.8% | 230 ms | 640 ms | 208 |
| PDF (digital) | 96.4% | 98.1% | 920 ms | 2400 ms | 486 |
| PDF (scanned) | 84.2% | 92.3% | 3800 ms | 9600 ms | 138 |
| Receipt PDF | 95.8% | 97.2% | 1100 ms | 3200 ms | 40 |
Bank coverage
Total supported banks: 55. Coverage by region:
- US: 24 banks
- UK: 10 banks
- EU: 2 banks
- Global: 2 banks
- IN: 7 banks
- AU: 5 banks
- AE: 5 banks
Full list at Supported banks.
Supported formats
- CSV (Comma-separated values): Any dialect, any column order. Header row auto-detected.
- TXT (Delimited text): Tab, semicolon, or pipe. Fallback for legacy exports.
- XLSX (Excel workbook): First sheet by default. Multi-sheet workbooks are enumerated.
- XLS (Legacy Excel): Read via the same XLSX pipeline.
- PDF (PDF statement): Digital PDFs parsed as text. Scanned PDFs routed through OCR.
Methodology
Dataset: The benchmark dataset is a curated set of anonymized statements donated by users under an internal test license, plus synthetic statements generated from public bank templates. It spans checking, savings, credit card, and business accounts across US, UK, EU, IN, AU, and AE banks. Sample size 1284 statements.
Environment: Runs execute on a single Chromium instance with 4 vCPU and 8 GB RAM. Parsing happens in-browser via the same WASM pipeline shipped to end users. OCR times include model warm-up on the first page.
Refresh cadence: Quarterly. Next scheduled run: 2026-10-15.
Audit trail: Every run writes a fingerprint into src/generated/seo-fingerprint.ts and the accompanying numbers in this file are updated in the same commit.
Programmatic access
The same numbers are available as JSON at /api/public/v1/benchmarks. See the API documentation for the full list of public endpoints.
How to compare fairly
Vendor accuracy numbers are only comparable when the datasets are. Ours is described above. If you are running your own comparison, use the same set of statements across every tool, use the same definition of a correct row, and publish the number of samples per format. A 99 percent claim on 20 samples is not the same as a 96 percent claim on 500 samples.