Skip to content

Image to Text: Extract Text From Any Picture, Free

Drop files here — paste, drop, or click to browse

.png,.jpg,.jpeg,.webp,.bmp

Processed on your device — nothing is uploaded. Verify in your network tab.

This tool pulls the words out of an image and hands them back as plain, editable text you can copy. Drop in a photo, a screenshot, a scanned page, or a picture of a document, and the characters come back as selectable text in a few seconds. It is free, there is no sign-up, and there is no upload step.

The difference here is where the work happens. The optical character recognition (OCR) runs entirely inside your browser tab. The first time you use it, a small recognition model (about 25 MB) downloads and caches on your device; after that, every image you convert is read locally. Your picture is never sent to a server — you can confirm that yourself in your browser's network tab, and we explain how below.

It is built for printed and typeset text: receipts, screenshots, book pages, forms, slides, product labels, and business cards. English, Spanish, and Indonesian are supported at launch, with more languages on the way. Handwriting is the one thing it does not do well yet, and we are upfront about that limit further down the page.

How it works

  1. 01

    Add your image

    Drag a photo, screenshot, or scan onto the page, or click to browse your files. JPG, PNG, WebP, and BMP all work directly. If your photo is an iPhone HEIC file, export or share it as JPG first — browsers can't decode HEIC on their own yet. You can add several images at once and they will be read in order.

  2. 02

    Let the OCR run in your browser

    The recognition model reads the image on your own device. On the first run it downloads once (about 25 MB) and is cached, so every later conversion starts instantly. Nothing is uploaded — the image bytes never leave the tab.

  3. 03

    Copy or download the text

    The extracted text appears in an editable pane. Copy it straight to your clipboard, or download it as a plain .txt file. You can fix a stray character or reorder lines before you save.

How in-browser image to text works

Most online converters upload your picture to a server, run OCR there, and send text back. This one does not. The recognition model — a compact, modern OCR engine in the PaddleOCR family — is downloaded to your browser once and then runs locally in a background worker every time you convert an image.

That design has two practical consequences. First, privacy is structural, not a promise: because the conversion happens in your tab, there is no server that ever holds a copy of your image. Nothing about the file — not the pixels, not the filename — is transmitted. Second, it keeps working offline once the model is cached, so a captured receipt or screenshot converts even without a connection.

You do not have to take our word for it. Open your browser's developer tools, switch to the Network tab, and convert an image. You will see the model file download on the first run (and load from cache afterward), but you will not see your image being uploaded anywhere. The bytes stay on the device.

Screenshot to text: pull words out of any capture

Screenshots are the single most common thing people run through this tool, and they are also what it reads best. A screen capture is crisp, evenly lit, and rendered at native pixel density, which is close to ideal input for OCR.

Typical screenshot to text jobs this handles cleanly:

  • Copying an error message or stack trace that a program renders as an image or won't let you select
  • Lifting text out of a chat, a social post, or a comment thread
  • Grabbing code, a command, or a config snippet from a video or slide
  • Pulling numbers off a dashboard, chart label, or spreadsheet capture
  • Turning a screenshot of a PDF or paywalled page back into editable text

On macOS use Shift-Command-4, on Windows use the Snipping Tool (Windows-Shift-S), then drop the capture straight onto this page. Because the text in a screenshot is already sharp, accuracy on these is usually near-perfect.

What it reads well — and what it doesn't

Being honest about limits saves you time, so here is the real picture.

Reads excellently: printed and typeset text of almost any kind — books, receipts, invoices, forms, labels, signs, slide decks, and screenshots. Clear photos of a document page work well too, as long as the text is in focus and reasonably straight.

Struggles: handwriting. Cursive and casual handwritten notes are genuinely hard for in-browser OCR, and results will be poor — this tool is not the right one for them. We are building a dedicated handwriting-to-text tool that uses a different, heavier model for exactly this case; it is coming soon.

A few tips for better results: photograph documents straight-on rather than at an angle, get the whole text block in frame, and avoid glare and shadows. If a photo is blurry, retake it — sharper input beats any amount of post-processing. Very small or very low-contrast text may drop characters, so crop in close when you can.

Supported languages and image formats

Languages at launch: English, Spanish, and Indonesian. The engine recognizes the Latin-script characters, accents, and punctuation used across these languages, so Spanish tildes and accented vowels come through correctly. More languages are planned, and the tool will pick up the right model automatically as they are added.

Image formats: JPG/JPEG, PNG, WebP, and BMP are read directly. HEIC/HEIF — the format iPhones use by default — can't be decoded in the browser yet, so export or share those photos as JPG first (on iPhone, the Share sheet does this for you, or set Settings → Camera → Formats → Most Compatible to shoot JPG). For multi-page documents, a PDF is usually a better fit than an image; use our PDF to text tool for those.

There is no file-size cap imposed by a server, because there is no server in the loop — the practical limit is your device's memory. Everyday photos and screenshots are nowhere near that limit.

Frequently asked questions

Is my image really private, and how can I verify it?
Yes. The OCR runs entirely in your browser, so your image is never uploaded to any server. You can confirm this directly: open your browser's developer tools, go to the Network tab, and convert an image. You'll see the recognition model download on the first run and load from cache after that, but you will never see your image being sent anywhere. The bytes stay on your device.
What image formats can I convert to text?
JPG/JPEG, PNG, WebP, and BMP work directly. HEIC/HEIF — the default photo format on iPhones — can't be decoded in the browser yet, so export or share those photos as JPG first (the iPhone Share sheet converts them for you automatically). If you have a multi-page scan, a PDF is usually the better choice; our PDF to text tool handles those. You can add several images at once and they'll be read in sequence.
How accurate is the text extraction?
For printed and typeset text — receipts, screenshots, book pages, forms, slides — accuracy is very high, often near-perfect on clean, sharp input. Screenshots read especially well because the pixels are crisp. Accuracy drops with blur, glare, heavy skew, or very small text, so a straight, well-lit, in-focus image gives the best result. Handwriting is the main exception and is not handled well yet.
Which languages does the image to text tool support?
At launch it supports English, Spanish, and Indonesian, including the accented characters and punctuation those languages use, so Spanish tildes and accented vowels come through correctly. The tool loads the right recognition model automatically. More languages are on the roadmap and will become available without any change to how you use the page — just drop your image and convert.
How do I copy text from a photo on my iPhone or Android?
Open this page in your phone's browser, tap to add a photo from your camera roll (or take one on the spot), and the text is extracted right on the device. If an iPhone photo is in HEIC format, share it as JPG first — the iOS Share sheet converts it for you. When the text appears in the editable pane, tap Copy to put it on your clipboard, or download it as a .txt file. Nothing is uploaded from your phone.
Can I convert multiple images at once?
Yes. Add several images together and the tool reads them one after another, returning the text for each. Because everything runs locally, there's no per-file upload wait — the main cost is your device processing each image, which is usually a second or two apiece for a typical photo or screenshot. Larger batches simply take proportionally longer.
Why is the first conversion slower than the rest?
The first time you use the tool, it downloads the OCR model — about 25 MB — to your browser and caches it. That one-time download is the slow part. Every conversion after that reuses the cached model and starts instantly, even across visits and even offline. So the first image may take a few extra seconds; the rest are fast.
Can it read handwriting?
Not well, and we won't pretend otherwise. In-browser OCR is built for printed and typeset text; cursive and casual handwritten notes produce poor results with this engine. We're building a separate handwriting-to-text tool that uses a heavier, purpose-built model for exactly that job, and it's coming soon. For anything printed — including neat block capitals — this tool works well today.