Screenshot2Text
Batch Image to Text
To convert multiple images to text at once, drop them all here together. You get one box of text, with each file's name above its own text. OCR runs in your browser and we don't upload your images.
Screenshot2Text
To convert multiple images to text at once, drop them all here together. You get one box of text, with each file's name above its own text. OCR runs in your browser and we don't upload your images.
OCR runs in the browser. We don't upload your file for OCR.
Drop a screenshot, image, or PDF here
PNG, JPG, WEBP, GIF, BMP, or PDF · several files at once · tap to browse
Or paste a screenshot with Ctrl+V or ⌘V
Screenshot2Text reads PNG, JPG, WebP, GIF, and BMP images, and PDFs, in the same drop. Files are read one after another. The status line shows which one it is on, for example File 2 of 5, and a percent for the whole batch. A file that can't be read is skipped, the rest still finish, and a short note says which one was skipped.
There is no account and no plan. How many files you can drop depends on your device. A handful of ordinary screenshots is the intended use. Dozens of huge camera photos can slow or stall the tab, because the work runs on your machine, so crop big captures first.
Sharp screenshots and printed text read best. Handwriting and dim photos are still unreliable. The first run fetches the OCR engine and language data to your device, and those requests don't include your images.
We dropped all 22 PNG screenshots from our OCR accuracy test on the tool at once: app screens, paragraphs, code, receipts, and chats. The status line counted through File 1 of 22 to File 22 of 22, and the files were read one after another in the tab.
We ran the same batch three times. It took 16.78, 15.89, and 15.97 seconds, so the median was 15.97 seconds, or about 0.73 seconds per screenshot. For comparison, reading the same 22 PNG files one at a time in the accuracy test averaged 0.71 seconds each, as recorded in the run 3 CSV.
In the box, each file's text sits under a header line with its file name, in the order you dropped the files. The text for every file was identical in all three runs, and identical to what the tool gives when you read that file on its own.
Today 9:41 AM
Are we still meeting at noon?
Yes! I will be there around
12:10, traffic is bad.
No problem. I got us a table
by the window.
Perfect, see you soonThe header lines make it easy to copy one file's text or to find which screenshot a line came from. Batch time grows with the number and size of the files. Tall full-page captures take longer than these small crops, so crop before a big batch.
How we timed it: we ran the current site code (commit 968e282) as a local production build and drove it with headless Chromium 153 on an 8-core Linux machine, with the recognition model already loaded. The clock starts when the tool shows it is busy and stops when it shows it is done, the same way our OCR accuracy test times each image.
Batch does not make reading faster. In our test the 22 screenshots took about 0.73 seconds each in one drop, against 0.71 seconds each one at a time. What it saves is clicks: one drop, one box, and one copy or .txt download for the whole set.
Here is what the tool does, from its code and from a check on the live site on October 16, 2026. Everything runs in your browser tab. There is no file count limit in the page, so the limit is your device. Files are read one after another with the same OCR engine, in the order the browser hands them over. We dropped three screenshots in a non-alphabetical order and the blocks came back in that order. Each block sits under a header line with its file name, and each file's text matched what we got reading it alone. A PDF adds one block per page.
Two rules to know. A run reads one batch at a time: if you drop more files while it is reading, the page asks you to wait or press Stop. Stop keeps the text found so far. A file that is not a PNG, JPG, WebP, GIF, BMP, or PDF is skipped with a short note, and HEIC files are not read.
| You want | Better choice | Why |
|---|---|---|
| Several related screenshots in one box | Batch | One drop and one copy, with each file's name above its text |
| To know which file a line came from | Batch | Every block has a header line with the file name |
| One clean block of text to paste | One file at a time | A single file comes back with no header line |
| To check each result before the next | One file at a time | Batch shows the combined text only when the whole run is done |
| A very large set or big camera photos | Smaller groups | The work runs on your device, so a huge drop can slow or stall the tab |