Extract text from a screenshot

Copy text you can't select out of a screenshot.

How to use it

An error dialog, a chat, a page of a PDF reader or a snippet of someone's code: choose the screenshot and Photopip reads it with a text recognition model, then lists the lines it reads in the card above the canvas. You get plain text, one line per row; indentation and column alignment are not kept.

  1. Click Choose a screenshot. On a computer you can also drop the screenshot on the page.
  2. Wait for the card. The first time, it downloads two models (about 16 MB) and shows the progress with a Cancel button; on a computer they start downloading while you read this page. After that a screenshot takes a few seconds.
  3. Read the lines in the card. A heading, each line of a paragraph and each line of code get a row of their own, top to bottom; lines the model is unsure about are dropped.
  4. Click Copy Text and paste where you need it. To copy part of it, select those lines in the text box and press Ctrl+C (Command+C on a Mac).
ItemDetails
OpensOne screenshot at a time: PNG, JPG or WEBP, light or dark theme
GivesPlain text, one line per row, copied to the clipboard
Detection size1280 pixels on the long side; larger screenshots are scaled down to find the lines
Where it runsIn your browser, once the models have downloaded

The model reads the spaces as well as the letters and sometimes drops or adds one, so read the text before you send it: in the sample, “Install the” comes out as “Installthe” and “server.listen” as “server .listen”. Text side by side, such as two columns, comes out interleaved by height, and a table comes out one cell per line.

Can't my phone do this already?
On an iPhone XS or later, yes: open the screenshot in Photos, touch and hold a word, move the grab points and tap Copy (Apple calls this Live Text). This page is for a screenshot that is already on your computer: it is read in your browser and isn't uploaded.
Why is some of the text garbled or missing?
To find the lines, the screenshot is scaled to 1280 pixels on its long side, so 12-pixel interface text in a 2560-pixel screenshot can come out as broken words. Choose the Crop Tool (C), drag around the part you need and press Enter (on a phone, tap ✓ at the top right); the card reads the cropped area again. In our test, an error dialog that came out garbled from the full screen was read word for word once cropped.
Does it keep the formatting of code?
Line breaks, yes; indentation, no. In the sample, the two indented lines inside the function come out flush left, and the line holding only the closing brace is skipped. Paste into your editor and let it reformat.
Can I do several screenshots at once?
No, one at a time. Copy the text, then choose the next screenshot.

Updated 2026-10-24

More toolsImage to textRemove textCrop image

Extract text from a screenshot

Copy text you can't select out of a screenshot.

How to use it

An error dialog, a chat, a page of a PDF reader or a snippet of someone's code: choose the screenshot and Photopip reads it with a text recognition model, then lists the lines it reads in the card above the canvas. You get plain text, one line per row; indentation and column alignment are not kept.

  1. Click Choose a screenshot. On a computer you can also drop the screenshot on the page.
  2. Wait for the card. The first time, it downloads two models (about 16 MB) and shows the progress with a Cancel button; on a computer they start downloading while you read this page. After that a screenshot takes a few seconds.
  3. Read the lines in the card. A heading, each line of a paragraph and each line of code get a row of their own, top to bottom; lines the model is unsure about are dropped.
  4. Click Copy Text and paste where you need it. To copy part of it, select those lines in the text box and press Ctrl+C (Command+C on a Mac).
ItemDetails
OpensOne screenshot at a time: PNG, JPG or WEBP, light or dark theme
GivesPlain text, one line per row, copied to the clipboard
Detection size1280 pixels on the long side; larger screenshots are scaled down to find the lines
Where it runsIn your browser, once the models have downloaded

The model reads the spaces as well as the letters and sometimes drops or adds one, so read the text before you send it: in the sample, “Install the” comes out as “Installthe” and “server.listen” as “server .listen”. Text side by side, such as two columns, comes out interleaved by height, and a table comes out one cell per line.

Can't my phone do this already?
On an iPhone XS or later, yes: open the screenshot in Photos, touch and hold a word, move the grab points and tap Copy (Apple calls this Live Text). This page is for a screenshot that is already on your computer: it is read in your browser and isn't uploaded.
Why is some of the text garbled or missing?
To find the lines, the screenshot is scaled to 1280 pixels on its long side, so 12-pixel interface text in a 2560-pixel screenshot can come out as broken words. Choose the Crop Tool (C), drag around the part you need and press Enter (on a phone, tap ✓ at the top right); the card reads the cropped area again. In our test, an error dialog that came out garbled from the full screen was read word for word once cropped.
Does it keep the formatting of code?
Line breaks, yes; indentation, no. In the sample, the two indented lines inside the function come out flush left, and the line holding only the closing brace is skipped. Paste into your editor and let it reformat.
Can I do several screenshots at once?
No, one at a time. Copy the text, then choose the next screenshot.

Updated 2026-10-24

More toolsImage to textRemove textCrop image