Drop your PDF here
or click to browse · PDF files · no size limit
Converts on your device — your PDF is never uploadedConvert PDF to Markdown (.md) — Free, In Your Browser
Turn a PDF into Markdown: headings become # and ##, bold lines become **bold**, and paragraphs are rebuilt as flowing text. It runs entirely in your browser, so the document is never uploaded. Free, no sign-up, no limits.
# markers come out for free.How PDF Content Maps to Markdown
| In the PDF | In the Markdown | Renders as |
|---|---|---|
| Large text (well above body size) | # Heading | Level-1 heading |
| Mid-sized text | ## Heading | Level-2 heading |
| Body text | Plain paragraph | Paragraph |
| A line set entirely in bold | **text** | Bold |
| Page boundary | --- (optional) | Horizontal rule |
| Tables, images, code | Plain text lines | Paragraphs — see below |
The output is deliberately plain CommonMark: no extensions, no HTML, no invented metadata. That means it renders the same everywhere rather than looking right in one editor and broken in another.
How to Convert
- Drop the PDF in — it is read locally and the heading structure is detected as it goes.
- Check the preview — detected headings are shown, so you can see the hierarchy before converting.
- Pick a page range (optional) — useful for converting one chapter of a manual into one
.mdnote. - Convert to Markdown and download the
.md, or copy the text straight out.
Workflows This Fits
- Obsidian and Notion — drop a converted PDF chapter straight into your vault or workspace as a real note with a working outline.
- Static site generators — Hugo, Jekyll, Eleventy and Astro all take Markdown content files; add your front matter and publish.
- Documentation sites — MkDocs, Docusaurus and GitBook consume Markdown directly, so an old PDF spec becomes a browsable page.
- GitHub and GitLab — READMEs, wikis and repository docs, with the bonus that Markdown diffs cleanly in version control while a PDF does not.
- Pandoc pipelines — convert onward to HTML, EPUB, LaTeX or a Word file built from your own template.
- AI context — heading hierarchy helps a language model follow the structure of a long document.
A Short Markdown Refresher
Markdown is plain text with a handful of punctuation conventions that stand in for formatting. # Title is a top-level heading, ## Section a subheading, **word** is bold, *word* italic, a line of --- a horizontal rule, and a blank line separates paragraphs. It was designed to stay readable even before it is rendered, which is exactly why it has become the working format of notes apps, wikis, documentation and static sites.
Post-Conversion Checklist
Five minutes of tidying usually gets you to a finished note:
- Hyphens left inside words that were broken across a printed line — a find-and-replace clears them.
- Lists — bullet glyphs arrive as literal characters; swap them for
-or1.to get real Markdown lists. - Headers, footers and page numbers that appeared inline, since a PDF does not label them.
- Heading levels — nudge a
##to###where your own hierarchy differs from the PDF’s typography. - Front matter — paste your YAML block at the top if you are publishing to a static site.
Honest Limits
No tables, no images, no code fences, and no scanned PDFs (a scan has no text layer to read; that needs OCR, which this tool does not do). Complex multi-column layouts can interleave because PDFs store position rather than reading order. Single-column documents — reports, specs, manuals, papers, ebooks — convert cleanly, and those are the ones people usually want in Markdown.
Frequently Asked Questions
Which flavour of Markdown does it produce?
Plain CommonMark, using only the universally supported basics: # and ## for headings, ** for bold, blank lines between paragraphs, and --- as an optional page separator. Because it avoids extensions, the output renders identically in Obsidian, Notion, GitHub, GitLab, MkDocs, Hugo, Jekyll, Pandoc and any other Markdown processor.
How are PDF elements mapped to Markdown?
Large text becomes a level-1 heading, mid-sized text becomes level-2, body text becomes ordinary paragraphs, and lines set entirely in a bold face become **bold**. Heading levels are inferred from font size relative to the document's dominant body size, which is the only signal a PDF reliably provides.
Will tables become Markdown tables?
No, and this is a deliberate choice. Table content comes through as text lines. Detecting rows and columns from PDF text coordinates is unreliable, and a malformed Markdown table renders as broken pipe characters - visibly worse than clean lines you can reformat yourself.
Are images extracted into the Markdown?
No. There are no image links in the output, because the images are not extracted. If your document depends on figures you will need to export them separately and add the  references yourself.
Can it add YAML front matter for my static site?
Not automatically - the tool emits pure content with nothing invented. Paste your own front matter block at the top afterwards; since you know the title, date, tags and layout, that is a few seconds of typing and avoids the tool guessing wrongly.
What should I clean up after converting?
Four things usually: hyphens left over from line-broken words, any headers or page numbers that appeared inline, heading levels you would prefer nested differently, and lists - bullet characters from the PDF come through as literal text rather than as Markdown - or 1. list syntax.
Why is Markdown better than plain text for an LLM?
The # markers preserve the document's hierarchy, so a model can see which passages sit under which heading. That structure often improves summarisation and question answering compared with an undifferentiated wall of text, while still being plain text with no binary format overhead.
Can I convert the Markdown onward to another format?
Yes, and that is a common workflow. Pandoc will take the .md and produce HTML, EPUB, LaTeX, reStructuredText or a fresh Word file with your own template - which is often a cleaner route to a styled document than converting the PDF directly.
Does it handle code blocks?
Monospaced text comes through as ordinary paragraphs, not fenced code blocks, because a PDF does not mark code as code. Wrapping the relevant sections in triple backticks afterwards takes moments.