How to extract text from a screenshot on Mac
By Ziad Ziadeh, Snapline’s developer · Published 8 September 2026 · Last updated 24 September 2026
The short version
- Free and built in: open the screenshot in Preview, drag across the words, Control-click, and choose Copy Text. That's Live Text, it ships with macOS 14 or later (where Apple offers it in your region and language), and for a one-off it is the right answer.
- If you copy text off the screen several times a day, a select-a-rectangle tool such as TextSniper, or the OCR mode in CleanShot X or Shottr, skips the open-the-file step and reads from video and any window. The whole comparison is in how to copy text from anywhere on your Mac's screen.
- Those tools copy and move on; Snapline also remembers. It reads every screenshot in the background, on device, so a shot from last month can be found by a word that was in it, copied block by block, and translated on the Mac, and its own select-and-copy mode, Capture Text (⌥⌘E), joins wrapped lines into paragraphs, offers Copy as Table and Copy as Code where the text has that shape, and files what it read as a searchable clip.
What macOS gives you: Live Text
macOS has built-in OCR, and it's good. It's called Live Text, it arrived with macOS Monterey, and Macs on macOS 14 or later have it, in the regions and languages Apple supports. Any image shown in Preview, Photos, or Safari becomes something you can drag a selection across, as if the picture were a text document, and the selection can be copied, looked up, translated, or searched for. If text is not selectable, enable Live Text in System Settings → General → Language & Region. If "extract text from a screenshot" means an address, a paragraph, or an error message once in a while, you can stop reading after the next section.
OCR, optical character recognition, is what turns the pixels of a screenshot back into characters a computer can copy, search, and translate. Every tool on this page uses OCR; what separates them is when it runs and what happens to the text afterwards. Live Text and the one-off tools read an image when you ask and hand the words to the clipboard. Snapline reads every capture as it lands and keeps the text in an index, which is what makes a folder of old screenshots searchable. That difference decides which one you want.
Copy text from a screenshot with Live Text
For a screenshot that's already saved, the whole job is open, drag, Control-click, paste. Apple's own Preview guide puts it in one line: "Drag to select text, Control-click your selection, then choose Copy Text."
- Take the screenshot: ⇧⌘4 and drag over the part with the text, or ⇧⌘3 for the whole screen. macOS saves a PNG to the desktop by default.
- Open it. Double-click the saved file to open it in Preview.
- Hold the pointer over the words. When it changes from an arrow to a text cursor, drag across the text you want.
- Control-click the selection and choose Copy Text (Copy on macOS 14). Paste it anywhere with ⌘V.
The same context menu carries the other Live Text actions: Look Up for a definition, Translate and then a language, and Search with your default web search engine. A phone number or email address in a screenshot gets its own actions, and a web address can be opened. Apple's guide notes the two caveats plainly: Live Text "isn't available in all regions or languages," and translation "isn't available in all languages and may not be available in some countries or regions." Which languages Live Text reads depends on the macOS version, so check Apple's feature-availability list rather than assuming.
For an image on a web page, you don't need a screenshot at all: in Safari, move the pointer over the image, drag across the words, Control-click, and choose Copy. If the page grabs the drag for something else (an image slider, a map), take a screenshot of the image with ⇧⌘4 and use Preview. For a photo, a scanned page, a slide in a PDF you exported as an image, or a picture someone sent you, the steps are identical: recognition depends on text clarity, language support, and whether Live Text is enabled.
Where Live Text stops
Live Text is a reading tool, not a filing system, and its limits all follow from that:
- One image, opened first, every time. Each extraction is find the file, open it, select, copy. That's fine once and tedious the tenth time in an afternoon.
- No screenshot library in the Copy Text command. It copies the selected words; it does not organize captures into a dedicated history. Photos, Spotlight, or a clipboard manager may provide separate search or history features.
- No batch. Copy Text works on one selection in one open image; Apple's Live Text guides describe no way to turn a folder of forty screenshots into forty text files.
- App support matters. Live Text also recognizes paused video frames on supported macOS versions. If a particular player or app does not expose selectable text, take a screenshot and open it in Preview.
- Small or blurry text often isn't recognized. Capture at the size you see it rather than shrinking the window first, and prefer a region capture of the text over a whole-screen shot you then squint at.
One-off OCR tools: TextSniper, and the OCR modes in CleanShot X and Shottr
The next step up removes the open-the-file step. All three of these do the same thing at heart: press a shortcut, drag a rectangle over anything on screen, and the recognized text lands on the clipboard. Because they read the screen rather than a saved image, they work on a paused YouTube frame, a PDF that won't let you select, a presentation in a video call, or a dialog box, with no screenshot file created.
TextSniper
TextSniper is the single-purpose one, and it describes itself as "Extract text from images and other digital documents in seconds." Press ⇧⌘2, select an area, and the text is on the clipboard. It reads QR codes and barcodes into text, and it can read the extracted text aloud. Its languages follow the macOS version it runs on: English only on Catalina, eight on Big Sur and Monterey, twelve on Ventura, and more with each release since, over 25 on Tahoe according to its App Store page. Its own site is candid that it "can have misreads when there are a lot of symbols such as you might find in computer code." It is a one-time purchase on the Mac App Store and requires macOS Catalina or newer. Its Additive Clipboard option (called Keep History until 2021) adds each new read to one running text that survives a restart; neither its site nor its App Store page mentions a search of past captures or translation. The result goes to the clipboard; retaining it depends on your clipboard-history settings or where you paste it.
CleanShot X's OCR mode
CleanShot X includes text recognition as one of its capture modes: "Simply select an area that contains the text and it will be copied to your clipboard!" It lists 30+ languages, reads QR codes, and states that recognition "is performed completely on-device." It requires macOS 13.0 or newer. You are buying a large screenshot app (one-time purchase, with a separate subscription for its cloud) to get it, which is the right call if you also want the rest of CleanShot X and not otherwise. Like TextSniper, the OCR action copies text to the clipboard; retaining it depends on your history settings and workflow.
Shottr's OCR mode
Shottr is the free option here: press a hotkey, select an area, and Shottr "will parse the text and copy it to the clipboard." Its OCR also reads QR codes, and Chinese is supported once it's set as the primary language in the app's preferences. Shottr runs on macOS 10.15 and up, can be used free for as long as you want, and asks now and then whether you'd like to buy a one-time license. Same model as the other two: one selection, clipboard, and no index mentioned on its site.
The honest summary of all three: faster than Live Text for repeated use, and useful when an app does not offer selectable text. But if you'll need the words again next week, paste them somewhere now, rather than relying on clipboard retention.
Find the screenshot by its text: Snapline
Snapline approaches screenshot OCR from the other end. Every capture is read in the background, on device through Apple's Vision framework, in any language Vision reads on your macOS version, favoring your Mac's preferred languages (always with English). On macOS 14 Vision reads fourteen languages; Arabic, Turkish, Indonesian, Czech, Danish, Dutch, Norwegian, Malay, Polish, Romanian and Swedish need a later macOS, and all twenty-five are there on macOS 26. The text is kept in a local index, so extracting it is never the step you have to remember to do:
- Capture as usual with ⌥⌘S (rebindable). The Quick Access card that appears in the corner has a copy text cell, which puts the whole shot's recognized text on the clipboard, and a view text cell, which opens the Text View. No opening a file, no dragging a selection.
- To find any screenshot by a word in it, press ⌃⌘S for the History shelf, click All history… to open the full History window, and type the word in its search field. Every capture whose text contains it surfaces, whether it was taken today or months ago, and the arrow keys walk through the results without opening an editor.
- The Text View shows the capture beside its recognized text, grouped into copyable blocks, so you can take just the one address, paragraph, or command you need instead of the whole page. Lines that wrapped on screen are joined back into paragraphs when you copy, and where the text reads as a table or as code, the footer adds Copy as Table (tab-separated cells for Numbers or Excel) or Copy as Code (indentation rebuilt).
- To lift a few words rather than a whole block, open the capture in the editor and use Select Text: drag across the words on the image, the way Preview does, and press ⌘C. A double-click on a word takes you straight there.
- Translate the blocks on device, with the original always in view. Translation uses the language packs macOS downloads and owns, and needs macOS 15.
- QR codes and barcodes in a capture are listed in the Text View with copyable payloads; a link payload always shows its full URL before anything opens, and History search matches code payloads too.
- An image that isn't a Snapline capture gets the same treatment: open a PNG, JPEG, TIFF, or HEIC with ⌘O, drop it on the menu-bar icon, or paste a copied image with Open from Clipboard (⌃⌘V). It joins History and is read like any capture.
- When you only want the words and not a screenshot at all, Capture Text (⌥⌘E) reads a dragged area straight to the clipboard, the way TextSniper does, and keeps what it read as a text clip in History; see how to copy text from anywhere on your Mac's screen.
Two things worth knowing before you rely on it. First, whether recognized text is kept is a setting, Index text in screenshots, on by default; turning it off stops the indexer and purges every stored recognition record, and recognition then works on demand without storing anything. Capture Text clips are the exception: they are text you asked to keep, so they stay until you delete them. Second, capture contents stay on the Mac. OCR works offline; translation requires its macOS language packs to be downloaded first. Snapline is free to try in full for 14 days (after the trial, capture unlocks with a one-time license: no subscription; text recognition of existing captures and imports, translation, and History stay open even unlicensed; Capture Text needs the license) and requires macOS 14 or later. Screen Recording is needed for screen capture; recognizing an imported image needs no extra capture permission.
Every screenshot OCR option side by side
| Live Text (macOS) | TextSniper | CleanShot X / Shottr OCR mode | Snapline | |
|---|---|---|---|---|
| How you trigger it | Open the image, drag across the text, Control-click, Copy Text | ⇧⌘2, drag a rectangle over anything on screen | The app's OCR hotkey, drag a rectangle | Nothing to trigger for screenshots: every capture is read in the background; copy from the card, the Text View, or by selecting on the image. Capture Text (⌥⌘E) is a drag-a-rectangle mode like the others |
| Works on which images | Images opened in Preview or Photos, or shown in Safari | Any pixels on screen: video, PDFs, presentations, apps | Any pixels on screen | Every capture (region, window, display, scrolling) plus any image opened or pasted into Snapline; Capture Text reads any pixels on screen |
| Languages | Apple's Live Text list; depends on the macOS version | Follows the macOS version: English only on Catalina, over 25 listed for Tahoe | CleanShot X: 30+. Shottr: its own list, Chinese via a preference | Whatever Vision reads on your macOS version (fourteen languages on macOS 14, twenty-five on macOS 26), favoring your Mac's preferred languages and English; no in-app setting |
| QR codes | Not mentioned in Apple's Live Text guides | Yes, QR codes and barcodes | Yes, QR codes in both | Yes, QR codes and barcodes, with copyable and searchable payloads |
| Keeps a searchable history of past captures | Not in Apple's Live Text guides | Additive Clipboard keeps a running record of recognized text; a search of past captures is not mentioned on its site | OCR text goes to the clipboard. CleanShot X keeps a capture history (up to 1 month); text search is not on its features page. Shottr: none on its home page | Yes: History search matches recognized text, code payloads, and Capture Text clips |
| Translate | Yes, from the context menu, where Apple supports the language | Not mentioned on its site | Not in either app's OCR feature description | Yes, on device in the Text View (macOS 15) |
| Batch / many screenshots | One image at a time | One selection at a time | One selection at a time | Every capture, automatically |
| On device | Yes | Yes, per its App Store page: on-device OCR, no internet connection required | CleanShot X: yes, stated. Shottr: not stated on its home page | Yes, Apple's Vision framework; nothing uploaded |
| Price model | Free, part of macOS | One-time purchase (Mac App Store) | CleanShot X: one-time purchase for the app, subscription for its cloud. Shottr: free, optional one-time license | One-time purchase; 14-day full trial |
| macOS requirement | Macs on macOS 14 or later, where Apple offers it in your region and language | Catalina or newer | CleanShot X: 13.0 or newer. Shottr: 10.15 or newer | 14 or later; translation needs 15 |
Which should you use
- A paragraph or an address, now and then: Live Text. It's free, it's already there, and it's good. Don't install anything.
- Text from a video frame, a locked PDF, or a dialog, a few times a day: a select-a-rectangle tool. TextSniper if OCR is all you want, Shottr if you'd rather not pay, CleanShot X's mode if you already own CleanShot X, Snapline's Capture Text if you want wrapped lines joined, Copy as Table or Copy as Code on hand, and the text kept too.
- Screenshots you'll need to find again: receipts, error messages, chat threads, slides from a call, anything you screenshot because you'll want it later. That's an indexing problem, not a copying problem, and Snapline is built for it: search History by a word, copy the block, translate if you must.
- Code: copy from the source whenever you can. When a screenshot or a video is all you have, Snapline's Copy as Code keeps the indentation, but every OCR engine, Live Text included, can still misread a symbol; see the question below.
Every shortcut on this page
| Shortcut | Where | What it does |
|---|---|---|
| ⇧⌘3 | macOS | Screenshot of the whole screen, saved to the desktop |
| ⇧⌘4 | macOS | Drag a region; Space then click for a window |
| Control-click | Preview, Photos, Safari | On selected Live Text: Copy Text (Copy in Safari and on macOS 14), Look Up, Translate, Search with |
| ⌘V | Anywhere | Paste the copied text |
| ⇧⌘2 | TextSniper | Select an area; recognized text goes to the clipboard |
| ⌥⌘S | Snapline | Capture; the card's copy text and view text cells follow (rebindable) |
| ⌥⌘E | Snapline | Capture Text: drag an area and its text goes to the clipboard, with no screenshot saved (rebindable) |
| ⌃⌘S | Snapline | History shelf; its All history… button opens the full History window, whose search field finds captures by their text |
| ⌃⌘V | Snapline | Open from Clipboard: a copied image joins History and is read like a capture (rebindable) |
| ⌘O | Snapline | Open a PNG, JPEG, TIFF, or HEIC file for OCR, search, and translation |
Questions
Does macOS have built-in OCR?
Yes. It's called Live Text, it has been part of macOS since Monterey, and Macs on macOS 14 or later have it, though Apple notes it isn't available in all regions or languages. Open an image in Preview or Photos, or view one in Safari, and the words in it become selectable. If text is not selectable, check Live Text in System Settings → General → Language & Region.
How do I copy text from a screenshot on a Mac?
Open the screenshot in Preview (double-click it), hold the pointer over the words until it turns into a text cursor, drag to select, then Control-click the selection and choose Copy Text (Copy on macOS 14). Paste with ⌘V. In Snapline, the Quick Access card that appears after every capture has a copy text cell that puts the whole shot's recognized text on the clipboard without opening anything, and Capture Text (⌥⌘E) skips the screenshot altogether: drag over the words and they are on the clipboard.
Can I extract text from a screenshot for free?
Yes. Live Text is free and already on the Mac, and for an occasional address, error message, or paragraph it is the right tool. Shottr's OCR mode is also usable for free. What the free routes lack is a screenshot history: Copy Text reads one image when you ask, and Shottr's site describes no OCR history, so a shot from last month has to be found another way.
Is there a TextSniper alternative that keeps a history?
TextSniper, and the OCR modes in CleanShot X and Shottr, read one selection at a time onto the clipboard. Snapline's Capture Text (⌥⌘E) is the same drag-a-rectangle gesture, and it files what it read in History as a text clip you can search, star and reopen, with wrapped lines joined into paragraphs and Copy as Table or Copy as Code where the text has that shape. Every screenshot is OCR'd in the background too, so History search finds captures by the words in them, and QR code payloads are searchable. If you only ever need the text once, any of them will do; if you find yourself hunting for text you saw weeks ago, the history is the feature.
Does screenshot OCR work offline, or is my screenshot uploaded somewhere?
Live Text runs on the Mac. CleanShot X states that its text recognition is performed completely on device. Snapline's OCR runs on device through Apple's Vision framework and its translation uses macOS language packs; nothing is uploaded, the app has no account and no telemetry, and recognition keeps working with no connection, as does translation once its language packs are downloaded. Whether recognized text is stored is a Snapline setting, Index text in screenshots, and turning it off purges the index; Capture Text clips, which are text you asked to keep, stay until you delete them.
Can I translate the text in a screenshot on Mac?
Yes, two ways. In Preview, select the text with Live Text, Control-click, and choose Translate, then pick a language; Apple notes that translation isn't available in all languages or regions. In Snapline, the Text View translates a capture's blocks on the Mac using macOS language packs, with the original always in view; it needs macOS 15.
Why does OCR misread code?
Text recognition is built to read words in a language, and code is full of symbols, underscores, and mixed case, so a pipe can come back as an l, a zero as an O, and indentation can collapse. TextSniper says as much on its own site. Snapline's Copy as Code rebuilds the indentation from where each line starts, but no OCR can promise every symbol. For code, copy from the source when you can; when the screenshot is all you have, proofread the paste.
Can I extract text from an image that isn't a screenshot?
Yes. Live Text can recognize supported text in images opened in Preview or Photos, so a photo of a whiteboard or a scanned page works the same way as a screenshot. Snapline opens PNG, JPEG, TIFF, and HEIC files through File → Open, a drop on its icon, or Open from Clipboard (⌃⌘V), and an imported image joins History like any capture, so it gets the same background OCR, search, Text View, and translation.