to navigate Enter to open Esc to close

PDF to Text Converter: Free OCR, No Upload, No Limit

A PDF to text converter that extracts the words from a PDF — or, for a scan or photo saved as PDF, recognises them with OCR — entirely in your browser. Use it to copy text out of a PDF that won't let you select it, pull the wording from a scanned document, or turn a stack of pages into plain text you can search, edit, or paste anywhere else.

OCR here is slower than a server would be, on purpose. Running Tesseract in your browser rather than on a data centre's hardware is the whole reason your scan never leaves your device — but it means a 20-page scanned document can genuinely take a few minutes. It is opt-in per document for exactly that reason.

Nothing is uploaded and there is no limit — no daily cap, no page limit, no account. The file is read by this tab; if OCR runs, the recognition happens in this tab too.

PDF to Text

Local
Choose a PDF, or drop it here Nothing leaves this tab
Read by PDF.js, and by Tesseract.js only if you turn OCR on — both fetched the moment they are needed, not on page load.

How extraction and OCR actually differ

Most PDFs already contain a text layer — the actual characters, positioned on the page, invisible underneath what you see but there to be selected and searched. Extracting it is just reading data that already exists. A scanned page has no such layer: it is a photograph of text, and nothing in the file says what the words are. OCR (optical character recognition) looks at the image and works out the words, which is a fundamentally harder, slower job — and the reason it is opt-in here rather than automatic.

Diagram: each page is checked for an existing text layer; if found, the text is read directly; if not, OCR renders the page as an image and recognises the text from it WHAT HAPPENS TO EACH PAGE Each page of your PDF Has a text layer? yes Read directly instant, via pdf.js no Flagged empty reported to you OCR, if you turn it on Both paths run in your browser. The page image is never sent anywhere, whether OCR runs or not.
Every page takes the fast path unless it genuinely has no text layer — OCR only ever runs on pages that need it.

What decides whether OCR is needed

Page typeText layer?
Written directly in Word, Google Docs, LaTeX, etc.Yes — extraction is instant and exact
Exported or printed to PDF from an appYes, almost always — the text layer survives export
Scanned with a phone or flatbed scannerNo — it is a photograph. OCR required
A screenshot saved as PDFNo, for the same reason
OCR'd already by another toolUsually yes — the recognised text is embedded as an invisible layer over the image

What affects OCR accuracy

FactorEffect
Scan resolutionText scanned below roughly 200 DPI recognises noticeably worse than 300 DPI or higher — there simply is not enough pixel detail per character
Skew and rotationA page photographed at an angle drops accuracy sharply. Straightening it before running OCR helps more than any other single fix
Font and print qualityClean printed text in a common font recognises best; handwriting, decorative fonts and faded or low-contrast print all recognise worse
Mixed languages on one pageThis tool currently recognises English only, so any other language on the page will come back as noise or near-empty text

Compared with the alternatives

ToolFiles goOCR for scansReports per-page status
This pageNowhereYes — runs in your browser, 58 languagesYes, before OCR is even offered
XodoTheir serversYes, server-sideNo — one combined result
SmallpdfTheir serversYes, server-sideNo — one combined result
SejdaTheir serversYes, server-sideNo — one combined result

Every OCR-capable competitor checked processes on their servers — understandably, since OCR is heavy computation and running it for every visitor is expensive to offer for free. That is also exactly why doing it in the browser instead is worth something: the tool costs more of your own device's time, and in exchange your scanned document, which is very often the more sensitive kind of file, never has to leave it.

Common mistakes

Turning OCR on for a large scanned document and expecting it to finish quickly. Client-side OCR trades speed for privacy — a single page can take several seconds to a minute depending on your device, and a 40-page scan run in one go can genuinely take several minutes. Running it per page, or on a shorter document first, gives a much better sense of the pace before committing to a long one.
Expecting OCR to preserve the original layout. Recognised text comes back as a stream of words, not columns, tables or the original spacing. For a document where the layout itself matters — a form, an invoice, a table of figures — treat OCR output as a starting point to clean up, not a finished conversion.
Not checking the paragraph breaks against the original. They are reconstructed from the vertical spacing between lines, which works well for ordinary single-column text and can misjudge multi-column layouts, tables, or pages with unusual spacing. Skim the result against the source before treating the paragraph structure as authoritative.
A password-protected PDF will fail to open here. Remove the password in a PDF reader first, then extract text from the unprotected copy.

Frequently asked questions

Is my file uploaded anywhere?

No, including when OCR runs. The PDF is read in your browser, and if OCR is used, the page image is recognised by a WebAssembly build of Tesseract running in the same tab — nothing is sent to a server at any point. You can confirm this in your browser's network panel.

Why does it say a page has no text, when I can see text on it?

Because what you can see and what the file contains are different things. A scanned page, a screenshot, or a photograph saved as PDF shows text visually but stores it as an image, with no underlying character data to read. That is exactly the case OCR exists for — turn it on, or run it for that page specifically.

How accurate is the OCR?

Close to the desktop Tesseract engine it is built from, which does well on clean, printed, single-language text at a reasonable scan resolution. It struggles more with handwriting, low-resolution or skewed scans, unusual fonts, and mixed languages on the same page. Always check OCR output against the source before relying on it.

Why is OCR so much slower than the rest of the tool?

Reading an existing text layer is just retrieving data that is already there — effectively instant. OCR has to analyse an image pixel by pixel to work out what the characters are, which is genuinely heavy computation. Running it on your own device rather than a server is what keeps a scanned document private, at the cost of your device's time instead of a data centre's.

Can I edit the extracted text before downloading it?

Yes — each page's text appears in its own editable box. Fix anything before using Download or Copy, and the corrected version is what goes out.

Does it keep the original formatting, tables and columns?

Paragraph breaks are reconstructed from the spacing between lines, which works well for ordinary text and less reliably for multi-column layouts or tables, where columns can be interleaved in reading order. For a table specifically, checking the result against the source is worth the extra minute.

Does text extraction work for Arabic, Hebrew and other right-to-left languages?

Yes — each line is checked for Arabic or Hebrew script and read in the correct right-to-left order rather than assuming left-to-right for everything. What this does not fully handle is a single line that mixes scripts, such as Arabic text with an embedded English word or a number in the middle — that is a genuinely harder problem (the Unicode bidirectional algorithm), and a line like that may extract in a slightly different order than it reads visually. Plain Arabic or Hebrew paragraphs extract correctly.

What languages does the OCR support?

58, grouped by region in the dropdown next to the OCR toggle — European, Middle Eastern and Central Asian, South Asian, and East and Southeast Asian languages are all covered, alongside the most-requested set at the top (English, Spanish, French, German, Portuguese, Russian, Arabic, Hindi, Chinese and Japanese). The underlying Tesseract engine supports over 100 in total; this list covers the ones almost anyone will need without turning the dropdown into an unusable wall of options. Pick the one that matches your scan before turning OCR on — Tesseract loads a language-specific model rather than detecting the script automatically, so the wrong selection will recognise poorly.

Can I copy text from a PDF that has copying disabled?

In most cases, yes. "Copying disabled" is usually a PDF permission flag that PDF readers respect voluntarily — it blocks the copy command in the viewer, not the underlying text data, which pdf.js reads directly regardless of that flag. It won't help with a PDF that is genuinely encrypted with a password, which this tool cannot open at all until the password is removed.

Should I use this or a PDF to Word converter?

Depends what you need next. If you just need the words — to search, paste elsewhere, or feed into another tool — plain text is faster and simpler than a Word document you would have to open and re-save anyway. If you need to preserve formatting, fonts and layout for further editing, a dedicated PDF to Word converter is the better fit; this tool intentionally does not attempt that.

Is there a page limit?

No hard limit for text extraction, which is fast regardless of length. OCR is the practical constraint on a long document, purely because of how long it takes on your own device — there is no artificial cap, just the time cost.

Related tools

See the full list of Document Tools, or try:

  • PDF to Markdown — if you want structured Markdown rather than plain text
  • PDF to Images — export pages as images instead of extracting their text
  • Compress PDF — shrink a large scanned PDF before working with it
  • Merge PDF — combine files before extracting text from the result
  • Word Counter — length and reading time for the text you extract