# Scan Checks into Excel: Payee, Amount, Check Number

- Author: FastBankConvert (https://fastbankconvert.com)
- Published: 2026-10-17
- Category: Other financial documents
- Canonical: https://fastbankconvert.com/blog/scan-checks-into-excel

> Scan checks into Excel as a list: what OCR can read on a check, the written and numeric amounts, check numbers, and masking account details.
To scan checks into Excel, scan each check at a readable resolution, let OCR pull the printed parts, then type or confirm the handwritten payee and amounts. Build one row per check with the check number, date, payee, both amounts and the last four account digits. Printed fields read well. Handwriting needs a person to check it.

## What can OCR read on a scanned check?

OCR reads the printed parts of a check reliably and the handwritten parts poorly. Printed parts include the bank name, the account holder's name and address, the check number in the corner and the code line along the bottom. Handwritten parts include the payee, the date, both amounts, the memo and the signature.

That split decides how much of the job a scanner can do for you. A check is a small form with two kinds of ink on it. One kind was put there by a printing press, in a fixed font, in the same place on every check from the same book. The other kind was put there by a person with a pen, at whatever size and slant they write.

### Printed fields

Printed fields are the easy half. On a book of checks from one account, these sit in the same spot every time:

- **Check number**, top right on most personal and business checks.
- **Account holder**, top left, often with an address.
- **Bank name**, usually near the center or the top.
- **Code line**, the row of digits and symbols along the bottom edge.

Because they never move, a tool that reads fixed boxes on a template suits them well. The guide to [zonal OCR and reading fixed boxes on the same form](/blog/zonal-ocr) explains how those boxes are drawn and why they fail when a layout shifts.

### Handwritten fields

Handwritten fields are the hard half. General-purpose OCR is trained mostly on printed text, so cursive payee names and loose digits come back as guesses. Some tools offer handwriting recognition, and it can help with neat block letters. It still needs a person to look at each value before it goes into a total.

Typed checks are the exception. Checks printed from accounting software put the payee, date and amount in a printer font, so the whole check reads like a printed page. If most of your checks come from software, the scanning job is mostly done by the machine.

## Written and numeric amounts on a scanned check

A scanned check carries its amount twice: once in figures in the small box on the right, and once in words on the long line. When the two agree, either one is fine. When they disagree, the words win, so capture both and flag any mismatch.

The rule for conflicting terms on a check is in [Uniform Commercial Code section 3-114 on contradictory terms](https://www.law.cornell.edu/ucc/3/3-114), which says that "words prevail over numbers". That is why the written line deserves its own column even though it is the harder one to read.

The figure box is what OCR reads best among the handwritten parts, because digits are a small set of shapes. The written line is harder. "Four hundred twelve and 80/100" is a long string of cursive with a fraction at the end. Few tools turn that into a number without help.

### Keep both columns

Put the figure amount and the words amount in separate columns. Type the words amount as a number, not as text, so that a formula can compare them. A third column then holds a simple test such as `=IF(E2=F2,"OK","CHECK")`. Any row marked CHECK goes back to the image before you trust the total.

### Digits OCR mixes up on checks

On handwritten figures, a few confusions repeat:

- A 1 and a 7, especially when the writer adds a crossbar.
- A 4 and a 9 when the top of the 4 is closed.
- A 5 and a 6, or a 3 and an 8, on fast handwriting.
- A missing decimal point, which turns 41.28 into 4128.

The last one is the most expensive. A check for forty-one dollars becomes four thousand. Comparing the figure amount against the words amount catches it, because nobody writes "four thousand" by accident.

## Check numbers and the code line at the bottom of a check

The check number usually appears twice on a check: printed in the top right corner and again inside the code line along the bottom edge. The code line also holds the bank's routing number and the account number. Use the corner number for your sheet, and use the code line copy to confirm it.

The code line is printed in a special font meant for machines at the bank, which makes it easier for OCR than ordinary text. It still runs three numbers together with symbols between them. The routing number identifies the bank, the account number identifies the account, and the check number identifies the check. The order varies between personal and business checks, so read a sample before you split the line into columns.

### Gaps in the check number sequence

Check numbers run in order within one book. Once the sheet is sorted by check number, a gap means a check was voided, torn out, lost or not yet scanned. Add a column for status, with values such as Cleared, Voided and Missing, and fill the gaps on purpose rather than leaving them blank. A sheet with every number accounted for is far more useful when someone asks whether check 1047 was ever written.

### Duplicate check numbers

A duplicate number usually means the same check was scanned twice, front and back as two pages, or once on its own and once inside a batch. Sort by check number and look for repeats before you total anything. If two different checks really share a number, one of them came from a different account or book, and the account column will show it.

## Masking account details from scanned checks

A scanned check exposes the full routing and account numbers, and together they are enough for someone to try to draw on the account. A check log in Excel needs neither in full. Keep the last four digits of the account number, drop the routing number, and store the check images somewhere access is controlled.

### What to keep and what to drop

| Field on the check | Keep in the sheet? | Why |
| --- | --- | --- |
| Check number | Yes | It is the key for every lookup |
| Account number | Last four digits only | Enough to tell accounts apart |
| Routing number | No | Names the bank, which the sheet already knows |
| Account holder address | No | Not needed for a payment list |
| Signature | No | Never needed in a spreadsheet |
| Payee, date, amounts, memo | Yes | The content of the log |

### Masking in the sheet itself

If the full account number has already landed in a column, replace it rather than hiding the column. Hidden columns travel with the file. A formula such as `="****"&RIGHT(C2,4)` in a new column gives the masked value. Copy that column, paste it as values, then delete the original. Check the file's other sheets too, since a raw OCR dump on a second tab often holds the whole code line.

The check images themselves are the more sensitive file. A spreadsheet with masked numbers can go to a bookkeeper by email. The scans should not, unless both sides are comfortable with that.

## A check log sheet in Excel, column by column

A check log is a sheet with one row per check and one column per field, sorted by check number. It needs eight columns: check number, date, payee, figure amount, words amount, a match test, the last four account digits and the memo. A status column is worth adding if you track voided or missing checks.

### A worked example

The three checks below are example checks with invented payees and amounts. They show how each part of the paper ends up in a column.

| Check no. | Date | Payee | Figure amount | Words amount | Match | Account last 4 | Memo |
| --- | --- | --- | --- | --- | --- | --- | --- |
| 1045 | 2026-08-03 | Example Plumbing Co | 412.80 | 412.80 | OK | 5521 | Kitchen sink |
| 1046 | 2026-08-09 | Riverside Swim Club | 4128 | 41.28 | CHECK | 5521 | August dues |
| 1047 | 2026-08-14 | J. Alvarez | 150.00 | 150.00 | OK | 5521 | Lawn care |

Row 1046 is the one to look at. The OCR missed the decimal point in the figure box and read 4128. The words amount, typed by a person from the written line, says forty-one dollars and twenty-eight cents. The match column flags the row, and a glance at the image fixes it.

### Steps to fill the log

1. Scan all checks in one batch, fronts only unless you need the endorsement on the back.
2. Run OCR, then copy the check number, account digits and any typed fields into the sheet.
3. Type the payee, date and words amount from each image.
4. Let the match column compare the two amounts.
5. Sort by check number, mark gaps as voided or missing, and remove duplicates.
6. Mask the account column and delete any raw code line text.

Dates on checks are a separate trap. People write the date in whatever order they learned, and 08/09 can mean August 9 or 8 September. Type dates in year-month-day form so Excel stores them as real dates and sorting works.

## When is a bank statement faster than scanning each check?

A bank statement is faster than scanning checks whenever you only need the check number, the date it cleared and the amount. Most checking statements list every paid check with those three values, and that list is already printed text. Scanning is worth it only when you need the payee, the memo or proof of what was written.

The statement and the paper check answer different questions. The statement says what left the account and when. The check says who it was made out to and why. For a reconciliation, the statement is often enough. For a dispute or an audit question about a specific payee, you need the image.

### Pairing the two sources

A good workflow uses both. Convert the statement to get a clean list of cleared checks, then scan only the checks whose payee you need. Match them on check number. Any check in your log that never appears on a statement is still outstanding, and any check on the statement with no paper copy is one you should ask about.

FastBankConvert is built for that statement side: it reads a digital checking statement into dates, descriptions and amounts in their own columns, and tells you before download if the balances do not add up. It is not open yet; the [get-started page](/get-started) takes sign-ups for when trial conversions begin.

### Other payment records that belong in the same workbook

Checks are rarely the only way money leaves. If you also pay through an online wallet, the guide to [turning a PayPal statement into Excel rows with gross, fee and net amounts](/blog/paypal-statement-to-excel) covers that file. If some of the money went to an investment account, [brokerage statements in Excel with trades and cash activity](/blog/brokerage-statement-to-excel) shows how to set that sheet up. Giving every source the same date, payee and amount columns lets you stack them into one list later.

### When not to scan checks at all

Skip scanning when the bank already offers check images as part of online statements and you only need to look at a handful. Downloading three images is faster than setting up a scanning routine. Skip it as well for checks you received rather than wrote, when the deposit record already names the payer. Scanning earns its time on a box of old checks that no bank system still holds.
