Convert PDF to Markdown offline — for AI ingestion
Transform your PDF documents into clean, LLM-ready Markdown instantly.
Specifically optimized for AI ingestion workflows in ChatGPT, Claude,
and Gemini, this tool extracts headings, lists, and tables into plain
text without sending your files to a server. Because all processing
runs locally in your browser, proprietary documents and sensitive data
stay on your device from upload to output.
How to use it
- Drop one or more PDFs onto the dropzone (or click Choose files).
- (Optional) Toggle Extract images or Insert
--- between pages.
- Press Copy markdown, Download .md, or send straight to Claude or ChatGPT.
When to use it
- Feeding a PDF report into ChatGPT or Claude to summarize or query.
- Importing a research paper into Obsidian, Logseq, or another Markdown notes app.
- Building a RAG corpus from a folder of PDFs without paying a SaaS per page.
- Converting an invoice or contract into searchable text without sending it to a third-party server.
- Stripping a PDF down to plain Markdown for git-tracked documentation.
Why use this one
- Offline / private. PDFs are parsed in your browser — nothing is uploaded.
- Clean Markdown. Headings, lists, and code blocks survive the conversion.
- One-click AI handoff to Claude or ChatGPT with a ready-made summarize prompt.
FAQ
Will it work with scanned PDFs?
Not reliably. The converter reads the text layer that pdfjs extracts from the document. If your PDF is a photograph of a page with no embedded text (a typical scanned PDF), there is nothing for the tool to read — you will need to OCR the file first.
Does my PDF get uploaded anywhere?
No. The file is parsed by pdfjs-dist inside your browser and never leaves the tab. There is no upload endpoint, no temporary cloud storage, and the resulting Markdown stays local until you copy or download it.
How does it pick which lines are headings?
By font size. The largest distinct size in the document becomes a #, the next-largest ##, and the next ###. It is a heuristic — most reports and academic papers work well; magazines and heavily-designed PDFs may not.
Does it handle tables?
Yes, best-effort. Any block of consecutive lines with aligned columns becomes a GitHub-Flavored Markdown pipe table with a separator row. Complex layouts with merged cells or nested tables may still need a manual cleanup pass.
Can I include the images from the PDF in the Markdown?
Yes, opt-in. Toggle Include images and each embedded image is rasterized to a base64 PNG and inlined into the Markdown. We keep this off by default because it can balloon the file size of the output.
How do I secure my text data before sharing it with AI models?
Always redact sensitive personal identifiers, passwords, and API keys before pasting Markdown into public AI chats. Use our JSON Formatter to clean structured payloads, or our Base64 Encoder / Decoder for basic masking. For long-term credential hygiene, read our review of the best password managers.
Why are there Send to Claude and Send to ChatGPT buttons?
Because most users converting PDFs to Markdown are doing it to paste the result into an LLM. The buttons copy the Markdown to your clipboard with a Summarize this document: prompt prepended, then open the chat in a new tab. We make no API call; your conversation is entirely with the chat provider.