BankSheet

Bank Statement to CSV: Convert a PDF Bank Statement to a Clean CSV File

Upload a bank statement PDF and download a CSV you can open in Excel or Google Sheets or import into accounting software. Check the transactions and the balance first. The first 10 pages are free and need no account.

Drop a statement PDF

Text-based bank PDFs · debit/credit split · balance check · CSV or Excel. Uploads stay in memory ~60s.

No upload needed — see preview, balance check, and export.

Auto-delete after processing
Samples:
Sample ledger previewMock

Upload a PDF to replace with your transactions

Opening

$8,640.22

Closing

$14,081.54

Rows

6 shown

Status

Pass

DateDescriptionDebitCreditBalance
2026-03-03ACH PAYROLL CLIENT CO—4,200.0012,840.22
2026-03-04STRIPE PAYOUT—1,862.4014,702.62
2026-03-05AMEX EPAYMENT914.18—13,788.44
2026-03-06OFFICE RENT ACH2,100.00—11,688.44
2026-03-07VENDOR WIRE — SUPPLIES356.90—11,331.54
2026-03-10CLIENT INVOICE 1042—2,750.0014,081.54

How to convert a bank statement to CSV

  1. Download the statement PDF from your bank

    Download the statement period from online banking as a PDF. Downloaded PDFs have a text layer the converter can read; scans and photos do not.

  2. Upload the PDF to the converter

    Drop the PDF on the converter above or tap to choose it (up to 12 MB), or load a sample Chase, Barclays or Revolut statement first.

  3. Check the rows and the balance

    Review the extracted transactions and the balance panel, which compares opening balance plus the transactions with the closing balance on the statement.

  4. Choose columns and download CSV

    Pick Standard, QuickBooks or Xero columns and click the CSV download button. Excel (.xlsx) is available from the same screen.

Convert a bank statement to CSV: the columns you get

Standard exports include date, description, debit, credit, and balance when present on the statement. Debits and credits stay in separate columns, so the file reads like the statement itself.

Dates are written as YYYY-MM-DD and amounts are plain numbers without currency symbols or thousands separators, which keeps the CSV clean for spreadsheets and imports.

  • Standard: Date, Description, Debit, Credit, Balance
  • QuickBooks: Date, Description, Amount. Credits are positive; debits are negative Amount. Column CSV for bank import — not a .QBO / OFX file and not a direct QuickBooks push.
  • Xero: Date, Amount, Payee, Description, Reference. Amount signed the same way as QuickBooks preset; Payee and Reference are blank (fill in Xero or map later). Not a direct Xero API push.

PDF bank statement to CSV for QuickBooks and Xero

QuickBooks and Xero presets are column layouts for CSV or Excel, not .QBO or OFX files. The QuickBooks layout uses one signed Amount column (money in positive, money out negative); the Xero layout uses Date, Amount, Payee, Description and Reference columns, with Payee and Reference left blank.

Upload the file through the bank-statement import screen in your accounting software. Our import guides cover each step.

Bank statement to CSV with a balance check

A CSV that is missing one row still imports, and the gap only shows up at reconciliation. Before you download, the opening balance plus money in minus money out is compared with the statement's closing balance, within 0.02, and any difference is shown.

Already have a CSV from your bank? The free balance checker finds the exact row where a running balance stops adding up, in your browser.

UK bank statements to CSV: GBP and UK dates

Barclays, HSBC and NatWest statements are recognised automatically, and their dates are read the way they are printed: written months such as "2 Aug", "02 Aug 24" or "24 AUG", and numeric dates day-first (DD/MM/YYYY or DD-MM-YY), so 02/08/2025 becomes 2 August, not 8 February. When a row has no year, the year comes from the statement period printed on the statement. Amounts printed with a £ sign are read correctly, the currency is shown as GBP in the preview, and "balance brought forward", "balance carried forward" and Barclays' "Start balance" and "End balance" are picked up as the opening and closing balances.

Revolut statements print dates like "1 Jun 2024". An amount with a minus sign is money out, and an unsigned amount takes its direction from the running balance. For other UK banks one date order is used for the whole statement: a date like 25/08/2025 proves day-first, and a statement with a £ sign, a sort code or a UK bank name is read day-first by default. A date that cannot exist, such as 31/02, is kept as printed and flagged so you can check it. Barclays, HSBC and NatWest print the date only on the first transaction of each day; the rows after it take that date, and a description that runs over several lines is read as one row.

Text PDFs, scanned PDFs and file limits

BankSheet (getbanksheet.com) reads text-based PDFs, the kind you download from online banking. If a PDF is a scan or photo with no text layer, it is flagged as likely scanned and no rows are extracted, so download the statement again from your bank portal as a PDF.

Files up to 12 MB are accepted. The first 10 pages are free and need no account. After that, Starter is $29/month for about 200 pages and Pro is $79/month for 1,000 pages.

Frequently asked questions

How do I convert a bank statement PDF to CSV?

Upload your text-based PDF to the converter on this page, preview the extracted rows, choose the Standard, QuickBooks or Xero layout, then download CSV.

Will the CSV include the running balance?

Yes. Standard exports include date, description, debit, credit, and balance when present on the statement. The QuickBooks and Xero layouts leave the balance column out.

Is it free to convert a bank statement to CSV?

The first 10 pages are free and need no account. After that, Starter is $29/month for about 200 pages and Pro is $79/month for 1,000 pages.

Does BankSheet work with scanned PDFs?

BankSheet (getbanksheet.com) reads text-based PDFs, the kind you download from online banking. If a PDF is a scan or photo with no text layer, it is flagged as likely scanned and no rows are extracted, so download the statement again from your bank portal as a PDF.

Can I convert UK bank statements to CSV?

Yes for text PDFs. Barclays, HSBC and NatWest statements are read with UK dates (written months like "2 Aug" and DD/MM numbers) and £ amounts, and the currency is shown as GBP. Revolut statements are supported. For other UK banks one date order is used for the whole statement, and statements with a £ sign or sort code default to day-first. When a bank prints the date only on the first transaction of each day, the rows after it take that date.

Can I export a .QBO or OFX file instead of CSV?

No. The QuickBooks and Xero presets are column layouts for CSV or Excel, not .QBO, OFX or Web Connect files, and nothing is pushed into QuickBooks or Xero directly. You import the file through the bank-statement import screen in your accounting software.

Is my bank statement stored?

The PDF is processed in memory to extract the transactions and run the balance check, and it is not stored long-term (retention is about 60 seconds). Statement contents are not written to application logs. See the privacy page for details.

More free bank statement tools

  • Bank statement balance checker — Drop a bank CSV and see the exact row where the running balance stops adding up, plus likely missing or duplicate transactions.
  • Bank CSV to QuickBooks & Xero format — Turn any bank CSV export into the QuickBooks Online 3- or 4-column layout or the Xero bank statement template, with dates and signs fixed.
  • Duplicate transaction finder — Find duplicate transactions in a bank CSV, or merge overlapping exports and download one clean file without the double-counted rows.
  • OFX to CSV converter — Open an OFX, QFX or QBO bank download as a CSV: dates, signed amounts, payee, memo, check number and FITID, ready for Excel.
  • All free tools

Related guides

Bank-specific pages