Toolminex
Image Tools

Image to Text

Extract text from any image using OCR. Upload a photo, screenshot, or scanned document and get the text instantly. Free, private, runs in your browser.

No uploads, runs in browserFree & no signupJPG, PNG, WebP, GIF

Upload Image

Drop an image here

or click to browse

JPG, PNG, WebP, GIF

Extracted Text

Extracted text will appear here

How to extract text from an image

Load an image, let the OCR engine read it, and proofread the result before you use it.

  1. 01

    Use the sharpest image you have

    Drop in a JPG, PNG, WebP or GIF. A straight-on photo in good light beats a tilted one taken in a dim room, and a screenshot beats a photo of a screen.

  2. 02

    Crop to the text first

    If the text is a small part of a busy photo, crop it with the Image Cropper before you start. The engine then spends its effort on the words, not on the background.

  3. 03

    Extract and watch the progress bar

    The first run loads the OCR engine and English language data, so it takes longer. After that, a typical screenshot finishes in a few seconds.

  4. 04

    Proofread, then copy or download

    Check numbers, names and email addresses against the image. Copy puts the text on your clipboard; Download saves it as a .txt file.

How the text is read

The tool runs Tesseract, an open-source OCR engine first developed at HP and later maintained by Google, compiled to WebAssembly through the Tesseract.js library. It looks for lines of text in the image, splits them into words, and uses a neural network trained on English to recognise each one.

Your image never leaves the browser. What does come over the network, once, is the engine itself and the English language data, which your browser then caches. That's why the first extraction is slower than the rest, and why it needs a connection the first time.

What kind of image gives the best result

Accuracy depends far more on the image than on anything you can set. This is roughly what to expect from common sources:

SourceTypical resultWhy
Screenshot of a web page or appVery goodClean edges and plain backgrounds
Scan of a printed page at 300 DPIVery goodThe resolution Tesseract's own docs recommend
Phone photo of a document, taken square-onGoodShadows and curled pages cause the most errors
Receipt from a thermal printerFairFaded, low-contrast print; numbers need checking
Text on a photo, sign or product labelFair to poorBusy backgrounds and stylised fonts confuse it
HandwritingPoorThe model is trained on printed text

Size matters too. Tesseract struggles when letters are only a few pixels tall, so a whole page squeezed into a small thumbnail will come out garbled. If text looks tiny, crop to the area you need rather than shrinking the image, and use the original file rather than a compressed copy from a chat app.

Fixing a photo before you run OCR

Most bad OCR results come from the photo, and a minute of preparation fixes most of them. Shoot straight down at the page with the phone parallel to it, so lines stay level. Light it evenly: window light from the side works well, while an overhead lamp often casts your own shadow across the text. Turn off the flash on glossy paper, since its glare wipes out whole words.

Then crop to the text, using the Image Cropper. If the page came out slanted, rotate it with Image Flip & Rotate so the lines are horizontal. For faint print, such as an old receipt, raising the contrast in your phone's photo editor before uploading helps the engine separate ink from paper. Keep the image at its original size. Shrinking a photo to save space throws away the detail OCR needs.

What people extract text from

Copying text out of a screenshot

Error messages, slides from a call and posts that can't be selected are the easiest wins. The result usually needs only a quick check.

Typing up a printed letter

Photograph each page flat and square-on, extract it, then fix the handful of misread words instead of retyping the whole page.

Getting numbers from a receipt

Pull the totals into a spreadsheet for expenses. Thermal receipts fade, so check every figure against the paper.

Making a quote searchable

Extract a paragraph from a photo of a book page so you can paste it into your notes and find it later.

Proofreading the output quickly

You rarely need to reread everything. Start with the parts where a mistake costs most: numbers, amounts, dates, names, email addresses and URLs. OCR errors cluster in those, because there's no surrounding word for the engine to lean on. Compare each against the image.

Next, paste the text into a document with spell check on. Misreads usually turn real words into non-words, such as "rnodern" for "modern", which spell check underlines at once. Finally, compare the word count with what you expected. A paragraph that comes back far shorter usually means a line was skipped, often one in a different colour or sitting over a photo.

Limits worth knowing

  • It reads English only. Accented letters in French or Spanish words are often lost, and other scripts such as Hindi or Arabic aren't recognised.
  • Layout isn't kept. Columns, tables and text boxes come out as plain lines, so a two-column page may interleave its columns.
  • It takes images, not PDFs. For a scanned PDF, use PDF OCR, which reads printed text from a PDF page.
  • One image at a time. There's no batch mode for a folder of photos.
  • Very large photos are slow. A 12-megapixel phone photo takes noticeably longer than a cropped screenshot, especially on older phones.

Frequently asked questions

No. Recognition runs in your browser with WebAssembly. Only the engine and language files are downloaded, and those are the same for every user.
OCR mixes up shapes that look alike: 0 and O, 1 and l, rn and m. Blur, low contrast and decorative fonts make it worse. Proofread anything you'll rely on.
Yes. On most phones, tapping the upload area offers the camera as well as your photo library. Hold the phone parallel to the page to avoid slanted lines.
There's no fixed limit, but big images take longer and use more memory. Cropping to the text is the quickest way to speed things up.
After the first run, a screenshot or a cropped paragraph usually takes a few seconds. A full-resolution phone photo of a dense page can take much longer, especially on an older phone, so crop first if it's slow.
Only after the first run. The engine and English data download once and your browser caches them. If the cache is cleared, it needs a connection again.

Related tools

Something not working right?