Converting a bank statement - a dedicated converter or ChatGPT?
ChatGPT can read a PDF bank statement and give you a table, and for one short statement that is often enough. The risk is quiet errors, such as a skipped row, a flipped sign or a made-up line, in a result that looks finished. Whichever tool you use, check that opening balance plus transactions equals the closing balance before you rely on it.
Last updated: November 2, 2026
You may already pay for ChatGPT or a similar assistant, it reads PDFs, and it can produce a table or an Excel file on request. Whether you need anything else for bank statements depends on how many statements you handle and how much a silent error would cost you.
What a chat assistant does well
- One-off jobs. For a single two-page statement you want to look at in a spreadsheet, asking an assistant is fast and needs no new tool.
- Odd layouts. A model can make sense of a document no template was written for: a statement from a small local bank, a letter listing a few charges, a screenshot.
- Questions on top of the data. “How much did I spend on travel in March?” is a question, not a conversion. A chat model is good at that.
Where it goes wrong
A language model reads the statement and writes out what it thinks the table says. It does not copy the numbers mechanically. Most of the time the output matches the PDF. When it does not, the mistakes are the kind that are hard to see:
- Skipped rows. Long statements are the usual case. Rows from the middle of a page, or a whole page, can be left out while the table still looks complete.
- Flipped signs. A refund ends up as a payment, or the other way round.
- Merged or split lines. Two transactions on the same day with the same payee may come back as one row.
- Invented rows or totals. Models sometimes produce plausible lines that are not in the document, or report a total they did not actually calculate.
- Different answers each time. Run the same statement twice and you can get two slightly different tables, which makes repeat work hard to audit.
Guides that recommend ChatGPT for statements say the same thing in their own words: check the output, because it can miss transactions. None of them point to a measured error rate, and we have not found one either.
The check that works for both
Whatever produced the table, this test tells you whether rows are missing or wrong:
opening balance + money in − money out = closing balance
Take the opening and closing balances from the PDF, not from the generated table, and do the sum in Excel with a formula. If it matches to the cent, no amount is missing or changed, though dates and descriptions can still be off. If it does not, the guide on a converted statement that does not balance shows how to find the row.
For long statements, add a running-balance check: compare your own running total with the balance the bank prints after each line. The first row where they differ is where the problem is.
How a dedicated converter is different
A converter like Rowkeel reads the characters and their positions from the PDF’s text layer and puts them into columns using rules for the bank’s layout. Run it twice on the same file and you get the same rows. Then it does the balance test above itself: opening balance plus all rows has to equal the closing balance, and every row is checked against the running balance where the bank prints one. If something does not add up, it tells you by how much and highlights where.
Other practical differences:
- Privacy. Rowkeel runs in your browser and does not upload the PDF. A chat assistant processes the file on its provider’s servers. See is it safe to upload bank statements online? for what that means.
- Import formats. Besides Excel and CSV, the converter writes QBO and OFX files and a Xero CSV that accounting software can import directly. Getting a chat model to produce a valid QBO file is possible but fiddly, and an invalid one is rejected on import.
- Volume. Twelve monthly statements are twelve drag-and-drops, with the same column layout every time.
Where the converter falls short
- Scanned statements are not supported. If the PDF is a picture of a paper statement with no text layer, the converter reports it as a scan and stops. A chat model with image input can at least try. See the guide on scanned bank statement PDFs.
- Bank coverage. Banks with a dedicated layout read most reliably. Pages marked Beta are built from published statement layouts and have not yet been confirmed on many real statements. Other banks are converted as unlisted banks (banks without their own page), where the balance check is the main signal of whether it worked.
- No questions. It gives you rows, not answers about them. Put the export into a spreadsheet, or into an assistant, for analysis.
A sensible way to combine them
Many bookkeepers end up using both. Convert the statement with a tool that checks the balances, so the rows are known to be complete. Then, if you want, give the clean CSV to an assistant to categorise or summarise. The numbers stay exact, and the model only sorts and summarises them.