Image to Text Converter (OCR)

Free OCR for photos, screenshots and scanned PDFs in 17 languages, with confidence scores. Images stay on your device; the Tesseract engine loads from a CDN once.

The interactive tool loads here when JavaScript runs.

About this tool

What is the Image to Text (OCR) tool?

The Image to Text tool reads the words in a picture and gives you editable text. Drop in a photo of a page, a screenshot, a receipt or a scanned PDF, choose the language, and click Extract text. You can also paste a screenshot straight from the clipboard with Ctrl+V or Cmd+V. The result appears in an editable box with Copy and TXT download buttons, and a confidence score tells you how sure the engine is.

Recognition is done by Tesseract, the open-source OCR engine, compiled to WebAssembly by the tesseract.js project and running in your browser. Your images and PDFs are processed on your device and are not uploaded. To be precise about the network: the first time you run OCR, the engine itself and the data file for each language you choose are downloaded from the jsDelivr CDN, a few megabytes each. After that the browser caches them, so later runs start faster.

For scanned PDFs, each page is first rendered to an image at 300 DPI with pdf.js and then read. Several images or pages are processed in order and the text is joined with a clear page marker between each.

  • OCR for PNG, JPG, WebP, GIF, BMP, pasted screenshots and scanned PDFs
  • 17 languages including Chinese, Japanese, Korean, Arabic and Hindi
  • Overall confidence plus a count of low-confidence words
  • Automatic enlargement of small screenshots
  • Copy to clipboard or download as a UTF-8 TXT file
  • Images stay on your device; the engine and language data load once from a CDN
Read the guide: How OCR Works and How to Get Accurate Text From Images

How to use the Image to Text (OCR) tool

  1. Drop images or a PDF onto the upload area, click Choose files, or paste a screenshot with Ctrl+V or Cmd+V anywhere on the page.
  2. Pick the language of the text. For a non-English document that also contains English words, keep Also recognise English ticked.
  3. Leave Layout on Automatic for documents. Choose Sparse text for UI screenshots and labels, or One uniform block for a cropped paragraph.
  4. For a PDF, optionally type the pages to read, such as 1-3. If it is password protected, a password box appears after the first attempt.
  5. Click Extract text. The first run downloads the engine and language data; progress is shown as each image or page is read.
  6. Check the confidence badge, correct anything that looks wrong directly in the text box, then click Copy or TXT.

Worked examples

A screenshot of an error dialog

Input

A 900 × 300 px screenshot pasted with Cmd+V, language English, Layout Sparse text

Output

The dialog text, with confidence typically in the 90s for clean system fonts

Because the screenshot is small, it is enlarged 3x before recognition, which lifts 13 px interface text well above the size where Tesseract starts to struggle. Sparse text mode stops the engine from trying to join buttons and labels into paragraphs.

A two-page scanned letter in French

Input

scan.pdf, language French, Also recognise English ticked

Output

Text of both pages, separated by ----- scan.pdf, page 1 ----- and page 2 markers, saved as scan-ocr.txt

Each page is rendered at 300 DPI first. Loading French plus English lets accented French words and an English product name in the same letter both come out right.

Background and insight

Tesseract was developed at Hewlett-Packard between 1985 and 1994, was released as open source in 2005, and was developed further with Google's sponsorship. Version 4 replaced the old character-shape classifier with an LSTM neural network that reads whole lines at a time, which made it far better on ordinary printed text. It first finds the page layout (blocks, paragraphs, lines), then recognises each line, then uses dictionary and language data to settle uncertain words. That is why picking the right language matters: German data knows about ß and long compound words, French data knows accented letters.

OCR quality is mostly decided before recognition starts. Tesseract's own documentation recommends images of at least 300 DPI and notes that accuracy falls when lower-case letters are under about 10 pixels high. A phone screenshot of 13 px interface text is right at that edge, so this tool can enlarge small images two or three times before reading them. Sharp focus, even lighting, straight lines and dark text on a plain light background matter more than any setting.

Every recognised word comes with a confidence from 0 to 100. The tool reports the average, weighted by how much text each image held, and counts words under 60. Treat it as a hint rather than a measurement: Tesseract can be confident and wrong, especially with look-alike characters such as 0 and O, 1 and l, or rn and m.

Common use cases

  • Copying text from screenshots

    Grab an error message, a code snippet in a video frame or a paragraph from an image someone sent you.

  • Digitising paper

    Turn photos of printed letters, book pages, menus or handouts into searchable, editable text.

  • Scanned PDFs

    Get the text out of a PDF that came from a scanner, which PDF to Word converters cannot read.

  • Receipts and invoices

    Pull totals, dates and reference numbers from receipts into a spreadsheet or expense report.

  • Translation

    Extract text from a photo of a sign or document in another language so you can paste it into a translator.

Tips and limitations

  • Crop to the text you need before uploading. Borders, photos and table lines around the text add noise and slow recognition.
  • Photograph pages straight on in good light. Skew of more than a few degrees and curved book pages reduce accuracy noticeably.
  • Handwriting is not supported in any useful way: Tesseract is trained on printed text and will return little or garbled output for handwritten notes.
  • Choose only the languages you need. Each extra language adds a download and slows recognition, and can cause odd character substitutions.
  • Always proofread numbers, names, codes and anything legal or financial. A single misread digit looks perfectly plausible.
  • If no text is found, try Sparse text layout, a higher-resolution image, or check that the language matches the text.

Frequently asked questions

Is my image uploaded to a server for OCR?

No. Recognition runs in your browser with tesseract.js, and the image never leaves your device. The page does download the OCR engine and the language data you select from the jsDelivr CDN the first time, and records anonymous usage events, but neither includes your image or its text.

Why does the first OCR run take longer?

The first run downloads the Tesseract WebAssembly engine and the trained data for each language you picked, a few megabytes each. The browser caches them, so later runs in the same browser start almost immediately unless the cache is cleared.

Can it read handwriting?

Not reliably. Tesseract is trained on printed and typed text. Neat block capitals sometimes work, but cursive and ordinary handwriting usually come out as nonsense. Handwriting recognition needs a model trained for it.

How do I extract text from a scanned PDF?

Drop the PDF into this tool. Each page is rendered at 300 DPI and then read by the OCR engine, with the text of each page separated by a marker. Use the PDF pages box to read only some pages. Password-protected PDFs are supported if you know the password.

What does the OCR confidence percentage mean?

It is Tesseract's own estimate, from 0 to 100, of how likely each word is correct, averaged over the text. Above about 90 the text is usually clean; between 70 and 90 expect a few errors; below 70 proofread carefully or improve the image. It is a hint, not a guarantee.

Which languages can it recognise?

English, Spanish, French, German, Italian, Portuguese, Dutch, Polish, Turkish, Russian, Ukrainian, Arabic, Hindi, Chinese (Simplified and Traditional), Japanese and Korean. For mixed documents you can add English to any other language.

How can I improve OCR accuracy on a photo?

Shoot straight on with even light and no shadows, fill the frame with the text, and keep it in focus. Crop away everything that is not text. For small text, a higher-resolution photo helps more than any setting. Make sure the language picker matches the text.

Can I paste a screenshot instead of saving it first?

Yes. Take a screenshot to the clipboard (for example Cmd+Ctrl+Shift+4 on a Mac or Windows+Shift+S on Windows), then press Ctrl+V or Cmd+V anywhere on this page. The image is added to the list, ready to read.

Is there an in-depth guide to the Image to Text (OCR) tool?

Yes. “How OCR Works and How to Get Accurate Text From Images” covers the background, how it works, common pitfalls and worked examples. Read the full guide.