PDF to Markdown

Turn a PDF into clean Markdown — headings, bold, lists, links and simple tables.

100% private — runs entirely in your browser. Your data is processed on your device and never sent to the internet.

Click to upload or drop a PDF here

One PDF — read in your browser, never uploaded

About PDF to Markdown

Markdown is plain text with a few simple marks: # for a heading, <strong> for bold, - for a list item. It is the format of ChatGPT and other AI chats, of notes apps like Obsidian, Notion and Logseq, and of README files.

A PDF has none of that. Copy text out of a PDF and you get flat lines: no headings, no lists, broken sentences, and the page header in the middle of a paragraph.

This free tool reads the text inside your PDF and writes it back as clean Markdown. Headings become # lines, bold stays bold, lists become lists, links keep their address, and broken lines are joined into paragraphs again. The PDF is read in your browser and never uploaded.

Features

  • Headings from font size — the most common size is the body text; bigger sizes become #, ##, ###…
  • Bold, italic and code — found from the font names in the PDF
  • Bullet and numbered lists — with nested lists for deeper indents
  • Whole paragraphs — lines are joined again, and words split with a hyphen are fixed
  • Links kept — clickable links in the PDF become Markdown links
  • Headers, footers and page numbers removed — lines that repeat on the pages are dropped (you can turn this off)
  • Simple tables — rows with clear columns become Markdown tables
  • Preview, copy and download — see the result, copy it, or save a .md file in one click

Made for ChatGPT, notes and Obsidian

  • ChatGPT, Claude and other AI chats — paste Markdown instead of a PDF. The AI sees which lines are headings and lists, and you can cut out the parts you do not need first.
  • Obsidian, Logseq and Notion — save the .md file into your vault, or paste it into a page. Headings and lists work at once.
  • GitHub and docs sites — turn an old PDF manual into a README or a docs page.
  • Editing — Markdown is easy to change in any text editor, and you can turn it back into a PDF with Markdown to PDF.

How the headings are found

A PDF does not say "this is a heading". It only stores the size and the font of each piece of text. So the tool counts the characters of every size: the size with the most text is the body text. Every bigger size is ranked — the biggest becomes #, the next ##, and so on. A short bold line on its own, at the body size, becomes a heading one level below those.

This works well on reports, papers, manuals and e-books made from a word processor. A PDF with strange sizes (for example a poster) can give odd headings — fix them in the box before you download.

What it cannot do

  • Scanned PDFs — a scan holds pictures of text, not text. The tool tells you so, and points you to OCR PDF.
  • Pictures — images in the PDF are not included; only the text is.
  • Complex tables — a table becomes a Markdown table only when its columns line up clearly on 3 rows or more. Tables with merged cells, empty cells or text that wraps inside a cell come out as normal lines of text. You can turn table finding off.
  • Two-column pages — the text is read in the order the PDF stores it, which is usually right, but some two-column papers can mix the columns.

For plain text with no Markdown marks, use PDF to Text.

Frequently asked questions

How do I convert a PDF to Markdown?

Upload the PDF. The Markdown appears in the box after a moment. Click Download .md to save it, or Copy to paste it somewhere else.

Can I use the result in ChatGPT?

Yes. Click Copy and paste the Markdown into the chat. The headings and lists help the AI understand how the document is built.

Does it work with Obsidian?

Yes. Download the .md file and put it into your Obsidian vault folder, or paste the text into a note.

Are tables converted?

Simple tables are: when the columns line up clearly on 3 rows or more, they become a Markdown table. Other tables come out as lines of text, so nothing is lost.

Can I convert only some pages?

Yes. Type the pages into the Pages box, for example 1-3, 5, 8-10. Leave it empty for the whole PDF.

Why is my Markdown empty?

Your PDF is probably a scan, with pictures of text instead of text. Use OCR PDF to read the text from the pictures.

Is my PDF uploaded?

No. The PDF is opened and read by your browser, on your device. Nothing is sent to a server.

How to use it

  • Click Click to upload, or drop your PDF onto the box
  • Wait a moment while the pages are read
  • Type a page range if you want only some pages
  • Keep Remove headers, footers and page numbers on, or turn it off; tick Mark page breaks if you want them
  • Check the result in the Markdown box or the Preview tab, and fix anything you like
  • Click Download .md, or Copy to paste it into ChatGPT, Obsidian or your notes

We add new tools regularly — subscribe on YouTube to be notified when each one goes live.