Scanned PDF to Excel: add OCR, then extract the table

Make a scanned price list searchable, extract its rows, and check the numbers before using them in a spreadsheet.

For
Anyone working with scanned tables
Reading time
5 min

Start here

  1. Add a searchable text layer with NAPS2 or OCRmyPDF.
  2. Extract a sample table from the new PDF.
  3. Check product codes, decimal prices, and pack quantities against the scan.

Check whether the file is actually a scan

Try selecting one product code in your PDF viewer. If the whole page selects as an image, start with OCR. If individual characters select, test extraction first; the file may already have a text layer. Check a page near the end as well, since one PDF can mix scans and digital pages.

Add searchable text

NAPS2 provides a desktop route: import the PDF, enable OCR with the correct language, and save a new file. Its OCR settings apply when the PDF is saved. OCRmyPDF is a command-line alternative for repeatable jobs. Neither tool directly promises a correctly structured Excel table.

Terminal · after installing OCRmyPDF
ocrmypdf input.pdf searchable.pdf

Keep the original scan. Run extraction on searchable.pdf, not on the unchanged input file.

Extract a small table first

Try Tabula on the searchable output if you want to select the table area yourself. Docling is another option for a programmed workflow. Use ten representative rows before processing the whole document. A clean-looking table at the top of page one tells you little about a cramped footer or a continuation on page twelve.

Check the characters that change the result

Look closely at 0 and O, 1 and I, decimal punctuation, minus signs, and leading zeros in product codes. Compare the unit column with the scan: each, pack, case, and kilogram have different meanings. A recognized value of 12.50 is still unusable if the column heading containing the currency disappeared.

CheckExample problem
Product code00123 becomes 123 or OO123
Price18.50 becomes 1850
Pack quantity12 disappears into the description
Page breakA repeated heading is imported as a product

Decide whether to automate this supplier

Save corrections in a staging sheet rather than editing the live product master. Count how many rows needed intervention. If the same supplier sends this document monthly, preserve the mapping and the review rules. If every page needs repair, ask for a spreadsheet export before investing in a more complicated pipeline.

Sources

Updated October 30, 2026. Based on the linked documentation; the tools have not been benchmarked by NarrowTools. Editorial policy

Read next

Convert a supplier PDF price list to Excel without losing unitsA practical workflow for extracting supplier prices, checking pack quantities, handling scanned tables, and keeping a link to the original PDF.Tabula alternatives: when to use Docling for PDF tablesUse Tabula for a supervised extraction, or Docling as part of a document pipeline. Compare them on the same difficult pages.Keep leading zeros in SKU codes when opening a CSV in ExcelImport product identifiers as text, check long codes, and distinguish a displayed zero from a value that survives export.