Step zero: figure out what kind of PDF you're dealing with
Before you reach for any tool, spend ten seconds checking which kind of PDF is on your screen. The right method depends entirely on this question, and most of the frustration around "OCR on Mac" comes from people applying the wrong fix to the wrong file.
There are two kinds of PDFs in the wild:
- Native PDFs with a text layer. These are exported from Word, Pages, LaTeX, web browsers, or any tool where the original source was already text. Each character is stored as a glyph plus its position. The pages look the same on screen, but the underlying data is real text.
- Scanned, image-only PDFs. These come from a flatbed scanner, a phone scan app, a fax, or a "Print to PDF" of an image. Each page is just a picture. There is no text data anywhere in the file — only pixels that look like text to a human reader.
The fastest test is also the most reliable. Open the PDF in Preview and press Cmd+F. Search for a word you can see clearly on the page — a heading, a name, anything. If Preview highlights it, you have a native PDF and you don't need OCR at all; the text is already there, ready to be selected and copied. If Preview returns "Not Found" while the word is plainly visible, you have a scanned PDF, and you need to run OCR to make its contents searchable.
A third case shows up often enough to mention: hybrid PDFs, where most pages are native text but a few inserted pages — a signed contract page, a scanned appendix, a fax cover sheet — are images. Cmd+F finds some words and not others. The methods below all handle this case; ocrmypdf in particular has a flag (--skip-text) that leaves existing text layers alone and only OCRs the pages that need it.
Method 1: Apple Preview and Notes (when the text layer already exists)
If your Cmd+F test succeeded, you do not need any third-party tool. macOS has handled native PDFs gracefully for years. Preview lets you select text with the cursor, copy it to the clipboard, and copy across page boundaries. Spotlight indexes the text inside PDFs by default, so you can find a clause from a contract by searching from the menu bar. Notes will paste the text in cleanly. Pages will preserve most of the formatting if you drag the PDF in.
For native PDFs, the only situation where you'd want a different tool is when the text layer is technically present but mangled — older PDFs sometimes encode text with broken character maps so that copy-paste produces gibberish. In that case, treat the file as if it were scanned and use one of the methods below.
What about Live Text on PDFs?
Starting with macOS 13 Ventura, Apple's Live Text feature works on PDF pages too. Open a scanned PDF in Preview, hover over a block of text on the rendered page, and the cursor turns into an I-beam — you can drag-select and copy. This is a real, useful capability, and for a quick "grab one sentence out of a scan" moment it works well.
But there are two limits worth being honest about. First, Live Text operates page-by-page on what's currently visible; it won't help you search the document or process all 200 pages of a scanned report at once. Second, Live Text does not write the recognized text back into the PDF file. Close the document, send it to a colleague, or open it on another Mac, and Cmd+F still doesn't work. Live Text is a viewer-side feature, not a file-modification feature.
Method 2: Cheese! OCR for snippet extraction
This is our own tool, so the honest framing first: Cheese! OCR is not a full-document PDF processor. It will not write a text layer back into your file, it will not batch-process 500 pages overnight, and if those are your needs you should skip down to Method 3.
Where Cheese! OCR is the fastest path on Mac is the case that actually comes up most often in real work: you have a scanned PDF open on screen and you need a paragraph, a quote, a table, or a code snippet out of it. Maybe you're writing a literature review and want to cite a specific passage from a 1970s journal article that someone scanned to PDF. Maybe a vendor sent a contract as a scan and you need to paste the indemnification clause into a Slack thread. Maybe you're reading a foreign-language paper and want to drop a paragraph into a translator.
The workflow is:
- Press the global hotkey (⇧+⌘+E by default).
- Drag a selection rectangle around the text on the page — exactly like taking a screenshot.
- The recognized text lands on your clipboard. Paste it wherever.
Three things make this faster than alternatives for snippet work. The hotkey is global, so you don't switch apps. The recognition runs on Apple's Vision framework on-device, so there's no network round-trip and no upload of confidential pages. And the result goes straight to the clipboard — no intermediate "save as text file" step, no separate window to manage.
The privacy point is more concrete than it sounds. Cheese! OCR ships with zero network entitlements in its App Store sandbox, which means the operating system itself prevents the app from making network connections at all. For pages of a contract, a medical record, or an internal report, that's a meaningful difference from any tool that can theoretically phone home.
Use it when the unit of work is a snippet. Skip it when you need the whole file to become searchable.
Method 3: Full-document OCR with ocrmypdf (free, open source)
When you need the whole PDF to become searchable — every page selectable, every word findable by Cmd+F or Spotlight — the best free option on Mac is ocrmypdf. It's an open-source project that wraps Tesseract, handles deskewing and cleanup, and writes a clean, searchable text layer back into a copy of your PDF.
If you have Homebrew installed, the install is one line:
brew install ocrmypdf
The basic invocation is two arguments — the input file and the output file:
ocrmypdf input.pdf output.pdf
That's it for English-only PDFs. The output file is byte-identical to the input visually, but with a hidden text layer behind every page. You can now Cmd+F it in Preview, paste from it, send it to colleagues who'll be able to search it too. The original file isn't touched.
Multi-language and non-English PDFs
For non-English documents, pass language codes with -l (or --language). Tesseract uses three-letter codes:
ocrmypdf -l eng+chi_sim+jpn+kor input.pdf output.pdf
The plus signs let you stack multiple languages, which is useful for academic papers with mixed English and CJK content, or for any document that quotes across scripts. You'll need the corresponding Tesseract language data files installed; on Homebrew, brew install tesseract-lang covers the common set.
Useful flags for real-world PDFs
--skip-text— leave pages that already have a text layer alone, OCR only the scanned ones. The right choice for hybrid PDFs.--rotate-pages— auto-detect and fix sideways or upside-down scans before OCR.--deskew— straighten slightly rotated scans so OCR has a fairer shot at clean recognition.--clean— denoise the page image before OCR. Good for older or low-quality scans.--output-type pdfa— produce a PDF/A archival-format file, sometimes required for legal or institutional use.
The trade-off with ocrmypdf is that it's a command-line tool. If you're comfortable in Terminal it's the cleanest, fastest, most private option for full-document OCR on Mac. If brew install looks like a foreign language, Method 4 is for you.
Method 4: PDFPen Pro and other commercial GUI tools
For people who want a graphical app rather than a command-line tool, PDFPen Pro from Smile Software is the established Mac choice. It opens scanned PDFs, runs OCR on them, lets you edit the recognized text, and saves a searchable file back out — all from a regular Mac app interface. Pricing has historically been around the $100 range as a one-time license; check the current page before buying because it shifts and there are sometimes upgrade tiers.
Other names you'll see: Nitro PDF Pro, Readdle's PDF Expert (OCR is a paid add-on), and ABBYY FineReader for Mac (more powerful, more expensive, often the choice for archival or research workflows). All of them do roughly the same thing — open PDF, click OCR, save with text layer — and they all charge for it because that's the customer base willing to pay for not opening a Terminal.
If you OCR PDFs once a quarter, ocrmypdf is overkill of the wrong kind (CLI learning curve) and PDFPen is overkill of the right kind (you'll use the rest of the editor too). If you OCR PDFs once a week as part of a workflow, the GUI tools earn their license fee in saved fiddling.
About Adobe Acrobat
Acrobat Pro is the historical default and still works fine. The reasons we don't lead with it: it's subscription-based (in the $20+/month range, depending on plan), the OCR features sometimes route through Adobe's cloud services (depending on which path you click), and for the specific job of "make a scanned PDF searchable" it's overkill against ocrmypdf, which is free, runs locally, and produces equivalent or better results.
If you already pay for Acrobat for other reasons — form-filling, complex editing, enterprise compliance — its OCR is good and you don't need anything else. If you're considering subscribing to Acrobat just to OCR PDFs, don't. ocrmypdf or PDFPen Pro will get you there for less.
Decision matrix
Pulling it together:
| Method | Best for | Cost | Privacy | Speed |
|---|---|---|---|---|
| Apple Preview / Notes | Native PDFs that already have a text layer | Free (built in) | Fully local | Instant |
| Cheese! OCR | Pulling a paragraph or table out of a scanned PDF | $5.99 one-time | On-device, no network entitlements | Seconds per snippet |
| ocrmypdf | Full-document searchable PDFs, batch jobs | Free, open source | Fully local | Slower (whole file) |
| PDFPen Pro / similar | Full-document OCR without using Terminal | ~$100+ one-time (varies) | Fully local | Comparable to ocrmypdf |
| Adobe Acrobat Pro | You already pay for it for other reasons | ~$20+/month | Mixed (some features cloud-based) | Comparable |
How to choose, in one paragraph
Run the Cmd+F test first. If it works, you're done — use Preview. If it doesn't, ask whether you need a snippet or the whole file. Snippet: Cheese! OCR. Whole file, comfortable in Terminal: ocrmypdf. Whole file, prefer a GUI: PDFPen Pro. Already paying for Acrobat: use Acrobat. Considering paying for Acrobat just for OCR: don't.
Most people end up using two of these, not one. ocrmypdf as a once-a-month batch processor for archival scans, plus a screenshot OCR tool for the daily "grab a quote out of this PDF" task. Or PDFPen for big jobs and Live Text for one-offs. The categories are complementary, not competing.
If you have specific questions about any of these methods, the FAQ below covers the ones we hear most often.