Bank statement PDF to CSV, without uploading anything.
Drop a statement and get a clean CSV — dates, descriptions, amounts, running balance — ready for GnuCash, Excel, or whatever you keep the books in. The PDF is read inside your browser tab. There is no server to send it to.
Nothing is uploaded Tells you when the numbers do not add up No account, no email
It checks its own work
Most converters hand you a file and let you find out later that a row went missing. LedgerDrop adds up what it extracted and compares it against the opening and closing balance printed on the statement. If it does not match, it says so.
Fix a column in one click
When a statement uses headings the parser does not know — another language, an unusual layout — tell it which column is the date and which is the amount. The table is rebuilt on the spot.
Credit cards come out the right way round
Card statements print a purchase as a positive number because it increases what you owe. LedgerDrop flips them so money out is negative, the way a cash-flow CSV is expected to read.
How it works
- Drop the PDF. Nothing is sent anywhere — the file is opened by JavaScript running in your tab.
- The text layer is read with pdf.js, and the text is grouped into rows and columns by where it sits on the page.
- Columns are identified — date, description, amount, money in and out, balance, check number — and the sign of each amount is worked out from the column, the printed sign, or the section heading.
- The result is checked against the printed balances, and you get a preview plus a CSV.
What it costs
Free
- CSV output
- Up to 3 pages per file
- Balance check
- Column mapping
- No account, no email
Paid
- Everything in Free
- Several files at once
- QIF and OFX/QFX output
- Saved per-bank column settings
- A report of exactly where a mismatch is
Not available yet. This page will say when it is — there is nothing to sign up for.
Questions
Is my statement really not uploaded?
Yes. The converter is a static page with no upload code in it, and the whole site is served without a backend. You can check it yourself: open your browser's developer tools, switch to the Network tab, and convert a file. Nothing from the statement goes out — the only requests are the page and two anonymous counters that carry a status word and two numbers. Privacy lists them in full.
Which banks does it work with?
It does not look at the bank name at all — it reads the layout. That means it is not limited to a list, and also that it can be wrong on an unusual statement. The balance check is there so you find that out immediately rather than three months later.
My statement is a scan. Can it read it?
No. A scan is a picture of a statement with no text in it, and LedgerDrop does not do OCR. Downloading the PDF from your bank's online banking usually gives you a text one.
Why only 3 pages?
The free version is meant to let you check that this works on your bank before anything is asked of you. Longer statements and several files at a time are what the paid version is for.
What does it record about me?
Whether a conversion succeeded, how many pages and rows were involved, and — if you press the button — whether it worked for your bank. No file name, no bank, no amounts, no descriptions. The full list is in Privacy.