StatementCheap

Convert bank statements from PDF to CSV

Get a clean CSV file from any PDF bank or credit card statement, ready to import into a spreadsheet, budgeting app or accounting software.

  • 5 free pages every day, no sign-up
  • Checked against the statement's balances
  • Files never stored

Drop PDF statements here

or choose files. Any bank, any country. Scanned PDFs work too.

5 free pages every day. No sign-up.

🔒 Read on Cloudflare's network · files never stored · never used to train AI

Why CSV

CSV is the most portable format there is. Google Sheets, Excel, Numbers, budgeting apps, accounting software and databases all read it. If you don't know which format a tool wants, CSV is usually a safe bet.

The catch is that most banks only give you a PDF for older statements. StatementCheap turns that PDF into a CSV with one row per transaction, so you can import it anywhere.

What's in the file

  • A header row: Date, Description, Amount, Balance, Reference
  • One row per transaction, in statement order
  • Dates in one unambiguous format, YYYY-MM-DD
  • Descriptions joined onto one line, with extra spaces removed
  • Signed amounts: negative for money out, positive for money in
  • The running balance and check or reference number, when the statement prints them

Need separate debit and credit columns instead? Choose CSV (debit/credit) when you download.

Before you download, we compare the transactions with the statement's opening and closing balances. If they don't add up, we tell you and show you which rows to look at.

CSV problems we avoid

Hand-made CSVs from PDFs tend to break imports in the same few ways. Here is what to watch for, whether you use a converter or not.

Split debit and credit columns

Some tools want one amount column with negative numbers for money out. Others want separate debit and credit columns. Mixing the two up flips every transaction. Our standard CSV uses one signed amount column, which most importers expect, and the debit/credit version covers the rest. If you only have a signed column, =IF(C2<0,-C2,"") in a spreadsheet pulls out the debits.

Mixed date formats

A file that mixes 03/04/2026 and 2026-04-03 confuses importers, and day-month versus month-day is a classic trap. Our CSV writes every date as year-month-day, which can't be read the wrong way round. The QuickBooks and Xero files use the date formats those imports expect.

Descriptions that break the file

Merchant names often contain commas and quote marks. If those values aren't quoted properly, the columns shift and the import fails. Our files quote those fields so the commas stay inside the description. They're also saved as UTF-8 with a byte-order mark, so Excel shows accented names like Café correctly.

Excel reformatting on open

If you open a CSV in Excel and save it again, Excel may change dates and long reference numbers. Import the downloaded file directly into your target tool when you can. If you want to work in a spreadsheet, download the Excel version instead.

Common destinations

  • Google Sheets or Excel: open or import the CSV, or download XLSX directly from the Excel converter.
  • QuickBooks: choose QuickBooks CSV for a 3-column file (Date, Description, Amount, with MM/DD/YYYY dates) or download a .qbo Web Connect file. See PDF to QBO.
  • Xero: choose the Xero CSV option, laid out for Xero's statement import. See bank statement to Xero and our Xero CSV format guide.
  • Budgeting apps and personal finance tools: most accept a generic CSV. Some prefer OFX or QFX, which we also export.

Already have a CSV from your bank and need a QuickBooks file? Try the CSV to QBO tool.

How it works

  1. Download your statement PDF from online banking.
  2. Upload it on the home page. Up to 200 pages and 25 MB per file.
  3. Check the reconciliation result.
  4. Download CSV, or any other format you need.

Pricing

Convert 5 pages every day for free, with no account. After that, a $6 pack covers 150 pages and never expires. Monthly plans start at $9 for 500 pages. See pricing for every plan.

We don't store your files. Statements are processed in memory, and the converted rows are sent back to your browser and not kept on our servers.

Works with statements from any bank, including Chase, Bank of America, Wells Fargo, Capital One, Barclays and HSBC.

FAQ

Does the CSV have a header row?
Yes. The first row names each column, which makes mapping easier in tools that ask you to match columns.
How are debits and credits shown?
The standard CSV has one signed Amount column: money out is negative and money in is positive. The CSV (debit/credit) download splits them into two columns of positive numbers.
Can I convert a credit card statement to CSV?
Yes. Purchases come through as negative amounts and payments or refunds as positive, and we check the totals against the statement's previous and new balances.
My bank already offers CSV downloads. Do I need this?
Not for the months your bank covers. Bank exports are free and come straight from the source. A converter helps for older statements, closed accounts and PDFs other people send you.
Is my statement saved anywhere?
No. Files are processed in memory and not stored. Extraction runs on Cloudflare Workers AI, which doesn't keep inputs or outputs after the response and doesn't train on them.