5.0 out of 5 from 23 ratings

PDF and Word to Markdown converters

Each converter below runs the same in-browser engine, with guidance written for a different source or destination. Pick the one that matches your file and where the Markdown is going — none of them uploads your file. The exception is the scanned-PDF converter, which recognises text on our server and asks first.

Which one should you use?

If you are not sure, use the plain PDF to Markdown converter. It is the general case, and the Markdown it produces is standard GitHub Flavored Markdown that works anywhere. The other pages exist because the same output needs different handling depending on where it lands.

Choose the Obsidian converter if the result is going into a note vault. What changes there is not the conversion but what you do next: filenames become note titles, the heading ladder drives the outline pane, and a note with no links is a note the graph cannot see. That page covers the import conventions.

Choose the Notion converter if you are pasting or importing into a Notion page. Notion accepts Markdown on import but maps a narrower set of it than GitHub does, so it is worth knowing in advance which blocks survive and which arrive as plain paragraphs.

Choose the ChatGPT or Claude converter if the text is going straight into a language model. Both pages are about the same two things: not wasting tokens on repeated page furniture, and getting tables and heading levels across without breaking them.

Choose the table converter when tables are the reason you are converting at all. Extracting a table from a PDF has its own failure modes — merged cells, wrapped text, columns that do not align — and that page is about recognising and repairing them rather than about the document around them.

Choose the Word converter if your file is a .docx rather than a PDF. It is the one page here whose source is not a PDF, and the conversion is the more faithful of the two: Word records its own headings, list levels and table cells, so none of that has to be inferred from the layout.

Choose the scanned-PDF converter only if the ordinary converter produced nothing. That is the signature of a scan: a document with no selectable text in it to read.

What all of them share

There is one conversion engine behind every page here. It reads the PDF with PDF.js inside a Web Worker in your browser, measures the geometry of the text, and infers structure from it: font sizes larger than the body text become headings, lines close together become paragraphs, rows that align on shared column positions become tables.

The Word path is the same engine entered by a different door. A .docx is unzipped in your browser and read directly — the style names give the headings, the numbering definitions give the lists — and from there it joins the identical Markdown renderer, so one document saved both ways converts both ways alike.

Every one of them is free, needs no account, and accepts files up to 50 MB. Bold, italic, inline code and embedded links are preserved. Images are not extracted, and mathematical notation is not converted to LaTeX.

The one that uploads, and why it is separate

A scanned page is a photograph. It contains no text at all, so nothing running in your browser can read it, however good the parser. Recognising it needs optical character recognition and far more compute than a browser tab has.

That is why scanned PDFs get their own converter rather than being a checkbox on the others. Keeping it separate is what allows every other page on this site to say, without qualification, that your file never leaves your device — a claim that would have to be hedged on all seven pages if any one of them could upload.

When you do use it, it asks first: a dialogue tells you how many pages will be sent, where they go and how long they are kept, and nothing is transmitted until you confirm. The file is held in memory for the job and destroyed when it finishes.