Image to text converter
Drop in a photo, scan or screenshot, pick the language, click “Extract text” – then copy the text or save it as a .txt file. Recognition runs entirely in your browser; your image is never uploaded.
How it is calculated
Optical character recognition (OCR) turns the pixels of an image back into letters: a photo of a letter, a scanned invoice or a screenshot of a document becomes text you can copy, search and edit. This image to text converter uses Tesseract, the best-known open-source OCR engine, compiled to WebAssembly and running right in your browser.
How it works
- Drag in an image, choose one, or paste it with Ctrl + V (for example a screenshot from the clipboard).
- Check the language in the image. English is preselected; German, French, Spanish and Portuguese are also available.
- Click “Extract text”. The progress bar shows whether data is still loading or text is already being recognised.
- Correct the text in the box if needed, then copy it or save it as a .txt file.
Tips for accurate results
- Contrast: dark text on a light, even background works best. Shadows, gradients, patterns or watermarks behind the text reduce accuracy.
- Shoot straight on: photograph the page from directly above, not at an angle. Strongly tilted or curved lines (near a book’s spine) are recognised much less reliably.
- Resolution: around 300 dpi is the usual guideline for scanning. For photos this means the text must be large enough in the frame – capital letters at least about 20 pixels tall. The tool automatically enlarges very small images (up to 2×) and shrinks very large ones to 5,000 pixels on the long side.
- Crop: keep only the area with text – no margins, fingers or table edges. For screenshots, capture the window rather than the whole screen.
- Right language: the language determines the dictionary and character set. With “English”, characters such as ä, ß or é are missing; with “German”, French accents are.
Limitations
Tesseract is built for printed text. Handwriting is hardly recognised, and neither are highly decorative fonts, signs photographed at a steep angle or text on busy backgrounds. Tables and multi-column layouts come out as running text, and the column order may shift. The confidence shown is the average Tesseract reports across all words; below roughly 70 %, a better image is worth it. Always double-check important numbers (amounts, account numbers, invoice numbers) by hand: mix-ups such as 0/O, 1/l or 5/S happen even with good originals.
Data is downloaded the first time
So that recognition works without a server, your browser downloads the recognition engine the first time you click “Extract text” (about 3.7 MB, roughly 1.5 MB compressed in transit) plus the data for the chosen language: English 2.8 MB, German 1.3 MB, French 0.7 MB, Spanish 2.0 MB, Portuguese 1.3 MB. All files are served from this site – no third-party content delivery network is contacted. The browser keeps the language data locally (IndexedDB), so the next run starts much faster. Recognising a page takes a few seconds, depending on your device and the image size.
Privacy
Your image never leaves your device. Recognition runs entirely in your browser (in a web worker), and the extracted text isn’t sent anywhere either. Once you close the tab, nothing is kept – only the downloaded language data stays in the browser’s storage until you clear it.
Frequently asked questions
Is my image uploaded?
No. Text recognition runs entirely in your browser. The only downloads are the recognition engine and the language data – from this site, not from a third party. Your image and the text stay on your device.
Which languages are supported?
English, German, French, Spanish and Portuguese. The language of this page is preselected. Pick the language of the text in the image – otherwise special characters such as ä, ß or é are missing and word recognition becomes less accurate.
Can it read handwriting?
Hardly. Tesseract is trained on printed text. Very neat block capitals sometimes work; normal cursive handwriting practically never does.
Why does the text contain mistakes?
Usually it’s the image: too small, blurry, tilted, low contrast or a busy background. Photograph the page straight from above in good light, crop to the text and check the selected language. Around 300 dpi is a good guideline.
Why is the first run slower?
The first time, your browser downloads the recognition engine (about 1.5 MB compressed) and the language data (English 2.8 MB, German 1.3 MB). The language data is then stored in the browser, so further images are faster.
Can I copy text from a screenshot?
Yes. Take a screenshot (Windows: Win + Shift + S, Mac: Cmd + Shift + 4), paste it here with Ctrl + V and click “Extract text”. Screenshots are usually ideal: sharp, straight and high in contrast.
Does it work with PDF files?
Not directly – the tool reads images. For a scanned PDF, take a screenshot of the page or export it as an image and paste it here. If the PDF already contains text, simply select and copy it in your PDF viewer.
How accurate is the recognition?
With clean scans and screenshots of printed text, very high – often error-free. The confidence shown below the result helps you judge: below about 70 %, a better image is worth it. Always proofread numbers such as amounts or account numbers.
Sources and legal basis
- Tesseract.js – OCR library for the browser (GitHub, Apache-2.0)
- Tesseract OCR documentation – Improving the quality of the output
- Licences: Tesseract.js, Tesseract engine and language data (Apache-2.0)
As of:
Related tools
- Text CleanerRemove line breaks, extra spaces, empty lines and invisible characters, delete duplicate lines and sort lists. Free, instant and private in your browser.
- Character Counter and Word CounterCount characters with and without spaces, words, sentences, paragraphs and reading time – live, with limits for X, Instagram, TikTok, LinkedIn, SMS and more.
- Case ConverterConvert text to UPPERCASE, lowercase, Title Case, Sentence case, camelCase, snake_case or kebab-case. Free, instant and private – runs in your browser.
- Compress images – reduce file sizeCompress images without uploading: shrink JPG, PNG, WebP and HEIC, up to 20 at once, with an optional target size in KB and ZIP download. Free.
- Fancy Text GeneratorTurn text into bold, italic, cursive, gothic and 20+ other fancy fonts to copy and paste into Instagram, TikTok or Discord – with a note on accessibility.
- Hashtag Counter & Instagram Caption FormatterCount hashtags and @mentions, spot duplicate hashtags and clean up your caption: move hashtags to the end and keep line breaks. Free and private.