Bank Statement Hub

How to convert a PDF bank statement to CSV

By Satwinder Singh, Founder & Developer ·

CSV is the most boring file format there is, which is exactly why everything accepts it. Accounting software, budgeting apps, tax tools, a spreadsheet your accountant built in 2014: they'll all take a CSV.

Banks, on the other hand, love PDFs. So at some point you end up needing to get one into the other. There are a handful of ways to do it, and they're not equally good.

Option 1: Copy and paste

Select the transactions in your PDF reader, copy, paste into a spreadsheet.

It sounds like it should work. Sometimes it nearly does. More often you get every row crammed into one column, descriptions split across two lines, page headers wedged into the middle of your data, and amounts that Excel thinks are text.

It's fine for ten rows. For a full statement, it's a slow way to make mistakes.

Option 2: Excel's "From PDF" import

If you have Excel for Microsoft 365 or Excel 2024 on Windows, there's a built-in option: Data > Get Data > From File > From PDF. Excel scans the PDF, shows you the tables it found, and lets you load them into a sheet.

When it works, it's genuinely good. The catch:

  • It's Windows only. Excel for Mac doesn't have it.
  • It only reads PDFs with real text in them. A scanned statement gives it nothing.
  • Statements often come out as one table per page, so a five-page statement means stitching five tables together, then deleting the repeated headers and the "balance brought forward" rows.

Worth trying if you're on Windows and the statement is a clean, downloaded PDF.

Option 3: Adobe Acrobat's export

Acrobat Pro (the paid version) can export a PDF to Excel. It handles layout better than copy and paste, but it's guessing at table structure from the visual layout, so you'll still spend time fixing merged cells and split rows. It's a reasonable choice if you already pay for Acrobat. Probably not worth subscribing for this alone.

Option 4: A converter built for bank statements

General PDF converters treat a statement like any other document. A bank statement converter knows what it's looking at: a date, a description, an amount, maybe a running balance, on every row.

That's what BankStatementHub does. You upload the PDF, pick the pages with transactions, and it pulls out each row. If the statement prints a running balance, every row is checked against the one before it (previous balance plus this amount should equal this balance), so a misread row shows up flagged instead of hiding in your data. You review it next to the original page, then download CSV.

Now, the part nobody warns you about: opening the CSV

You've got a clean CSV. Then you double-click it, Excel opens it, and before you've touched anything, it has already changed your data. Here's what to watch for.

Dates get "helped". Excel converts anything that looks like a date into its own date format, using your computer's regional settings. If your file says 03/04/2026 and your laptop is set to US English, that's now 4 March, even if the bank meant 3 April. Save the file, and the wrong date is now permanent.

Long numbers lose digits. Reference numbers longer than 15 digits get rounded and displayed as 4.12E+15. If a payment reference matters to you, that's a problem.

Leading zeros vanish. A sort code or reference like 004512 becomes 4512.

The fix for all three is the same: don't double-click. Open a blank workbook, go to Data > From Text/CSV, and set the problem columns to Text before loading. Or open the CSV in a text editor first, just to see what's really in it.

If you only need the data in Excel and don't need a CSV at all, download an Excel file instead. Our Excel export writes dates as real Excel dates, so there's nothing for Excel to reinterpret.

Plain CSV vs. a software-specific CSV

"CSV" doesn't mean one exact layout. QuickBooks wants three or four specific columns. Xero has its own template. Quicken for Windows wants seven columns in a fixed order with US-style dates.

If you're converting so you can import somewhere specific, export in that software's layout instead of a generic CSV. It saves a round of renaming columns and reformatting dates. We have guides for QuickBooks Online and Xero if that's where you're headed.

Before you trust it

Whatever method you use, do two quick checks:

  1. Count. The number of rows should match the number of transactions on the statement.
  2. Totals. Opening balance, plus all the amounts, should equal the closing balance printed on the statement.

If both check out, your CSV is right. If not, the difference between the two balances usually tells you exactly which amount to go looking for.