River
Y CombinatorBacked by Y Combinator

Finance & AccountingFree tool

Bank Statement PDF to Excel Converter

An Excel-ready spreadsheet from your bank statement PDFs, scans included: one row per transaction, checked against each statement's balances, with any unreadable line listed.

Helpful to include

Free to start · Opens in your River workspace, ready to edit and share

How to convert a bank statement PDF to Excel

To convert a bank statement PDF to Excel, get the transactions into a sheet with one row each: date, description, amount (negative for money out) and balance. Your bank's CSV download or Excel's own PDF import does the first pass. Then fix what conversion usually breaks: missing years, descriptions split across two lines and amounts with the wrong sign. Last, prove nothing was lost: the opening balance plus deposits, minus withdrawals, must equal the statement's closing balance.

Treat every conversion as unproven until it matches the balances the statement prints. A tidy table can still be missing a row.

A person at a white desk works on a spreadsheet on a laptop, with printed pages, a receipt, a calculator and a notebook beside it
Keep the printed pages beside the sheet until every total matches. Photo: Microsoft 365 on Unsplash

Start with the best file

First, check whether your online banking offers the same months as a CSV or spreadsheet download, which is already a table. If not, or its history is too short, save each statement PDF from online banking instead of scanning paper copies. A PDF your bank generated normally holds real text, which converts far more cleanly than a picture of a page.

Gather every statement for the period, in date order, and don't assume 12 a year. In the US, Regulation E requires a statement for a personal account for each monthly cycle with an electronic transfer, and at least quarterly otherwise1. So a quiet savings account can skip months with nothing missing.

Check for real text

Try to highlight a single word in the PDF. If you can, the text is there. If the whole page selects as one picture, it's a scan and needs text recognition (OCR) first.

Get the transactions into Excel

Excel can read a PDF itself: choose Data > Get Data > From File > From PDF, then pick the tables it finds. Microsoft's version chart lists this import for Microsoft 365 plans on Windows, but not for Excel for Mac2.

Expect cleanup, whatever you use. A statement is laid out for printing, so any converter has to work out rows and columns from where the text sits. Microsoft says its import finds tables with an algorithm that, by default, treats border lines as only one hint among many3. It also notes that rows running onto several lines aren't always identified properly.

Ways to get the rows out

MethodBest forWatch for
Your bank's CSV downloadMonths the bank still offersColumns that differ from the statement
Excel's From PDF importText PDFs, Microsoft 365 on WindowsSplit lines, repeated page headers
Copy, paste, then Text to ColumnsOne or two short statementsDescriptions broken across columns
Text recognition (OCR), then importScans and phone photosDigits that look alike, such as 1 and 7
A statement converterMany statements or messy layoutsWhere your files go, and totals that don't match

Set up the columns

Use plain columns: date, description, amount and the balance the statement prints. Choose one way to show money out, either negative amounts in a single column or separate money-in and money-out columns. If the rows are headed for bookkeeping software, read its import instructions first and match its columns and date format.

Copy each description exactly as the bank printed it, since it usually names who was paid, and give check numbers their own column. Add a source column as well, such as "March, p. 2." When someone questions a number months from now, it points to one page instead of a stack of PDFs.

Store the PDFs with the sheet, too. Without a canceled check, the IRS says you may be able to prove payment with a highly legible account statement4. It must show the amount, the payee's name and the posting date, plus the check number for a check. If yours lists checks by number alone, keep the check images too.

Fix dates, signs and split lines

Many statements print only the month and day on each row, with the year in the header. Microsoft calls two-part dates "inherently ambiguous," and Excel puts one like 12/28 in the current year5. Add the year from the statement period yourself, and take care with any statement that runs from December into January.

Keep the date the statement prints. For electronic transfers on a personal account, Regulation E has the statement show the date each one was credited or debited1, which can differ from the date on a receipt.

  • Turn every form of money out, such as 125.00-, (125.00) or DR, into a negative number.
  • Join a description that wraps onto a second line to the row above it.
  • Delete page headers, balance-forward lines and daily balance summaries; none are transactions.
  • Fix amounts stored as text, which won't add up, with Excel's Convert to Number.
ExampleA statement excerpt, cleaned upAn illustrative example written for this guide. The bank, payee and figures are made up.

As printed on page 2 of a statement for Dec 15, 2025 to Jan 14, 2026:

BALANCE FORWARD 4,210.00

12/30 ACH DEBIT ACME PAYROLL SVC 1,850.00- 2,360.00

PPD ID 0000012345

01/02 MOBILE DEPOSIT 640.00 3,000.00

As rows in the sheet:

12/30/2025 | ACH DEBIT ACME PAYROLL SVC PPD ID 0000012345 | -1,850.00 | 2,360.00 | p. 2

01/02/2026 | MOBILE DEPOSIT | 640.00 | 3,000.00 | p. 2

  • The year comes from the period. 12/30 falls in 2025 and 01/02 in 2026. Pasted as is, both would take the year you paste them in.
  • The stray line joins its row. The ID line has no date or amount, so it belongs to the payroll debit above it.
  • The trailing minus becomes a sign. 1,850.00- is money out. The balance forward of 4,210.00 minus 1,850.00 gives the printed 2,360.00.

Prove nothing is missing

Every statement gives you numbers to test against. For a personal account, Regulation E requires the balance at the beginning and at the close of the statement period1. Run these checks on each statement.

  1. Check the arithmetic

    The opening balance plus every amount, with money out negative, should equal the closing balance. Note any gap in dollars.

  2. Find where it breaks

    Add a running balance (the row above plus this amount) and compare it with each balance the statement prints. The first mismatch shows where a line is missing, doubled or misread.

  3. Compare the totals

    If the summary lists total deposits and withdrawals, or a count of each, match yours to them.

  4. Chain the statements

    Each statement should open at the last one's closing balance. If not, a statement is missing or two overlap.

  5. Check possible duplicates

    Two rows with the same date and amount can both be real, like two identical coffees. Check the PDF before deleting either.

Matching the statement proves the conversion, not your books. As the IRS notes, a statement balance may not agree with your books4. It can include bank charges you haven't entered, and leave out deposits made after its date or checks that hadn't cleared. Finding those is the job of a bank reconciliation.

Share it and put it to work

Shorten account numbers to their last four digits before you share the sheet. Then match each line to its receipt with the expense and receipt template, or use the rows as the actuals in a 13-week cash flow forecast.

Before you rely on the spreadsheet

  • Every statement in the period is there, with no gaps between them
  • Each statement's rows take its opening balance to its closing balance
  • Every date has the right year
  • Money out is negative, or in its own column, and every amount is a number
  • No headers, balance-forward lines or subtotals sit among the rows
  • Possible duplicates are checked against the PDF
  • Account numbers show only the last four digits

When to bring in an accountant

If the table will back a tax return, a loan application or a dispute, or still won't match after a second pass, have an accountant review it. Report any transaction you don't recognize to your bank right away.

If you'd rather skip the cleanup, drop the PDFs into the converter at the top of this page. River reads every page, scans included, fills in the years, checks each statement against its printed balances and lists any line it couldn't read.

How it works

Drop your statement PDFs into the box, scans and phone photos included, and say which account they're from. River reads every page and writes one sheet with a row per transaction. Each row carries the date, the bank's own description, the amount, the balance and the page and line it came from. It checks each statement against its printed opening and closing balances, and lists any line it couldn't read instead of leaving it out.

Pick where the rows are going, such as a bookkeeping import or a lender, and River sets the columns and date format to suit. Download the sheet as an Excel or CSV file, or ask River to work through the flagged rows.

  1. Add your statements

    Drop in the PDFs, scans and phone photos included, and say which account they're from.

  2. River reads every page

    It pulls each transaction with its page, fills in years, joins split lines and checks the printed balances.

  3. Get your spreadsheet

    One sheet with a row per transaction, plus a note listing unreadable lines and possible duplicates.

  4. Check it and download

    Work through the flagged rows with River, add next month's statement, or download it for Excel.

What you get

  • One row per transaction: the date, the bank's own description, the amount and the running balance
  • The page and line each row came from, so any number leads straight back to its statement
  • A balance check for every statement, with any gap from the printed closing balance in dollars
  • Every line it couldn't read listed with its page, never quietly dropped from the table
  • Possible duplicates and rows read from scans flagged, with the largest amounts listed first for checking
  • An editable sheet in your River workspace that downloads as an Excel or CSV file

Common questions

Can Excel convert a bank statement PDF by itself?

Yes, in Excel for Windows with a Microsoft 365 subscription. Microsoft's version chart lists PDF import there, but not for Excel for Mac or for Office 2016 and 2019. Choose Data > Get Data > From File > From PDF, then pick the tables it finds. Expect cleanup afterward: descriptions that run onto a second line, repeated page headers and dates missing their year are the usual fixes.

How do I convert a scanned bank statement to Excel?

Run text recognition (OCR) on the scan first, then import the result like any other PDF. Recognition can misread a digit, so compare each amount with the image and make sure the rows still take the opening balance to the closing one. River reads scans and phone photos directly, and flags every row it read from an image so you know which to check first.

Why doesn't my converted statement match the closing balance?

Usually a row is missing, doubled or has the wrong sign. Put a running balance beside the bank's printed balance and find the first row where the two part ways; the problem sits on that row or just above it. A gap of exactly twice one amount means that row's sign is flipped, while a gap equal to one amount points to a missing or doubled row.

Should I use the transaction date or the posting date?

Use the date the statement prints, which is usually the day the bank posted the transaction to your account. The printed balances follow posting order, so sorting by that date keeps your running balance in step with them. If a statement shows both dates, keep both in labeled columns, since a card purchase can post days after the date on the receipt.

How do I convert a bank statement with River?

Drop your statement PDFs into the box at the top of this page, scans and photos included, and say which account they're from. River reads every page and builds one sheet with a row per transaction, plus a note on anything it couldn't read. It all opens in your free River workspace, where you can download the sheet as an Excel file.

Can it convert several months or accounts at once?

Yes. You can attach up to 10 files from this page and drop the rest into your workspace afterward. Each account gets its own tab and its own balance check, with rows sorted by date. Later, ask River to add next month's statement and it extends the same table, or ask it to suggest a bookkeeping category for each transaction.

Is the bank statement converter free?

Yes, it is free to start. Your spreadsheet opens in a River workspace, along with a note listing anything River couldn't read. You can edit the sheet, share it, download it as an Excel or CSV file, or ask River to change it. Paid plans add more AI use and access to the most advanced models.

Sources

  1. eCFR. “12 CFR 1005.9 — Receipts at electronic terminals; periodic statements.” ecfr.gov (opens in a new tab)

  2. Microsoft Support. “Power Query data sources in Excel versions.” support.microsoft.com (opens in a new tab)

  3. Microsoft Learn. “Power Query PDF connector.” learn.microsoft.com (opens in a new tab)

  4. IRS. “Publication 583 (12/2024), Starting a Business and Keeping Records.” irs.gov (opens in a new tab)

  5. Microsoft Learn. “How Excel works with two-digit year numbers.” learn.microsoft.com (opens in a new tab)

Built by

Chandler Supple

Co-founder & CEO, River

Chandler has spent the last six years working in AI, building tools for millions of users and Fortune 100 companies. In 2025, he co-founded River to build a new kind of operating system for AI agents.

Reviewed by

Brian Joseff, Co-founder, River