Convert a PDF into clean Markdown with headings, lists and tables, ready for docs or AI tools.
Free tier supports files up to 50MB.
Processed in your browser — files never leave your device. How it works
Markdown is the plain-text format behind README files, wikis, static sites, note apps like Obsidian and Notion, and the prompts you give AI assistants. PDFs are the opposite: a fixed layout with no idea what a heading, list or table is. PDFDoco reads the fonts, positions and links in your PDF and rebuilds that structure — headings, bold and italic text, nested lists, links and tables — in the right reading order, with page headers and footers removed. Everything runs in your browser, so the document never leaves your device.
Reports, papers, manuals, slides or e-books — anything with real text.
Switch between the raw Markdown and the rendered view to check headings, lists and tables.
Pick pages, keep or drop running headers, and decide whether to extract the images.
Copy the Markdown, or download a .md file — or a ZIP with an images/ folder.
Headings from font sizes, bold and italic from the fonts, lists, links and tables.
Multi-column pages are read column by column; headers and page numbers are dropped.
Converted in your browser — the PDF is never uploaded to a server.
The most common font size is treated as body text; larger sizes become headings, ranked largest first as H1, H2 and H3. Bold and italic come from the actual font names and flags in the PDF (for example Arial-BoldMT or Times-Italic), and monospaced fonts such as Courier become inline code or fenced code blocks — handy for technical manuals and programming books.
Bullets (including bullets drawn as small shapes or Wingdings symbols) and numbered items become Markdown lists, nested according to their indentation. Two- and three-column pages are read one column at a time, paragraphs split across a page break are joined back together, and words hyphenated at the end of a line are rejoined.
Rows of aligned cells are rebuilt into GitHub-flavoured pipe tables using the same column detection as our PDF to CSV converter. Clickable links in the PDF become proper Markdown links, even when the link text wraps onto the next line. Very complex tables with merged cells may need a quick touch-up.
Turn on Include images and the pictures in your PDF are extracted at their original quality — JPEG photos byte for byte — saved to an images/ folder and linked from the Markdown at the place they appear. You download a ZIP that works as-is in VS Code, Obsidian, GitHub or any static site generator. Need just the pictures? Use Extract Images.
Feeding a raw PDF to an AI often wastes tokens on page numbers, repeated headers and broken lines, and multi-column text arrives scrambled. Clean Markdown keeps the document's structure, which helps models answer questions accurately, and splits neatly into sections for retrieval-augmented generation (RAG) pipelines and knowledge bases.
If pages are scans, PDFDoco offers OCR to read them on your device. Recognised text gets the same paragraph, list and column handling. Font information can't be read from a photo of a page, so headings in scanned documents may come out as plain paragraphs.
Pro tip: only need plain text without any formatting? Use PDF to Text. Want sections for an AI knowledge base? Keep Mark page breaks on so every chunk can cite its page number.
Upload the PDF above and PDFDoco converts it immediately. Check the result in the rendered or raw preview, then copy it or download a .md file. If you include images, you get a ZIP with the Markdown file and an images/ folder it links to.
PDFs don't mark headings, so PDFDoco compares font sizes: the most common size is body text, and text set clearly larger becomes a heading — the largest size H1, the next H2, then H3. Short lines set entirely in bold at body size become minor headings.
Yes. Rows of aligned cells become GitHub-style pipe tables, bullet and numbered lists keep their nesting, and clickable links in the PDF become Markdown links. Bold, italic and monospaced text are kept as **bold**, *italic* and `code`.
It's ideal. Language models understand Markdown structure well, and converting first removes page headers, footers and page numbers, fixes multi-column reading order and joins words hyphenated across lines, so the AI sees clean, ordered text with far fewer tokens than a raw PDF dump.
Yes. Pages without a text layer are detected, and you can run OCR on them in your browser. Recognised text gets paragraphs, lists and reading order, though fonts can't be read from a scan, so headings and bold text are limited.
With Include images on, pictures are extracted at their original quality into an images/ folder and referenced in the Markdown where they appear on the page, delivered together as a ZIP. Tiny icons and logos repeated on every page are left out. With it off, you get a single .md file of text only.
No. The conversion — including OCR and image extraction — runs entirely in your browser, and nothing is sent to or stored on our servers.