Embed this tool on your site
About this tool
PDF OCR converts a scanned PDF — pages stored as flat images with no underlying text — into a searchable, copy-able document by running optical character recognition directly in your browser. Drop your file, optionally click thumbnails to limit which pages are processed (none selected means all), choose a recognition language (English, French, German, Spanish, Portuguese, Italian, or Dutch), and click Run OCR. Tesseract.js renders and reads each page in turn while a progress window shows how far it has got. The recognised text then appears in a panel, headed with a confidence percentage for every page, and pdf-lib adds it to each processed page as one tiny white text block in the top-left corner (up to 8,000 characters per page). The page images are untouched, so the file looks the same, but Ctrl+F, copy-paste and screen readers can find the words — search hits point to that corner rather than each word's spot. Sensitive scans never leave your device.
Why use it
Searchable Output: The downloaded PDF keeps the original page imagery and adds the recognised text as tiny white type, so Ctrl+F and copy-paste find the words in Acrobat, Preview, and browsers.
100% Browser Processing: Tesseract.js and pdf-lib run locally in a worker — your scans never upload to a server, which matters for contracts, IDs, and medical paperwork.
Multi-Language Recognition: Switch between English, French, German, Spanish, Portuguese, Italian, and Dutch with one dropdown — the right language model dramatically improves accuracy.
Page Picker: Process only the pages that matter — handy for 200-page document dumps where you only need text from chapters 3 and 7.
Per-Page Confidence: The text panel labels every page with Tesseract's confidence score so you can spot pages that need a sharper rescan.
Free with No Watermark: Convert as many scans as your laptop can chew through — no daily quota, no signup, no branded output.
How to use
- Drop or select a scanned PDF — the tool reads its page count and shows a thumbnail picker.
- Click thumbnails (or use All / Odd / Even / Invert) to limit which pages are processed — leave none selected to OCR every page.
- Choose the document's primary language so Tesseract loads the matching trained data file.
- Click Run OCR — a progress window shows which page is being rendered and recognised.
- Review the recognised text in the panel below, where each page is headed with its confidence percentage, and copy it if needed.
- Click Download Searchable PDF to save a copy with the recognised text added to each processed page.
When it helps
- When a scanned contract or PDF arrives by email and you need to search for clauses or names without retyping.
- When archiving paper receipts and tax slips into a searchable PDF library before tossing the originals.
- When making old academic books or articles accessible to screen readers and full-text search.
- When preparing legal discovery materials so attorneys can grep for terms across thousands of scanned pages.
- When digitising handwritten notes or printed meeting minutes so they can be indexed by note-taking apps.
- When you receive a scanned ID or passport copy that needs to be parsed without uploading the file to a third-party service.
Examples
01Searchable scanned contract
Inputscan-12pp.pdf (12 image-only pages, English), all pages selected
Expected resultscan-12pp-ocr.pdf (12 pages, identical look, full-text searchable in Acrobat)
02Selective OCR on a long report
Inputannual-report.pdf (180 pages), pages 5, 22-24, 110 selected, language: English
Expected resultannual-report-ocr.pdf with text layer added only on the 5 selected pages
Inputfactures-q1.pdf (8 pages), language: French
Expected resultfactures-q1-ocr.pdf with French diacritics correctly recognised and searchable
Tips
- Higher-resolution scans (≥ 300 DPI) produce dramatically better OCR results — rescan low-quality faxes if you can.
- If a page mixes two languages, pick the one with more text — Tesseract handles single-language documents most accurately.
- Crop or deskew the original before running OCR; even 2–3° of skew tanks recognition accuracy.
- Process big PDFs in batches of 20–30 pages at a time on mobile devices to avoid running out of memory.
- After downloading, verify by searching for a phrase you know is on page 1 — if it doesn't match, the language or scan quality probably needs adjusting.
Frequently Asked Questions
Does the file upload anywhere?⌄
No. Tesseract.js, pdf.js, and pdf-lib all run in your browser. The PDF and recognised text never leave your device.
Why is the first page slow?⌄
Tesseract has to download the trained data file for the chosen language (~10–20 MB) on first use. Subsequent pages are much faster — the model stays cached for the session.
What languages are supported?⌄
English, French, German, Spanish, Portuguese, Italian, and Dutch are available in the picker. They cover the vast majority of Latin-script use cases.
Will the output PDF look exactly like the input?⌄
Almost always. The page images are kept as-is and the text is added as 0.5 pt white type in the top-left corner, which is invisible on white pages. Search results highlight that corner rather than the word's position.
How accurate is the OCR?⌄
On clean 300 DPI scans, expect 95%+ accuracy on common Latin-script languages. Faxes, handwriting, and skewed scans drop the accuracy substantially.
Can I OCR a password-protected PDF?⌄
Not directly — unlock the file first with the PDF Unlock tool, then run it through PDF OCR.
What's the file-size limit?⌄
There's no hard limit, but practical browser memory tops out around 200–300 MB on desktop and far less on mobile. Use the page picker for very large PDFs.
Does it handle handwriting?⌄
Tesseract was trained on printed text and is unreliable for handwriting. For handwritten notes consider a specialised handwriting OCR service.
Glossary
- OCR
- Optical Character Recognition — the process of converting page images into machine-readable text.
- Searchable PDF
- A PDF that retains its original visual layout but also embeds a text layer so the contents can be searched, copied, and read aloud.
- Text Layer
- Machine-readable text stored in a PDF alongside its images; here it is one small block of white text per page rather than word-by-word positions.
- Tesseract.js
- A JavaScript port of Google's Tesseract OCR engine that runs entirely in the browser via WebAssembly.
- Confidence Score
- A percentage Tesseract assigns to each recognised page indicating how certain it is of the read.
- DPI
- Dots per inch — the resolution of a scanned image; ≥ 300 DPI is the practical floor for reliable OCR.
A LITTLE HELP. A LOT DONE.
Good tools.
Great flow.
Your shortcut to the everyday. Create, convert, calculate,
and get back to what you love.
✳
✳
✓ Free to use✓ No sign-up✓ 500+ possibilities