Image to text
Read the words out of a photo, a screenshot or a scan. The recogniser runs inside this tab, so the picture never leaves your machine, and every word it was unsure about is marked for you.
Drop the picture in, check the marked words, then copy the text.
Drag to move. Double-click, pinch, or hold Ctrl and scroll, to zoom.
Nothing read yet
The text will appear here, with anything the engine was unsure about underlined.
Free · no sign-up · nothing uploaded. The recogniser itself is downloaded once and then runs inside this tab, so your receipts and letters are read on your own machine. Open the network panel and watch: after the engine loads, reading a picture makes no request at all.
Removed from this browser.
Kept in this browser only. Create an account to keep them on every device.
How to extract text from an image
Give it the picture
Drop an image in, click to choose files, or just press paste after taking a screenshot. Nothing uploads and there is no size cap.
Read the marks, not just the text
Every word gets a box on the picture, and the ones the engine doubted are underlined in the text. Point at either and the other lights up.
Fix anything odd, then take it
Switch to Editable to correct a word, then Copy the text or save it as a .txt file. A batch saves as a zip of text files.
Using the image to text tool
The picture and the text sit side by side because you will need both. OCR is never simply right: it is right about most words and guessing at a handful, and the handful is the whole problem. Everything below is about finding them quickly.
What you can hand it
Drop files onto the panel, click to choose them, or press Ctrl V to paste a screenshot straight from the clipboard. That last one is the fastest route on a phone or after a screen grab, because there is no file to find first.
| Accepts | Notes |
|---|---|
| JPG, PNG, WebP, GIF, BMP | Anything your browser can decode as an image. |
| Any file size | There is no megabyte cap, because there is no upload to pay for. |
| Up to 40 megapixels | Past that it is refused rather than left to run the tab out of memory. |
| Any number of files | They queue and run one after another, each with its own score. |
| Not PDF | Export the pages as images first. See the limits below. |
The picture, and the boxes on it
Every word the engine found gets a rectangle. Indigo means it was confident, amber means it was not. Boxes and Clean in the panel header switch the overlay off when you want to look at the picture itself.
Pointing at a box highlights the matching word in the text, and pointing at a word highlights its box. The two are linked both ways: click a box and the text scrolls to that word, click a word and the picture moves to it. On a full page of small print that is the fastest way to check a marked word against the original.
Zooming in on a dense page
A full page of text shrunk to fit a pane is unreadable, and checking a marked word against the picture is the whole job. So the picture pane is a viewport you can move around in.
| To do this | Do this |
|---|---|
| Zoom in or out | The + and − buttons in the panel header. Pinch on a touchscreen. |
| Zoom without leaving the keyboard or trackpad | Hold Ctrl, or Cmd, and scroll. It zooms on the pointer, so it goes where you are looking. |
| Jump to actual size, and back | Double-click the picture. It toggles between the whole page and its own pixels. |
| Move around | Drag the picture once it is bigger than the pane. |
| Get back to the whole picture | Press the percentage in the middle of the zoom control. It reads Fit when you are there. |
| Find a word on the picture | Click it in the text. The picture moves to it. |
Scrolling on its own is left alone deliberately, so the page still scrolls when the pointer is over a tall picture. Zoom is a deliberate gesture here rather than something that happens to you on the way past.
The text, and what the underlines mean
A wavy amber underline means the engine scored that word under 90 out of 100. That is a measured line rather than a round number. Over 1,214 words of testing, words scored under 90 were wrong 43.5% of the time and words scored 90 or over were wrong 1.0% of the time.
| Control | What it does |
|---|---|
| Marked | The read-only view, with doubtful words underlined and linked to the picture. |
| Editable | A plain text box. Fix what the engine got wrong before you copy it. |
| Keep line breaks | Off, a wrapped paragraph arrives as one paragraph. On, every line on the page becomes a line of text. Turn it on for poetry, code and addresses. |
| Copy text | Takes what is on screen, including any edits you made. |
| Save .txt | One text file, named after the image. A batch gets Save all as .txt, which is a zip. |
Layout: the control that fixes most bad readings
This is the most useful setting on the page and almost no other converter exposes it. It tells the engine what shape the page is, and getting it wrong is what causes most complete failures rather than the recognition itself.
| Setting | Use it for | Measured effect |
|---|---|---|
| Auto | The default. Ordinary documents and screenshots. | Correct on 10 of our 15 test images. |
| One block | Receipts, columns, tilted pages, anything Auto mangles. | Test receipt: 18.34% error to 1.31%. Tilted page: 100% to 0.00%. |
| One line | A single line: a serial number, a sign, a caption. | Stops the engine hunting for a page structure that is not there. |
| Scattered | Labels on a diagram, a map, a UI screenshot with text in corners. | Finds text that Auto discards as noise. |
A page tilted by three degrees defeated Auto layout completely in our testing: zero words returned, on a page whose characters the same engine reads perfectly once told to treat it as one block. If a reading comes back empty or badly, that is the first thing to try.
Before reading: the three switches
These change the picture before the recogniser sees it. Each is a measured claim, and the number beside it comes from the corpus in the guide.
| Switch | What it does | Measured effect |
|---|---|---|
| Sharpen small text on by default | Reads once, measures the words that came back, and reads again at double size if the type was small or the score was poor. | On a 419px-wide screenshot, 96.07% error to 3.54%. The largest single improvement available. |
| High contrast | Flattens the picture to pure black and white, inverting it first if it is a dark-mode screenshot. | Rescued the tilted page from 100% error to 9.82%. Made a clean page very slightly worse, which is why it is off. |
| Straighten | Estimates the page angle and rotates it back. | Finds the angle correctly, and helped least of the three. Try One block on a tilted page first. |
Sharpening is deliberately not decided from the image dimensions. An earlier version doubled anything narrower than 1600px and that made a 611px test table worse, from 2.50% error to 69.17%, because the extra size pushed the layout analyser into reading the columns in the wrong order. Image width turns out to be a poor guide to text height, so the tool measures the words instead.
The rest of the bar
Five controls that do not change how a picture is read, only which pictures and what happens to the results.
| Control | What it does |
|---|---|
| Language | Six to choose from. Picking one other than English downloads that model the first time, one to two megabytes, and then keeps it. Changing it marks every open image for re-reading. |
| Add more | Adds images to the batch without clearing what is already read. |
| Clear | Empties the batch and shuts the recogniser down, which hands back the tens of megabytes it was holding. |
| Read again | Re-reads everything with the current settings. Use it after changing Layout or a switch. |
| Save all as .txt | Appears with more than one image. A zip with one text file per picture, named after it. |
When it reads twice on its own
A poor first reading gets a second attempt rather than being handed to you as the answer, and the panel says when that happened. There are two triggers, both taken from the benchmark:
- The type was small, or the score was poor. It reads again at double size and keeps whichever attempt scored higher.
- Auto layout returned nothing, or scored under 65. It reads again as one block, which is the fix for a tilted or column-heavy page.
Neither fires on an ordinary document, which reads correctly the first time and scores in the nineties. When one does fire, the note under the score tells you, because a tool that quietly retries and reports only the winner is a tool you cannot reason about.
Keyboard shortcuts
| Keys | Does |
|---|---|
| Ctrl V or Cmd V | Read whatever image is on the clipboard. |
| Ctrl or Cmd and scroll | Zoom the picture on the pointer. |
| Esc | Leave full screen. |
What this tool will not do
The engine here runs on your machine, which is the reason it can promise the picture stays put and also the reason it loses to a data centre on the hardest input. Both halves are true and the guide publishes the losing rows.
- Handwriting. The models are trained on printed type. Cursive will not work.
- PDF files. Images only. Use a PDF tool to export pages first.
- Table structure. You get the words, not the rows and columns. A table comes back as text in reading order.
- Six languages. English, French, German, Spanish, Italian and Portuguese. Nothing outside the Latin alphabet.
- The very hardest images. A cloud recogniser read our tilted page and our table with no errors at all, where this one scored 2.36% and 2.50%.
What "nothing is uploaded" means here, and how to check
It means the recogniser is a file your browser downloads and then runs, the same way it runs the rest of this page. The picture goes into a function, the text comes out, and no request happens in between.
This is worth verifying because the claim is not always true elsewhere. Of the six converters tested while building this, three display a privacy promise directly under the upload box while posting your file to their server. One publishes it as structured data that search engines read: "runs 100% in your browser. Your images are never uploaded to any server", on a page whose network traffic is a POST of your file followed by polling a server task by filename.
Open the network panel, drop in a picture, and look. Here you will see the engine load once and nothing after it. That test takes thirty seconds and it works on any tool that makes the claim.
Frequently asked questions
Is my image uploaded anywhere?
No, and you can check rather than take our word for it. Open your browser's network panel, read a picture, and watch: the only requests are for the recogniser itself, once, from this domain. After that a read makes no request at all. Three of the six converters we tested print "no data is transmitted or stored" underneath a form that posts your file to their server, so this is worth verifying wherever you do it.
Why is the first read slower than the rest?
Because the recogniser has to arrive before it can run. It is about 3.4 MB compressed, which is the engine plus the English model, and it downloads once and is then cached for a year. Every read after that is local: on an M1 Max in Chrome our fifteen test images took a median of 0.32 seconds each. There is no queue, because there is no server with other people in front of you.
What do the underlined words mean?
The engine was not confident about them. It scores every word out of 100, and words scoring under 90 are underlined. That number is measured, not guessed: across 1,214 words of testing, words scored under 90 were wrong 43.5% of the time and words scored 90 or over were wrong 1.0% of the time. Underlining below 90 marks about 5% of the text and catches roughly seven in ten of the actual mistakes.
Can it read handwriting?
Not reliably, and it is better to say so. The models here are trained on printed type, so neat block capitals sometimes come through and ordinary cursive does not. If handwriting is the job, this is the wrong tool, and no free browser tool will do it well. A phone's built-in camera text feature is a better first try.
My receipt came back with the prices in the wrong places. Why?
Because Auto layout read the columns as separate blocks and put one after the other. The characters are usually right; the order is not. Set Layout to One block and read it again. On our test receipt that took the error rate from 18.34% to 1.31%, and it is the single most useful control on the page for anything with columns in it.
How many images can I do at once?
There is no limit set, because there is no server cost to meter. Drop in fifty and they run one after another with a per-file score on each, then Save all as .txt gives you a zip with one text file per image. The tools ranking above this one cap a free batch at five, ten or fifty images and at 7 MB a file.
Which languages does it handle?
English, French, German, Spanish, Italian and Portuguese. Each is a separate model of one to two megabytes, downloaded only if you pick it, so choosing English costs nothing for the other five. That is fewer than the "100+ languages" some converters advertise, and the reason is honest: every extra language is another model to ship, and a script other than the Latin alphabet is a much larger one.
Does it keep the text I extract?
No. Other tools on this site keep your last ten runs in the browser so you can pick one back up, and this one deliberately does not keep the text. What it records is the recipe: the language, the layout mode and which switches were on. A tool people point at bank statements and prescriptions should not leave their contents in localStorage for whoever uses the machine next.
Images to PDF
Turn the scans you just read into one document, at full resolution.
Image compressor
Make the pictures smaller first, and see exactly what it costs.
Notepad
Somewhere to put the text once you have it, that also never uploads.
Sign PDF
Sign the contract you just read, with the text in it left as text.