$StatementProof

100% client-side · zero uploads

Convert bank statements to CSV — with the math checked.

Every transaction is reconciled against your statement's own opening balance, closing balance, and running total before you export. Click any row to see the exact spot on the PDF it came from. Free, and your statement never leaves this tab.

Reconciled, not just guessed

Balance chain, opening/closing totals, and date sanity are checked automatically — and we say so plainly when a statement can't support a check, instead of a fake green badge.

See where every number came from

Click a row and the source PDF page renders beside it with the exact text highlighted. Nothing is a black box.

QBO, OFX, QFX, CSV, Excel — free

Export straight into QuickBooks or Xero format. No per-page pricing, no subscription.

Why "reconciled" instead of "99% accurate"

Most bank statement converters advertise an accuracy percentage. It's a number nobody can check — there's no methodology attached, and the file was uploaded to a server you can't inspect. This tool takes a different approach: instead of asking you to trust a percentage, it checks its own output against the numbers already printed on your statement. Opening balance plus every extracted transaction has to equal the closing balance. If your statement prints a running balance per row, each row is chained against the one before it. If either check fails, or can't run because the statement doesn't support it, you're told exactly that — not shown a green checkmark regardless. See the full breakdown onhow it works, or the guide onverifying any converted statement yourself.

Why "never uploaded" is enforced, not promised

Every page on this site is served with a Content-Security-Policy header ofconnect-src 'none'. That's a browser-level instruction, not a claim in a privacy policy: the page is physically unable to make a network request. You can verify it yourself — open your browser's Network tab, convert a statement, and watch nothing go out. The privacy page walks through exactly how to check, and the guide onwhether it's safe to upload a bank statement anywherecovers what's actually at risk if you don't check.

Which banks are actually supported

Five banks have dedicated profiles with bank-specific parsing hints — Chase, Bank of America, Wells Fargo, American Express, and Capital One. Any other bank's statement still runs through the geometric parser, which detects columns from position rather than a fixed template, so it isn't limited to those five. What it can't do: read a scanned or image-only PDF — it needs the text layer a bank's own PDF export includes. See the supported banks page for exactly what's verified, and when.