Scanned PDF to Markdown
OCR scanned PDFs into Markdown locally — no page limits, nothing uploaded.
Many 'scanned' PDFs already carry an invisible text layer — MarkPrep checks for it first and uses it directly, skipping OCR entirely. When a page really is an image, local Tesseract OCR reads it in your browser after deskew-friendly preprocessing. There's no page cap and no upload, unlike hosted tools that ration OCR to a handful of pages a month.
How to convert scanned pdf to markdown
- 1Drop your scanned PDF onto the box above, or click to browse. Nothing uploads — the file is read in your browser.
- 2MarkPrep converts it to Markdown locally and shows a live token count for your chosen model.
- 3Check the Preview, adjust the chunk size, and review the Verify tab for anything worth a second look.
- 4Copy the Markdown, download the .md/.zip, or export JSONL chunks for your RAG pipeline.
Format notes & gotchas
- Turn on 'OCR scanned pages' in Options for image-only PDFs.
- Accuracy on poor scans is below a GPU tool like Marker — see the benchmark.
- Large scanned PDFs are CPU-heavy; desktop is faster than a phone.
Related converters
Frequently asked questions
How is this different from hosted OCR?+
It runs in your browser with no page limit and no upload. Hosted converters typically cap free OCR (e.g. 10 pages/month) because it costs them server time. Ours costs nothing, so there's nothing to ration.
Is my file uploaded anywhere?+
No. Conversion runs entirely in your browser tab using WebAssembly. There is no upload endpoint — open your browser's Network tab and watch: nothing leaves the page. The only labelled exceptions are fetching a public URL and optional bring-your-own-key OCR.
How much does it cost?+
Conversion and the entire AI-Ready Pack — token counts, chunking, JSONL export — are free and unlimited, because they run on your hardware. Pro ($4/mo) adds workflow features like the local MCP server, watch folders and saved profiles.
Are the token counts accurate?+
Exact for OpenAI models (GPT-4o, o-series) via their published tokenizer. For Claude and Gemini we show a labelled approximation, because those tokenizers aren't public.
Want it inside your workflow?
Conversion is free forever. Pro ($4/mo) adds the local MCP server so Claude Code converts files on your machine, plus watch folders, saved profiles and encrypted sync.
See pricing