No upload, 100% local, no account

Make a scanned PDF searchable

Drop a scanned PDF and get back the same pages with an invisible, searchable text layer added on top. Recognition runs entirely in your browser (on-device, offline after the first load), nothing is uploaded.

How PDF OCR · make it searchable works

PDF OCR turns a scanned PDF, one made of page images with no real text, into a searchable PDF: the same page images, plus an invisible text layer positioned over each recognized word. Open the result in any PDF reader and you can now use Ctrl+F to find a word, select and copy a paragraph, or let a search engine index the document, all things a plain scan cannot do. The recognition itself runs with tesseract.js (the same self-hosted OCR engine used by the OCR tool), and page rendering runs with pdf.js; both execute entirely inside your browser tab, and your file is never uploaded.

This tool is honest about what it does and does not do. It does not reconstruct a layout, tables or fonts, and it is not an editable-document converter: the visible page stays a picture, identical to the source scan, with a hidden text layer added underneath the appearance. Recognition accuracy depends on scan quality, the same 200 DPI-or-better, high-contrast, straight-page guidance that applies to any OCR engine. If you only need the plain extracted text rather than a PDF you can search inside, the OCR tool produces a .txt file instead and is faster for that specific job.

How to use PDF OCR · make it searchable, step by step

  1. Drop your scanned PDF (one page image per page, no existing text layer) onto the upload area.
  2. Select the primary language of the document from the language dropdown.
  3. If this is your first time using the tool, wait for the tesseract.js engine to download (this happens once).
  4. Click run and wait while each page is rendered and recognized in turn.
  5. Download the searchable PDF: same look, now with a text layer underneath.

Common use cases

  • A scanned contract needs to be searchable so a specific clause can be found with Ctrl+F instead of reading every page.
  • A batch of scanned invoices needs to go into a document archive where the search index only reads real PDF text.
  • A photographed or scanned form needs its printed labels to become selectable so a paragraph can be copied into an email.
  • A library of scanned reports in German needs full-text search; select German as the language before running the tool.

Frequently asked questions

How is this different from the plain OCR tool?

The OCR tool extracts plain text into a .txt file, dropping the original layout and images entirely. PDF OCR keeps the original PDF page images exactly as they look and adds an invisible, searchable text layer underneath. Use OCR when you only want the words; use PDF OCR when you want to keep the document as a PDF but make it searchable and selectable.

Will the output PDF look different from my scan?

No. Each page is rendered from your source PDF and re-embedded as an image, pixel-identical to the original scan (allowing for JPEG re-encoding). The recognized words are drawn on top at zero opacity, so nothing new is visible; a text search or a text selection is the only way to notice the added layer.

Does the tool reconstruct tables, columns or fonts?

No. The output keeps the page as a single flat image; the invisible text layer follows the recognized word positions but does not preserve table structure, multi-column reading order beyond what tesseract.js infers, or the original fonts. This is a searchability layer, not a document conversion to editable text.

Are my scanned documents sent anywhere during processing?

No. After the tesseract.js engine and language pack are downloaded from this site (a one-time, several-megabyte fetch on first use), every page render and every recognition pass happens entirely in your browser tab. Scanned contracts, medical records or other sensitive documents never reach a server.

Why does a long PDF take a while to process?

Every page is rendered to an image and OCR is run on that image individually, all inside your browser tab, so processing time scales with the page count. The progress bar reflects real per-page progress, and files are capped at 80 MB to keep the whole pipeline within a browser tab's memory budget.

What if my PDF already has selectable text?

Running OCR on a PDF that already carries a real text layer is unnecessary: opening it in a reader and pressing Ctrl+F already works. This tool is for PDFs made of page images with no underlying text, the common output of a flatbed scanner or a "print to PDF" of a photographed document.