PDF bank statement to Excel or CSV
Turn a PDF bank statement into a spreadsheet, without uploading it.
For bookkeepers, landlords and sole traders who get statements as PDFs and need rows they can sort and total. The conversion runs in your browser, checks every row against the running balance, and page 1 is free.
Convert
Drop a statement
Drop a PDF statement here or
Read in this tab with pdf.js. Not uploaded.
How it works
Three steps
Drop the PDF
Use the statement your bank lets you download. Text PDFs only; scans won't read.
Check page 1 free
See the rows found and how many reconcile with the running balance.
Download
Pay £22 once and download every page as Excel or CSV, for 24 hours.
Worked example
One invented statement, start to finish
30 transactions found across both pages; 30 of 30 reconcile with the running balance (row 1 is checked against the balance brought forward). The first 8:
| Date | Description | Out | In | Balance |
|---|---|---|---|---|
| 2026-08-01 | STANDING ORDER TO WINTERSLOW UNITS LTD WORKSHOP RENT AUG | 450.00 | 1868.44 | |
| 2026-08-03 | CARD PAYMENT TO CEF SALISBURY | 186.42 | 1682.02 | |
| 2026-08-04 | FASTER PAYMENT FROM BRIGHTWELL DENTAL INV 1041 | 1250.00 | 2932.02 | |
| 2026-08-05 | DIRECT DEBIT ADMIRAL INSURANCE VAN POLICY | 68.40 | 2863.62 | |
| 2026-08-06 | CARD PAYMENT TO SHELL WINTERSLOW | 72.18 | 2791.44 | |
| 2026-08-07 | CARD PAYMENT TO SCREWFIX DIRECT | 43.97 | 2747.47 | |
| 2026-08-10 | FASTER PAYMENT FROM MRS J HOLLOWAY INV 1042 | 385.00 | 3132.47 | |
| 2026-08-11 | DIRECT DEBIT OCTOPUS ENERGY | 84.81 | 3047.66 |
The "balance brought forward" line is dropped, and two-line descriptions (payment plus reference) are joined into one cell.
The CSV, exactly as it downloads
First 5 rows of the CSV for this sample, byte for byte. The Excel file has the same columns, with amounts stored as numbers.
Date,Description,Money out,Money in,Balance 2026-08-01,"STANDING ORDER TO WINTERSLOW UNITS LTD WORKSHOP RENT AUG",450.00,,1868.44 2026-08-03,"CARD PAYMENT TO CEF SALISBURY",186.42,,1682.02 2026-08-04,"FASTER PAYMENT FROM BRIGHTWELL DENTAL INV 1041",,1250.00,2932.02 2026-08-05,"DIRECT DEBIT ADMIRAL INSURANCE VAN POLICY",68.40,,2863.62 2026-08-06,"CARD PAYMENT TO SHELL WINTERSLOW",72.18,,2791.44
Price
£22 for a 24-hour batch
Convert as many statements as you need in 24 hours on this browser. Each file can be up to 50 pages.
Paid by card through Stripe. After paying you come back here with the batch active; drop your files again. Priced in pounds sterling. Stripe may add VAT where it applies.
Statement batch
- Every page converted, not just page 1
- Excel (.xlsx) and CSV downloads
- Running-balance check on every row
- 24 hours on this browser, up to 50 pages per file
- Cleared cookies or new device? Email your receipt to restore access
- Nothing uploaded, no account
Check page 1 free first. Scanned PDFs are not supported.
Questions
Before you pay
Is my statement uploaded?
No. The PDF is opened by pdf.js inside your browser tab and the table is built on your device. The page's security policy only lets it load files from convert.gptshopltd.com, and nothing is sent back. You can load the page, go offline and it still works. Stripe handles the payment and sends you a receipt; we see your email address and the payment, never your statement.
Which statements work?
PDFs with selectable text, the kind you download from online banking. It reads a date at the start of each line and amounts in the paid out, paid in and balance columns, which covers most UK and US bank layouts. Scanned or photographed statements don't work: a scan is a picture with no text in it, and this tool does not do OCR. The free preview tells you straight away. Try page 1 free before you pay.
How do I know the numbers are right?
Every row is checked against the running balance: previous balance, minus money out, plus money in, should equal the new balance. The page tells you how many rows reconcile and flags any that don't, so you know which lines to compare with the PDF.
What does £22 get me?
Full conversion of every page, with Excel and CSV downloads, for any statements you convert on this browser in the next 24 hours. Up to 50 pages per file. One payment, no subscription, no account.
What if my bank's layout doesn't convert well?
Email chris@gptshopltd.com with your bank's name and a description of what went wrong. Please don't send the statement itself. I use these reports to add bank layouts.
What if I clear my cookies or switch device?
The 24-hour pass is stored in this browser only, because there is no account. If you clear your browser data, use a private window or move to another device, the pass won't be there. Email chris@gptshopltd.com with your Stripe receipt and I'll restore access for the rest of the 24 hours. This is done by hand, so it isn't instant.
Will the CSV import into Xero or QuickBooks?
I haven't tested it against their import formats, so I won't promise it. The CSV has five columns: Date (YYYY-MM-DD), Description, Money out, Money in and Balance, exactly as in the preview above. Most accounting software lets you map columns on import; check your software's own import guide.
Who you deal with
Chris Elder, founder
I built this because the sensible way to handle a bank statement is to never send it to a stranger's server. The browser can do the whole job.
- Ex-Amazon. Built and led 3P Grocery operations globally.
- Former British Army officer, Royal Logistic Corps.
- GPT Shop Ltd, a UK limited company, no. 15766335. You email me directly at chris@gptshopltd.com.
