All tools run in your browser — your files never leave your device.
All tools154

Image & Photo

Image to Text (OCR)

Pull text out of screenshots and scans in around 100 languages.

What it does. OCR — optical character recognition — converts pictures of text into editable text. This tool runs Tesseract compiled to WebAssembly inside your browser, supporting around 100 languages. Accuracy on a clean 300 DPI scan is typically 96–99%. Your document is never uploaded.
Runs in your browserNothing uploadsNo signupWorks offline

How to use Image to Text (OCR)

  1. Drop an image or screenshot containing text. The language model downloads on first use.
  2. Select the language of the text — accuracy drops sharply if this is wrong.
  3. Copy the extracted text, or download it as a .txt file.

What accuracy can I expect?

OCR accuracy is dominated by input quality, not by the engine. The same document scanned well and scanned badly can differ by forty percentage points.

What accuracy can I expect?
InputTypical accuracyMain failure mode
Screenshot of on-screen text98–99%Almost none — pixels are already crisp
300 DPI flatbed scan96–99%Occasional confusion of l / I / 1
Phone photo of a printed page88–95%Perspective skew and uneven lighting
150 DPI scan80–90%Characters below the resolution threshold
Photo of a screen70–85%Moiré patterns from pixel grids
Handwriting20–50%Tesseract is trained on print, not script
Stylized or display fonts40–70%Glyph shapes outside the training set

How do I get better OCR results?

Five changes account for nearly all of the achievable improvement.

  1. Scan at 300 DPI. Below 200 DPI, character strokes fall below the resolution the engine needs. Above 400 DPI adds processing time without adding accuracy.
  2. Get the page square. Even a 3-degree rotation measurably degrades line segmentation. Photograph straight on rather than at an angle.
  3. Light evenly. A shadow across half the page causes the binarization step to threshold that half incorrectly, and text there is simply not seen.
  4. Set the correct language. The language model constrains character recognition and includes a dictionary for correction. Running German text through the English model costs roughly ten percentage points of accuracy.
  5. Crop to the text. Removing page borders, staple holes, and photographic background reduces false positives from noise.

Does it work on PDFs?

Not directly — this tool takes images. There are two kinds of PDF, and only one of them needs OCR.

A digital PDF, exported from Word or a design tool, already contains selectable text. Open it and copy the text out; running OCR on it would only introduce errors into something already perfect.

A scanned PDF is a container holding page images, with no text layer at all. That is the case OCR is for. Use the PDF to JPG tool to render each page to an image, then bring the images here.

Which languages are supported?

Around 100, including all Western European languages, Cyrillic scripts, Greek, Arabic, Hebrew, Devanagari, Chinese (simplified and traditional), Japanese and Korean.

Each language is a separate trained model of roughly 2–15 MB, downloaded on demand and then cached. Selecting English downloads only English.

For documents mixing scripts — an English paper with Greek mathematical notation, or a bilingual form — you can select multiple languages and the engine will consider all of them. This costs accuracy on each individual language, so select only the ones actually present.

Frequently asked questions

Can it read handwriting?

Poorly. Tesseract is trained on printed type; handwriting recognition needs a different class of model. Expect 20–50% on neat printing and effectively nothing on cursive.

Does it preserve the layout?

Reading order and line breaks are preserved. Columns, tables and text boxes are flattened into a single stream, because layout analysis is a separate problem from character recognition.

How long does it take?

Two to ten seconds per page on a modern laptop after the language model has downloaded. The first run of any language includes a one-time model download of a few megabytes.

Is my document uploaded?

No. Tesseract is compiled to WebAssembly and runs in a Web Worker in this tab. The only network traffic is the language model download, which is cached afterwards.

Can I OCR a photo of a whiteboard?

If the handwriting is neat block capitals, sometimes. Crop tightly, increase contrast first, and expect to correct the output.

Why did it return gibberish?

Usually the wrong language selection, or an image below about 200 DPI. Check the language first, then the resolution.

Is there a page limit?

No. Process as many images as you like — there is no per-page cost, unlike commercial OCR APIs that bill per thousand pages.

Guides for Image to Text (OCR)