Searching...
No tools found

Image to Text — Free OCR Converter

Extract the text from a photo, screenshot, scan or PDF with OCR that runs entirely in your browser.

Runs in your browser — nothing is uploaded. Verify it

About the Image to Text — Free OCR Converter

Convert an image to text with OCR that runs entirely inside your browser — the photo, the scan and the PDF never leave your machine. Drop a photo of a page, a screenshot, a receipt or a scanned PDF and the tool reads it with Tesseract compiled to WebAssembly, then hands back the text with a confidence figure and a list of the words it was least sure about, so you know what to check instead of proofreading all of it.

Almost every OCR site uploads your file to a server and promises to delete it later, which is a promise you cannot verify about a document you may not be allowed to share — a passport, a medical letter, a contract. Here the recognition happens in the tab: nothing is sent, the language model is cached after the first run, and the page keeps working with the network disconnected.

How to use the Image to Text — Free OCR Converter

  1. Drop one or more images, or a PDF, onto the page.
  2. Choose the language of the text — English by default, with Chinese, Japanese, Spanish, German, French and Russian available. The first run for a language downloads its model once, then caches it.
  3. Say what the image looks like: a full page, one block of text, a single line such as a serial number, or scattered text on a receipt or poster. That choice only affects how the engine groups lines — it does not change the text it can see.
  4. Click Extract Text, then copy the text from the row or download it as a .txt file.

What this OCR engine accepts, and what it does with each input

InputWhat the tool doesLimit
Photo (JPG, PNG, WebP, BMP, GIF)Decoded, EXIF-rotated, scaled so the long edge is between 1,000 and 4,000 px, then read40 megapixels
ScreenshotRead at native size — already at the resolution OCR wants, so no scaling40 megapixels
Scanned PDFEach page rendered at 144 dpi (2x of the 72 dpi page box) and read as an image100 pages
Text PDFStill read as an image, which is slower than extracting the text layer — use PDF to Text for those100 pages
Multi-file batchOne file at a time, reusing the loaded model so only the first file waits for itNo batch limit
Language modelFetched once per language, then cached by the browser; 0.7 MB to 3.0 MB depending on the script8 languages
Clean 1240x760 render, 27,841 B17 words at 95% confidence in 412 ms, model included, on a cold cacheMeasured 2026-10-31
Same page stored sideways, EXIF Orientation 6Same 17 words at 95% — the tag is applied before recognition, so a phone photo is not fed to the engine on its sideMeasured 2026-10-31
Scanned PDF, image only, 33,695 B1 page, 17 words at 95% in 414 ms — the case a PDF-to-text tool turns into an empty fileMeasured 2026-10-31
Page darkened to 40/255 on one sideStill 95% with no lighting correction at all, which is why there is no Photo mode switch on this pageMeasured 2026-10-31

Limits are the engine's own constants, not marketing copy: 40,000,000 decoded pixels, 100 PDF pages, 1,000–4,000 px on the long edge, and a low-confidence word reported below a score of 60.

Frequently asked questions

Are my images uploaded to a server?

No. The OCR engine is Tesseract compiled to WebAssembly and it runs inside the tab, so the image is decoded, rotated, scaled and read on your own machine. The only network requests the page makes are for the engine itself — the worker script, the WebAssembly core and the language model — and those contain no part of your file. After the first run for a language, the model is cached in your browser and the tool keeps working offline. That is the difference between this page and one that says "files are deleted within one hour": a deletion promise is about a copy that already left.

Is there a file size or page limit?

There is no file-size limit and no daily limit. The two real limits are stated up front rather than discovered halfway: an image may be up to 40 megapixels after decoding, and a PDF may be up to 100 pages because each page is rendered and read at about a second per page. A 12 MB phone photo is fine — it is decoded, scaled to the resolution OCR actually needs and read. A file over either limit is refused with the number, not silently truncated.

Does it read handwriting?

Printed text and clear block capitals read well. Flowing script is the open question, and the honest answer is that it depends on the writing: the engine was trained on printed type, so it is matching shapes it never learned, and a page that is neat enough will read anyway. Measured on a joined-up cursive face at 46px, four lines came back at 86% confidence with one digit wrong (2026-10-31). A person does not write with consistent letterforms the way a font does, so treat that as an upper bound rather than a promise — and read the confidence figure, which is the only honest signal you get before proofreading. For handwriting, shoot flat and straight, keep the writing inside the frame, and check the words the row lists.

What does the confidence figure and the "check" list mean?

Tesseract scores every word it reads, and the tool averages those into the percentage on the row. Words scoring below 60 are listed by name — up to five of them — because that is the useful form of the answer: instead of proofreading 900 words you check the five that were guessed at. A page at 94% with nothing listed is usually clean. A page at 60% with five words listed is a page where the lighting, the angle or the script defeated the engine, and re-shooting it will do more than editing the output.

Why does a sideways phone photo still read correctly?

Because the tool applies the EXIF orientation tag before recognition instead of trusting the browser to have done it. A phone stores a portrait photo as landscape pixels plus a tag saying "rotate 90 degrees"; a browser displays it upright, so it looks correct on screen while the pixels underneath are on their side — and OCR on sideways pixels returns noise. This tool reads the tag out of the JPEG header, rotates the pixels itself, and then checks the decoded size against the size stored in the file to make sure the rotation was not applied twice.

Can it read a scanned PDF that has no text layer?

Yes, and that is the case it exists for. A scanned PDF is a picture of a page: there is nothing to select and nothing to copy, and a normal PDF-to-text tool hands back an empty file. Here each page is rendered at 144 dpi and read as an image, so a scan produces text. The row reports how many pages were read and the average confidence across them.

Which languages are supported?

Eight: English, Chinese Simplified, Chinese Traditional, Japanese, Spanish, German, French and Russian. One language is used per run, so a page mixing two scripts should be run twice with the appropriate language each time — a mixed-script page read with the wrong model degrades the other script rather than ignoring it. The language list shows the download size for each model because the first run for a language fetches it once.

What makes the text come out wrong?

Four things, in order of how often they matter: resolution below about 30 pixels of capital height, skew of more than a couple of degrees, blur, and low contrast such as grey pencil on grey paper. The tool corrects the first by scaling small images up to at least 1,000 pixels on the long edge, and reports the confidence so a bad result is visible rather than plausible. It does not correct skew — measured on a page tilted 1.5 degrees, the engine still read it at 95%, but a photo taken at 15 degrees does not recover — so shoot straight down. Uneven lighting turned out not to need correcting: a page darkened to 40/255 on one side read at the same 95% as the clean render.

Guides

More Image tools