Pull the text out of any image.
Photos of documents, screenshots, receipts, slides, handwriting on a whiteboard. Drop one in and get selectable text back, without sending your image to anyone.
Drop an image here or click to choose. PNG, JPEG, WebP, GIF or BMP. You can also paste with Ctrl+V.
What this is useful for
Anything where the words you need are trapped inside a picture. A photographed page you do not want to retype. A screenshot of an error message you want to search for. A receipt you are copying into a spreadsheet. A slide from a talk. A whiteboard photo from a meeting that would otherwise sit in your camera roll unread.
How to use it
- Drop an image on the box above, click to choose one, or just paste with Ctrl+V.
- Pick the language of the text. Getting this right matters far more than people expect.
- Press Extract text. The first run in a language downloads that language model, then it is cached.
- Edit the result if you need to, then copy it or download it as a .txt file.
Getting better results
OCR quality depends almost entirely on the input. A few things help a lot:
- Resolution beats everything. Text should be at least 20 pixels tall. A close, sharp photo of half a page beats a distant photo of the whole page.
- Get it square on. Perspective distortion from photographing a page at an angle confuses letter shapes.
- Even lighting. A hard shadow across the middle of a page will usually cost you that line.
- Pick the right language. Running Hindi text through the English model produces confident nonsense.
- Plain text works best. Dense tables, multi-column layouts and decorative fonts are the hardest cases.
An honest limitation
This is machine recognition, not magic. Clean printed text usually comes back near perfect. Handwriting, stylised logos, low-resolution screenshots and heavy table layouts will need correcting, which is why the result is editable rather than read-only. Always check numbers before trusting them, particularly on receipts and invoices.
Common questions
Is my image uploaded anywhere?
No. The image is read straight from your device into the recognition engine running in your browser. Open the Network tab in developer tools and you will see no request carrying your picture.
So what is being downloaded?
The language model, once. To be straightforward about it: the recognition engine and the trained data for your chosen language, around 15 MB, are fetched from a public code CDN the first time you use that language, then cached by your browser. Your image is never part of that. It is worth knowing the difference, because plenty of tools describe themselves as private while quietly posting your file to a server.
Why is the first run slower?
That first run includes the model download. After it is cached, later images in the same language start straight away. Recognition speed then depends on your own machine and the size of the image.
Which languages are supported?
Ten are offered here, including English, Hindi, Bengali, Tamil and Telugu. Each is a separate model, so switching language downloads that one the first time.
Can it read PDFs?
Not directly. Convert the page to an image first, or use our PDF tools to pull pages out, then run them through here.
Related tools
- EXIF viewer and remover to check what a photo reveals before you share it.
- Image compressor and format converter for preparing images.
- Word counter for checking the length of what you extracted.
- All 50 browser tools, none of which need an account.
