Statement2CSV bank statements → spreadsheets, without uploading them anywhere

Guide 01 / The conversion process

How to convert a bank statement PDF to CSV

A bank statement looks like a table, but a PDF usually does not store it as a table. It stores many small pieces of text with coordinates that tell a PDF viewer where to draw them. Converting the statement means rebuilding useful rows from those pieces.

First, check that the PDF contains text

A text-based PDF contains selectable characters. Try dragging your cursor over a transaction description and copying it. If you can paste readable words into a text editor, the statement is probably text-based and suitable for this converter.

A scanned PDF is different. Each page is just an image, even if it looks sharp on screen. You cannot select individual words, or copied text is blank. Scans need optical character recognition, usually called OCR. Statement2CSV does not use OCR, so you should download the original PDF from your bank rather than scan or photograph a paper statement.

How Statement2CSV rebuilds the rows

When you choose a PDF, pdf.js reads its text inside your browser. The converter groups text fragments that share the same vertical position, sorts each group from left to right, and joins the fragments into a line. It then looks for transaction patterns: a date, a description, and one or more money amounts.

Column detection matters because statements often put the transaction amount beside the running balance. Those numbers mean different things. The amount shows what entered or left the account on that transaction. The balance shows the account total afterward. When a line has multiple monetary values, the converter treats the first as the transaction amount and the last as the running balance. The free preview lets you check that this matches your bank's layout before exporting more than 15 rows.

Quick quality check: compare three rows near the top, middle, and bottom of the result with the PDF. Check the sign on withdrawals, the description, and whether the balance follows the statement.

What the CSV contains

The exported file has one transaction per row. Its standard columns are date, description, amount, and balance when the source statement includes a running balance.

date,description,amount,balance "07/12/2026","GROCERY MARKET",-42.18,1840.62 "07/13/2026","SALARY",2500.00,4340.62

CSV is plain text, so almost every spreadsheet and accounting program can read it. Negative amounts represent money leaving the account. Dates stay in the format printed by the bank, which avoids silently changing day and month order.

Open the result in a spreadsheet

In Excel, use Data > From Text/CSV, choose the downloaded file, confirm that the delimiter is a comma, then select Load. In Google Sheets, open a sheet and use File > Import > Upload. Choose the CSV and select comma as the separator if Sheets does not detect it automatically.

Convert your statement

Use the free preview to inspect the first 15 extracted rows before deciding whether the format works for your bank.

Try Statement2CSV free