← Tablecut

Bank statement PDF to Excel

Your bank sends a PDF. Your spreadsheet wants rows. Here is what actually works, what it costs you, and how to tell when the conversion quietly went wrong.

First: does your bank offer CSV?

Before anything else, log into your bank and look for an export option — CSV, OFX, QIF or Excel. Most retail banks have one, usually hidden under Statements, Download or Export, and often limited to the last 12 or 24 months.

If it is there, use it and stop reading. A CSV from the bank is the actual data. Everything below is reconstruction — reading numbers back off a printed page — and reconstruction can be wrong in ways an export never is.

You are still here because one of these is true: the statement is older than the export window, it came from a closed account, it arrived by email from a third party, or your bank simply does not offer it. That is the normal case, and it is why this problem exists at all.

The four ways, and what each costs

WayWhat it costs you
Retyping by handTime, and transcription errors. A wrong digit in a statement does not announce itself — you find it weeks later when a total does not match.
An online converterYou upload the statement to a company you know nothing about: account number, balance, every payee, your address. Free ones fund themselves somehow.
A Python script (pdfplumber, camelot)Nothing, if you write code. Everything, if you do not.
A tool that runs in your browserNothing leaves the machine, but you have to check the output yourself — which you should be doing anyway.

Why the upload matters more than people admit. If the statement is yours, uploading it is your risk to take. If it belongs to a client — an accountant, a bookkeeper, a lawyer handling someone's affairs — it is not your risk to take. Sending a third party's financial records to a processor you have not vetted is the kind of thing that sits badly in an audit, and in the EU it is a transfer of personal data you would have to be able to justify.

Why the columns come out wrong

A PDF does not contain a table. It contains pieces of text, each with a position on the page. Any tool that "extracts a table" is guessing where the columns were, from the gaps. That guess fails in four predictable ways:

Check the result before you trust it

Whatever tool you use, do this every single time. It takes twenty seconds.

  1. Count the rows. The statement usually tells you how many transactions it has. If the spreadsheet has fewer, something was dropped.
  2. Sum the amounts and compare to the statement's own total. This is the check that catches a dropped digit, a merged cell and a lost row all at once. If it matches, the conversion is almost certainly clean.
  3. Check the first and last row against the paper. Extraction errors cluster at the edges, where headers and footers confuse the tool.
  4. Look for numbers in the description column. That means two columns merged.

The rule that matters: a converter that fails loudly is worth more than one that fails quietly. If a tool hands you a clean-looking table with one wrong number in it, you have a problem you will not find until it costs you something.

If the statement is a scan

Open the PDF and try to select a line of text with your mouse. If you cannot, there is no text layer: it is an image. No extraction tool can help, because there is nothing to extract. You need OCR first — Adobe Acrobat, Tesseract, or your scanner's own software — and then you are reading numbers a machine guessed from pixels, so the total check above stops being optional.

Tablecut → Drop a PDF, check the table on screen, copy it into your spreadsheet. The file is read inside your browser and never uploaded. Free to use.

Written by the people who built Tablecut, a browser tool that does this without uploading your file. © 2026 Tchubi. All rights reserved.