Skip to main content
Smart Tools

OCR — Extract text from images or PDFs

Recognise text in images or scanned PDFs across 13 languages. Powered by Tesseract — runs entirely in your browser.

No upload — your files never leave your device

  • 100% private
  • Runs in your browser
  • Works offline
  • No sign-up
Select files

or drop files here

JPG · PNG · WebP · PDF (each page recognised separately)

JPEG, PNG, WEBP, PDF, .JPG, .JPEG, .PNG, .WEBP, .PDFMax 50 MB

About OCR

OCR (Optical Character Recognition) extracts text from images and scanned PDFs across 13 languages. Powered by Tesseract running in WebAssembly — your files never upload, even though the OCR engine is several megabytes. The first run downloads language data; after that it's offline.

  • No uploads
  • Browser-only
  • Works offline
  • 100% free

How it works

  1. 1

    Drop an image or PDF

    JPG, PNG, WebP, or PDF (each page is recognised separately).

  2. 2

    Pick the language

    13 languages including English, Spanish, French, German, Chinese, Japanese, Korean, Arabic, Hindi, Russian.

  3. 3

    Copy or download

    Recognised text appears with confidence and word count. Copy to clipboard or save as .txt.

How OCR turns pixels into characters

Optical Character Recognition reconstructs editable text from an image of text — a scan, a photo, a screenshot. Classic engines work in stages: they binarise the image to separate ink from background, detect lines and segment them into individual glyphs, then classify each shape against a model of what each letter looks like. Modern engines like Tesseract replaced the old template-matching core with an LSTM neural network that reads whole lines in sequence, which is why they handle joined letters, varied fonts and noisy scans far better than the tools of a decade ago.

Crucially, OCR runs entirely on the visual shapes — it has no idea what the document means. It leans on a built-in language model to resolve ambiguity (is that a capital I, a lowercase l, or the digit 1?), which is why telling it the correct language matters so much. A clean, high-contrast page of printed English is close to a solved problem; a creased receipt photographed at an angle in low light is not. To go deeper on the moving parts, read What is OCR and how accurate is it.

What actually drives accuracy

  • Resolution: aim for roughly 300 DPI for printed text. Below ~150 DPI, characters blur into each other and error rates climb sharply. Upscaling a small image after the fact does not add detail OCR can use.
  • Contrast and lighting: crisp black text on a white background is ideal. Shadows, glare, faded ink and coloured or textured backgrounds all confuse the ink-vs-background step.
  • Language and script: selecting the right language loads the right character set and dictionary. An English model will mangle accented French, Cyrillic or CJK text it was never trained on.
  • Layout: multi-column pages, tables, forms and text wrapped around images can scramble reading order even when every individual character is read correctly.
  • Font and rendering: standard serif and sans-serif fonts read best. Decorative, condensed, italic or very small type, and especially handwriting, are markedly harder.

Preprocessing that earns its keep

Most OCR failures are really image-quality failures, and a few seconds of cleanup beats hours of correcting output. Straighten (deskew) a page so lines are horizontal, crop away everything that is not the text, and increase contrast so the ink is genuinely dark against a genuinely light background. Converting to greyscale or pure black-and-white removes colour noise the engine would otherwise have to fight through.

When you photograph rather than scan, the capture itself is the biggest lever: fill the frame with the page, hold the camera parallel to it to avoid perspective distortion, and use flat, even lighting with no glare or shadow from your own hand. A sharp, well-lit phone photo at the right distance routinely beats a hurried scan. Where text is faint, raising contrast helps far more than raising resolution.

Where OCR stops — set expectations honestly

OCR is recognition, not comprehension, and it has hard limits worth knowing before you trust the output. Cursive handwriting remains unreliable; even neat hand-printing is hit-or-miss compared with typeset text. Engines guess at characters they cannot read, so a confident-looking transcription can still contain silent errors — anything used for legal, financial or medical purposes needs a human to proofread against the original, not a glance.

It also does not preserve everything: complex tables, multi-column layouts, equations, stamps and signatures often survive as scrambled or missing text even when the prose around them is perfect. The output is plain characters, so original fonts, exact positioning and rich formatting are not recovered. Treat OCR as a fast first draft of the text — a starting point you correct, not a finished, citable document.

Frequently asked questions about OCR

  • How accurate is the OCR?

    For clean printed text, 90%+ word accuracy. For low-resolution photos or handwriting, accuracy drops sharply. Always proofread before publishing.

  • Why is the first run slower?

    Tesseract downloads ~5 MB of language training data on first use. The browser caches it; subsequent runs are instant.

Privacy, offline use, browser support, and pricing questions are answered on the site-wide FAQ.

See all Text tools