1. Use a high-resolution image
OCR engines need to see the shape of each letter clearly. Aim for at least 300 DPI on scans, or smartphone photos taken close up. Blurry or tiny text will produce garbage output.
Extract editable, searchable text from any image — screenshots, scanned documents, photos of receipts and signs. 100% private: the OCR engine runs in your browser. Your images never upload.
or click to choose · JPG, PNG, WebP
OCR runs entirely in your browser as a Web Worker. Nothing is uploaded.
.txt.OCR (Optical Character Recognition) reads text out of images and turns it into characters you can copy, search, edit and store as plain text. It's the technology behind every "scan your receipt" app, every searchable PDF, every street-sign translator.
Turn scanned books, contracts, manuals or memos into text you can search and edit. The single biggest use case for OCR — and the one that makes paper-heavy industries go digital.
That code snippet in a tutorial screenshot, the error message in a bug report, the address in a Google Maps screenshot — OCR turns all of it back into copy-able text without retyping.
Photograph a receipt, run OCR, paste into a spreadsheet. The pillar of expense-tracking apps. Pair with the EXIF tool to also capture when and where the photo was taken.
Photograph foreign-language text, OCR it, then paste into a translator. Better than typing a long sentence character-by-character into your phone keyboard.
OCR engines need to see the shape of each letter clearly. Aim for at least 300 DPI on scans, or smartphone photos taken close up. Blurry or tiny text will produce garbage output.
Black-on-white prints best. Coloured backgrounds, patterned paper or photos of text on screens can confuse the engine. Crop tight around just the text if possible.
Tesseract handles small rotation but struggles with tilted or curved text. If you photographed a page at an angle, rotate it square before running OCR. Online tools like our Image Compressor can resize and re-orient.
OCR with the wrong language model produces bad results — German text run through an English model will mis-read every umlaut. The dropdown above covers 13 common languages.
If a page has multiple columns or mixed text and images, OCR may scramble the reading order. Crop to one column or one paragraph and run OCR multiple times for cleaner results.
Yes — completely free, no signup, no credit limits. The engine and language data download once and cache locally.
No. Tesseract.js runs as a Web Worker in your browser. The image and its extracted text never leave your device.
The first run downloads ~3 MB engine + 1–15 MB of language data depending on language (this is cached). After that, OCR on a single page typically takes 2–10 seconds.
Tesseract is trained primarily on printed text. Handwriting recognition is hit-and-miss — clean cursive sometimes works, messy notes usually don't.
Not directly. Convert each PDF page to an image first, then OCR each one. The FilesDesk desktop app handles PDF→OCR→rename in a single step.
Tesseract supports 100+ languages. The 13 in the dropdown are the most common; we can add more on request — contact us.
FilesDesk extracts text from PDFs and images in bulk and uses it to generate clean, searchable filenames automatically — invoice numbers, contract names, receipt totals.
Try FilesDesk free