VSThiran

Finance & Money

Bank Statement to Excel, Word or CSV

Turn your bank or credit card statement into a clean spreadsheet or document of transactions - processed in your browser.

Free to useNo sign-up requiredNo watermarkRuns in your browser

Upload a PDF bank or credit card statement and get its transactions back as a spreadsheet or a Word document: date, description, money out, money in and running balance, each in its own column, with real dates and real numbers that sort and add up.

It is built for statements rather than PDFs in general - bank accounts and credit cards alike, since both print the same shape of table. It finds the transaction table whatever the issuer calls its columns - Withdrawals, Debit, Paid out, Dr, Charges - joins descriptions that wrap over several lines, skips repeated page headers and footers, and then checks the result against the statement itself: every running balance should follow from the one before it. Rows that do not add up, or where a date or amount could not be read, are marked for review instead of being quietly guessed.

How this tool works

  1. Choose your statement

    A PDF downloaded from online banking or a credit card portal works best. A password-protected PDF asks for its password, which is used in your browser only.

  2. Let it read the transactions

    The table is found and every row is read. Scanned statements can be read with OCR, which is slower and needs more checking.

  3. Review what it found

    See totals, the opening and closing balance, the balance check, and any rows that need a look. Click a cell to correct it.

  4. Download Excel, Word or CSV

    The Excel file has a Transactions sheet with a Status column and a Summary sheet; the Word file has the same transactions as one table; the CSV imports into accounting software.

How it works

The PDF is opened in your browser by pdf.js, the PDF engine used by Firefox. If it is password protected, the password you type is passed to pdf.js to decrypt it on your device, then cleared from memory.

Every piece of text is read with its position on the page. The tool looks for the heading row - Date, Description, Debit, Credit, Balance and the many ways banks word them - and uses the headings to decide which column each value belongs to. Amounts are matched by their right edge, because statements right-align money.

A row with a date starts a transaction; lines below it without a date or amount continue its description. Opening and closing balance lines, totals, page footers and repeated headers are recognised and kept out of the transactions.

Amounts are read exactly as printed - 1,234.56, 1.234,56, (45.00), 45.00-, 120.00 DR - and dates in the common formats. Whether 03/04 means 3 April or March 4 is decided once for the whole statement from its own dates, and you can switch it.

Finally each running balance is checked against the previous balance plus credits minus debits. A mismatch is flagged on the row; it is never corrected for you.

What it reads well, and what needs checking

PDF downloaded from online bankingBest case - real text, usually reads cleanly
Password-protected PDFSupported - unlocked in your browser with your password
Statement split over many pagesSupported - repeated headers and footers are skipped
Descriptions wrapped over several linesJoined into one description
Scanned or photographed statementRead with OCR - slower, and check every flagged row
No column headings at allColumns are guessed and every row is marked for review

Extracted, needs review, not detected

Every row carries a status. Extracted means a date and an amount were read and, where the statement has a running balance, the balance adds up. Needs review means something was missing or did not add up, and the row says what. Not detected is shown in any cell the statement did not provide - it is left blank in the spreadsheet rather than filled with a guess.

Before you rely on the totals, compare the transaction count and the closing balance with your statement. The balance check does most of that work: if opening balance plus credits minus debits equals the closing balance, no transaction was missed or misread.

Worked examples

A current account statement

Date, description, debit, credit and balance columns come through as five clean columns, with the balance check confirming every row.

A statement with one Amount column

Negative amounts, amounts in brackets, or amounts marked DR become money out; the rest money in.

A password-protected e-statement

Enter the password your bank gave you and it is unlocked in your browser.

Frequently asked questions

Is my bank statement uploaded anywhere?

No. The statement is opened, unlocked and read by code running in your browser, and the spreadsheet is created there too. The file, its password and the transactions are not sent to VSThiran or anyone else, and nothing is stored after you close the page.

Can it open a password-protected bank statement?

Yes. Enter the password when asked and the PDF is decrypted in your browser. The password is not saved - not in cookies, browser storage or the page address - and is cleared as soon as the file is open. A wrong password simply asks again.

Which banks does it support?

It is not tied to particular banks. It reads statements laid out as a table with column headings, which is how most banks and card issuers print them. It does not claim to read every layout perfectly - that is why it checks balances and marks the rows that need a look.

Does it work with credit card statements?

Yes. A credit card statement prints the same shape of table as a bank account - date, description, an amount and (usually) a running balance - so it is read the same way. Reward points, minimum-payment boxes and other credit-card-specific summaries are not extracted, only the transaction table.

Can I get a Word document instead of a spreadsheet?

Yes. "Download Word (.docx)" gives you the same transactions as one table in a Word document, with the summary above it - useful for pasting into a report or annotating, rather than working with the numbers.

How accurate is it?

On statements with real text and a running balance, the balance check tells you: if it passes, the amounts add up exactly. Scanned statements read with OCR are less reliable, and statements without headings or balances give it less to check against. Always compare the totals with your statement.

Does it work with scanned statements?

Yes, with OCR (text recognition) that also runs in your browser. It is slower, works for English statements, and can misread characters, so check the flagged rows and the balance check carefully.

Will the dates and amounts work in Excel?

Yes. Dates are written as real Excel dates and amounts as numbers, so you can sort, filter, total and chart them straight away. Money out and money in are in separate Debit and Credit columns.

Is it safe to open the spreadsheet?

Yes. Any description that starts like a spreadsheet formula (with =, +, - or @) is written as plain text, so opening the file can never run something hidden in a transaction description.

Is it free?

Yes - free, with no sign-up and no limit on statements.

Guides for this tool