SheetStatement

OCR for Scanned Bank Statements: Getting Accurate Data

By SheetStatement Team · · Updated · 11 min read

TL;DR: OCR accuracy on bank statements depends mostly on the input: a flat, straight, evenly lit scan at around 300 DPI reads far better than a skewed phone photo of a crumpled page. Even with a good scan, never trust OCR output without a balance check, because a single misread digit (3 vs. 8, 1 vs. 7) changes totals without looking wrong.

Scanned statements are where conversion gets hard. A PDF downloaded from online banking contains real text: every number is already a number. A scan is a picture of a page, and the software has to work out from pixels which marks are digits, which are letters, where columns start and which lines belong together.

Modern tools are good at this, much better than the OCR of a decade ago. We wrote about that shift in our post on how OCR and AI changed scanned statement conversion. This article is the practical companion: how to get better scans, what goes wrong, and how to check the results.

When you're dealing with a scan

You're probably working with a scan if:

  • You can't select or highlight text in the PDF.
  • Searching the PDF for a word you can see finds nothing.
  • The page looks slightly tilted, has shadows or shows paper texture.
  • The file came from a scanner, a copier, a fax or a phone.

Common sources: older statements the bank mailed on paper, statements a client printed and scanned, documents from a legal or estate file, and anything that's passed through a fax or copier.

If you have the choice, always ask for the original digital PDF from online banking. It removes OCR from the equation entirely. When that's not possible, a good scan is the next best thing.

How to scan statements for best results

These recommendations come from our own testing and from the general principles OCR relies on. None of them are exotic.

Resolution

Around 300 DPI is the sweet spot for printed documents. Lower than 200 DPI and small digits start to blur together. Much higher than 400 DPI mostly makes files bigger without helping.

Color mode

Grayscale is usually best. Pure black-and-white mode can drop faint characters or thicken bold ones until loops fill in (an 8 becomes a blob, a 6 becomes a 0). Color works too, just larger files.

Keep pages flat and straight

Skew (pages scanned at an angle) and curvature (pages bulging near the binding or a fold) make it harder to keep columns aligned. Flatten folded statements under a book first. Use the scanner's auto-straighten feature if it has one.

Avoid shadows and glare

For flatbed scanners, close the lid. For phone photos, shoot in even daylight or under diffuse light, not under a single lamp, and avoid your own shadow across the page.

One page per image

Don't photograph two pages at once. Each page should fill the frame.

Don't crop off edges

Cutting off the right margin can remove the balance column. Leave a little border.

Phone photos

If a phone is all you have:

  1. Put the page on a dark, flat surface.
  2. Hold the phone directly above the page, parallel to it, not at an angle.
  3. Use a scanning app or your phone's built-in document scan mode, which corrects perspective and boosts contrast.
  4. Check each photo is sharp before moving on.

What OCR gets wrong on bank statements

Knowing the typical errors makes reviewing faster.

Look-alike digits

The classic confusions:

Printed Misread as
8 3, 6, 0, B
1 7, l, I
5 6, S
0 O, D, 8
2 Z

On a statement, a misread digit in an amount is the worst kind of error: the row still looks plausible.

Decimal points and commas

A faint decimal point can disappear, turning 12.50 into 1250. A speck of dust can add one. Commas in thousands separators can be read as decimals in some layouts.

Minus signs and CR/DR markers

Some statements show negatives with a trailing minus or "DR," or credits with "CR." These are small marks that get lost in poor scans, flipping the sign of a transaction.

Merged or split columns

If the page is skewed, the description of one row can drift into the amount column of another, or a long description can spill into the next column.

Wrapped lines

Long descriptions that wrap onto a second line can be read as a separate transaction without an amount.

Headers and footers

Page numbers, account numbers and "continued" lines can end up inside the data.

How modern converters handle scans

Traditional OCR reads characters, then a separate step tries to find the table. Modern converters, including SheetStatement, use AI models that read the page image with layout in mind: they recognize that a statement has dates on the left, descriptions in the middle and amounts on the right, and they understand that an opening balance plus transactions should produce a closing balance.

That context helps. The model can use the running balance on a line to resolve whether a digit is a 3 or an 8, because only one of them makes the arithmetic work. But it's not magic. A badly blurred digit is still a guess, which is why verification matters.

Verifying OCR results

Every scanned statement should go through these checks before you use the data.

1. Opening + transactions = closing

The basic test. If the converted transactions don't add up to the statement's closing balance, something is wrong. SheetStatement runs this automatically and flags the rows where the running balance diverges; our free balance checker does the same for any spreadsheet.

2. Running balance on every line

If the statement prints a balance after each transaction, check every line. The first line where your calculated balance differs from the printed one is where the error is (or the line just above it).

3. Section totals

Many statements print totals for deposits, withdrawals, checks and fees. Compare each with your sums. A difference in one section narrows the search.

4. Row count

Count the transactions on each page of the PDF and compare with the rows you have for that page. This catches missed rows that happen to offset each other.

5. Spot-check large amounts

Sort by amount and check the ten biggest against the image. A misread digit in a large amount has the biggest impact.

Reviewing flagged rows efficiently

When a converter flags rows on a scanned statement, the review is quicker with a routine. We work from the first flagged row downward, with the page image open next to the table. For each one, we check three things in order: the amount (digits, decimal point, sign), the date (especially the day, since 1s and 7s swap easily), and whether the row is actually two transactions merged or one transaction split. Most flags are resolved by the first check.

After fixing a row, rerun the balance check before moving on. Often one fix clears several downstream flags, because a single misread amount throws off every running balance after it. Working top-down avoids chasing errors that are really just echoes of an earlier one.

A worked example

A client sends a scanned statement from a few years ago. It's a photocopy, slightly tilted, with a fold across the middle.

After conversion, the balance check fails: the calculated closing balance is 1,350.00 higher than the statement's. The running balance check shows the difference starts on the line for a check dated the 14th.

Looking at the image, the check amount is 2,450.00, but our data shows 1,100.00. That doesn't look like a single misread digit, so we look closer. The fold runs through that line, and the converter has merged the check's amount with the next line's description. The next line, a deposit, has no amount at all.

We fix both rows by hand: the check at 2,450.00 and the deposit at its correct amount from the image. The running balance now matches every line through to the closing balance.

Two observations: the fold was the cause, and the balance check found the problem in seconds. Without it, the merged row would have looked like a normal check.

Digitizing a box of paper statements

When the job is one or two pages, any scanner will do. When it's a box of statements, for an estate, a catch-up project or a legal matter, a bit of process saves a lot of rework.

  1. Sort before scanning. Put statements in order by account and date. Remove staples and paper clips; they cause jams and shadows.
  2. Check for completeness on paper. Lay out each account's statements by month and look for gaps before you scan. It's easier to request missing statements early.
  3. Use a document feeder if you have one, but feed one account at a time, so each file contains only one account.
  4. Scan each statement to its own PDF. One file per statement period, named consistently, for example checking-1234-2019-04.pdf. Mixing several months in one file makes verification harder.
  5. Spot-check as you go. Open every tenth file and zoom into the amounts. If they're soft or skewed, adjust settings before you scan the rest.
  6. Convert in batches, verify each statement's balance, and keep a simple log: file name, balanced yes/no, notes.
  7. Keep the paper until the digital set is verified, and then follow whatever retention rules apply to you.

On a big job, the scanning and checking take longer than the conversion. That's normal. The goal is a set of verified spreadsheets you won't need to revisit.

Equipment, briefly

You don't need anything special. A basic flatbed scanner at 300 DPI produces excellent input for OCR. A sheet-fed document scanner is faster for large volumes. A modern phone with a document scan mode is perfectly adequate for occasional use. Multifunction office copiers often have a scan-to-email or scan-to-folder option; check that it isn't set to a low resolution or black-and-white by default, since many are, to keep files small.

Whatever you use, the same factors matter: resolution, flatness, straightness and even lighting. A cheap scanner used carefully beats an expensive one used carelessly.

Should you run OCR yourself first?

Some scanning software can add a text layer to the PDF ("searchable PDF"). That makes the file searchable, which is handy for archives. For conversion, it's not necessary if your converter reads images directly, and occasionally it can hurt: a poor OCR text layer may be read in preference to the image by some tools, carrying its errors forward. If you have the choice, keep an unprocessed image PDF for conversion and a searchable copy for your archive.

When scans are too poor

Sometimes a scan just isn't readable: faded thermal paper, heavy fax artifacts, pages photographed in the dark. Options:

  1. Ask for a new copy. Banks can usually provide statement copies, including older ones, though there may be a fee and a delay.
  2. Rescan the original if you have the paper, using the tips above.
  3. Convert what you can and fill gaps manually, using the balance check to confirm the result.

Don't silently accept a statement that won't balance. Record the issue and, if the data is going into financial records or an official process, get a better source.

Privacy considerations for scans

Scanned statements often travel through more hands and devices than digital ones: a scanner's memory, a phone's camera roll, an email attachment. After converting, delete the copies you don't need, especially photos on phones that sync to cloud backups. Use a converter that deletes uploads after processing; see our security page for what we do.

Our take

OCR on bank statements is very good now, but its accuracy is set mostly before the file reaches any software: a clean, flat, straight 300 DPI scan is worth more than any setting. And because the most dangerous errors look perfectly normal, the balance check isn't optional. With scans, it's the main event.

If you have a box of paper statements to digitize, the pricing page shows how many pages each plan covers.

Troubleshooting OCR results

The balance check fails by a round amount. A difference of 9, 90 or 900 (or multiples) usually means a digit misread: a 3 read as an 8, or a 1 read as a 7. Look for amounts where the digit is ambiguous in the scan.

Decimal points disappear. A faint decimal point turns 45.00 into 4500. Sort amounts from largest to smallest and check anything suspiciously large.

Columns are shifted. Skewed or curved pages cause text to drift between columns. Rescan flat, or straighten the image before OCR.

Handwritten notes appear in the data. Annotations on paper statements get read as text. Remove them from the data, or scan clean copies.

Low-contrast photocopies. Older photocopies may lose faint text. Increasing contrast and scanning in greyscale often helps more than higher resolution.

A mini checklist for a scanning batch

  1. Pages flat, straight and complete.
  2. Resolution appropriate for OCR (around 300 dpi is a common recommendation).
  3. Greyscale or black and white with good contrast.
  4. One statement per file, pages in order.
  5. Balance check run on every statement.
  6. Flagged rows reviewed against the image.

A second worked example: a box of 1990s statements

An estate administrator found a box of paper statements spanning several years. Scanning them on a flatbed at 300 dpi, she ran each through a converter with OCR and a balance check. Of 84 statements, 79 passed first time. The other five had digit misreads, all on pages where the original print was faded; each took a couple of minutes to correct against the image. She saved the scans, the spreadsheets and a note of the corrections together. Without the balance check, those five errors would have gone unnoticed.

FAQ

Can you convert a scanned bank statement to Excel?

Yes. Use a converter that reads page images rather than just the PDF's text layer. Then verify that the opening balance plus all transactions equals the closing balance.

What DPI should I scan bank statements at?

Around 300 DPI in grayscale works well for printed statements. Lower resolutions blur small digits; much higher resolutions mostly increase file size.

Which characters does OCR misread most often?

Look-alike digits such as 8 and 3, 1 and 7, 5 and 6, and 0 and 8, along with faint decimal points and minus signs. These errors look plausible, so a balance check is essential.

Are phone photos good enough for OCR?

Often, yes, if the page is flat, evenly lit, photographed straight on and in focus. A phone's document scan mode helps by correcting perspective and contrast.

How do I know if my PDF is a scan?

If you can't select or search the text, it's almost certainly an image. Digital PDFs from online banking have selectable text.

What if the scan is too poor to read?

Request a new copy from the bank, rescan the original using better settings, or convert what you can and fill gaps manually, confirming the result with a balance check.

Skip the retyping

Upload a PDF or scanned statement and download a balance-checked Excel, CSV, QuickBooks or Xero file. Try the converter free.

Related articles

Convert your first statement free

3 pages a month on the free plan. No credit card.