PDFCellsOpen the converter

Convert a bank statement PDF to CSV

Open the statement in PDFCells and export it as a bank CSV: one row per transaction with Date, Description, Amount, Balance, Payee and Category, dates as 2026-03-02 and amounts signed so money out is negative. It is free and runs in your browser.

Updated

Steps

  1. Go to pdfcells.com and choose the PDF, or drop it on the page. Drop several files to open them as a batch. A password-protected PDF asks for its password.
  2. Each table opens in an editable grid next to the page. Totals that don't add up, balances that don't tie, text in a number column and cells OCR was unsure of are flagged. Fix any cell, merge or split columns, or undo.
  3. In the export bar choose Bank statement (OFX, QBO, Xero CSV), then the bank CSV format, and download.

Two kinds of CSV

ExportColumnsUse it for
Bank CSVDate, Description, Amount, Balance, Payee, CategorySpreadsheets, budgeting apps and accounting software that map CSV columns themselves.
Xero CSVDate, Amount, Payee, Description, Reference, Cheque NumberXero’s statement import (Xero and OFX guide).
Table CSVEach table as it appears in the grid (with Real numbers on, the default, amounts and dates are normalised; turn it off for text exactly as printed)Any table, not only statements. Several tables download as a .zip of CSV files.

Bank CSV details

Many statements print dates as month and day only (01/15), with the year only in the statement period. For the statement formats (OFX, QBO, Xero CSV and the bank CSV), PDFCells takes each date's year from the printed period, so December dates on a January statement get the earlier year. When the page prints no period, the export panel's Statement year picker asks for the year, and those formats stay off until you pick one rather than guess. In the Excel export these dates stay as printed text.

When the numbers don’t tie

OFX, QBO and Xero files are only offered when PDFCells' own checks say the numbers are consistent: with a balance column, every row's balance must equal the previous balance plus that row's amount; without one, the statement's summary must tie (opening + credits − debits = closing) and the transactions must add up to it. When a check fails, the export panel says why, with the page and row where it can. The bank CSV is the one format you can still download with a failed check, by ticking “Export anyway, I’ll check the numbers myself”.

Limits and cost

One file can have up to 300 pages. A batch holds up to 200 files and 2,000 pages in all.

Reading the PDF text and OCR are free, need no account and run in your browser. AI reading is optional: signed-in users get 25 free AI pages a day on the Fast model, then prepaid credits at Anthropic's token cost plus 15% (packs of $10, $25, $50), or no markup with your own Anthropic API key.

Questions

What is the difference between the bank CSV and the Xero CSV?

The bank CSV has Date, Description, Amount, Balance, Payee and Category with ISO dates. The Xero CSV follows Xero’s statement template: Date, Amount, Payee, Description, Reference and Cheque Number, with dates in DD/MM/YYYY or MM/DD/YYYY.

Why is money out negative?

Accounting imports expect one signed amount column. Money in is positive and money out is negative, whatever the statement printed: parentheses, a trailing minus, or separate Deposits and Withdrawals columns.

Can I get a CSV of a table that isn’t a bank statement?

Yes. Choose CSV in the export bar to download each table as it appears in the grid. Turn off Real numbers to keep amounts and dates exactly as printed.

Try it on your own file. Open a PDF in PDFCells, check the tables against the page, then download Excel, CSV, OFX or QBO. Reading text PDFs and OCR are free, need no account and run in your browser.

Open the converter

Related