Bank statement to CSV, checked against its own numbers.
Drop a PDF statement and get a clean CSV in seconds. Every row is reconciled against the opening balance, closing balance, and running total printed on the statement itself — so you know the export is right before you trust it.
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.
See where every number came from
Click a row and the source PDF page renders beside it with the exact text highlighted.
QBO, OFX, QFX, CSV, Excel — free
Export straight into QuickBooks or Xero format. No per-page pricing, no subscription.
What's in the CSV file
Four columns: Date, Description, Amount, Balance. Amount is signed — negative for a debit, positive for a credit — so a spreadsheet formula can sum a column directly instead of needing separate debit/credit fields. Balance is left blank on rows where the statement doesn't print a running balance, rather than guessed or interpolated. Rows are terminated with CRLF and fields containing a comma, quote, or newline are quoted per RFC 4180, so the file opens cleanly in Excel, Google Sheets, and Numbers without a broken-columns import wizard.
Importing into Excel or Google Sheets
Both open a .csvdirectly — double-click it, or use File → Import in Sheets if you want to control the destination sheet. The file is UTF-8 encoded with no byte-order mark, which is what both expect; if a CSV from elsewhere ever shows garbled characters after import, a missing or mismatched encoding declaration is almost always why.
Importing into accounting software
CSV is the universal fallback for QuickBooks, Xero, and Wave when a direct bank feed isn't available — useful for catching up old statements a live feed never saw. If your accounting software accepts QuickBooks Web Connect or OFX directly, that format carries more structure (an INTU.BIDand per-transaction IDs for duplicate detection) than CSV can. This tool exports both — see theQBO export if that fits your workflow better.
Why the balance column can be blank
Card statements and some checking statements don't print a running balance per transaction — only a beginning and ending balance for the whole period. Rather than invent a number, this converter leavesBalance empty on those rows and verifies the export a different way: opening balance plus every transaction equals the closing balance printed on the statement. Read more on thehow it works page.