DOCX to Markdown Converter
Turn a Word .docx into clean Markdown with real headings, lists, links and tables. It runs in your browser, so the file is never uploaded.
Or drop a .docx file here. It is read on your device and never uploaded.
How to use this tool
- Choose a .docx file with "Choose file", or drop it onto the box. You can also press "Try an example".
- Read the Markdown in the Markdown box. It appears as soon as the file is read.
- Tick "Embed images" if you want pictures kept inside the Markdown; the result updates straight away.
- Press "Copy Markdown", or download the result as a .md file named after your document.
What happens to each part of a Word document
Word stores a document as styled paragraphs. The converter keeps the structure those styles describe, such as headings, lists, links and tables, and lets go of the look, such as fonts, colours and spacing, because Markdown has nowhere to put it. Each result below was produced by the converter itself.
| In Word | Example | Markdown you get |
|---|---|---|
| Heading 1 and Heading 2 styles | Results / Detail | # Results ## Detail |
| Bold and italic | Done and nearly | **Done** and *nearly* |
| Strikethrough | draft final | ~~draft~~ final |
| Hyperlink | CommonMark → commonmark.org | [CommonMark](https://commonmark.org/) |
| Bulleted list | milk, eggs | - milk - eggs |
| Numbered list with a sub-item | Plan, then Draft under it, then Write | 1. Plan 1. Draft 2. Write |
| Table | Item / Qty, Pens / 4 | | Item | Qty | | ---- | --- | | Pens | 4 | |
| Quote style | Measure twice | > Measure twice |
| Footnote | Claim, with note "Source." | Claim[^1] [^1]: Source. |
| Line break (Shift+Enter) | one, two on the next line | one\ two |
Example: a short report before and after
Before: the Word document
Quarterly report
Sales grew strongly in March.
Highlights
- New store opened
- Returns fell
- Review the numbers
- Plan next quarter
Read the full guide online.
Region | Sales |
|---|---|
North | 120 |
South | 95 |
After: Markdown
# Quarterly report Sales grew **strongly** in *March*. ## Highlights - New store opened - Returns fell 1. Review the numbers 2. Plan next quarter Read the [full guide](https://commonmark.org/help/) online. | Region | Sales | | ------ | ----- | | North | 120 | | South | 95 |
The example file is quarterly-report.docx, the same one the "Try an example" button loads.
Why convert Word documents to Markdown
Markdown is plain text with a few symbols for structure, which makes it the common language of documentation sites, README files, wikis, note apps such as Obsidian, and static site generators. It also suits AI tools: a language model reads a heading marked with # and a table drawn with pipes far more reliably than it reads the XML inside a .docx, so Markdown is the usual format for feeding documents into a chat, a custom GPT or a retrieval pipeline.
Copying from Word and pasting into a Markdown editor loses most of that structure: headings arrive as plain lines, numbered lists lose their numbers and tables collapse into tab-separated text. Reading the .docx itself avoids that, because the converter sees which paragraphs carry a Heading style, which belong to a list and which cells make up a table.
How it works
A .docx file is a ZIP archive of XML files. The page opens it with mammoth, an open-source library that maps Word's built-in styles to their meaning: Heading 1 becomes a top-level heading, a list paragraph becomes a list item, and a run marked bold becomes strong text. That structure is then written out as GitHub Flavored Markdown, with special characters escaped so that an asterisk you typed in Word stays an asterisk instead of turning into italics.
Because the mapping follows styles, documents that use Word's own Heading styles convert best. A line that only looks like a heading because it was made big and bold by hand is still a normal paragraph to Word, so it comes through as bold text. Applying the Heading styles in Word before converting fixes that.
Private by design
The file never leaves your device. It is read into this page with your browser's file reader, converted by code that is already loaded, and the Markdown is shown in the box above. There is no upload, no account and no copy on a server, and the tool keeps working if you go offline once the page has loaded.
Limits
- Only .docx files. Old .doc files, PDFs and .odt files are not read.
- Fonts, colours, highlighting, underlining, page layout, headers, footers and text boxes are not converted. Markdown has no equivalent for most of them.
- Tables become pipe tables with the first row as the header. Markdown cannot merge cells, so a merged cell's text goes in its first cell and the cells it covered are left empty. Lists or several paragraphs inside a cell are joined onto one line, because a Markdown table cell holds a single line.
- Numbered lists always start at 1, even if the Word list started at another number.
- Comments are left out, and tracked changes are not shown as changes; accept or reject them in Word first.
- Equations, charts and SmartArt are not converted. Images are left out unless you embed them.
Frequently asked questions
Is my document uploaded anywhere?
No. The converter is part of this page and runs in your browser. The file is read from your disk into the page, converted there, and never sent to a server, so it is safe to use with contracts, reports and other private documents.
Does it work with old .doc files?
No. Only the .docx format, which Word has used since 2007, can be read. Open the .doc in Word or LibreOffice and choose Save As, Word Document (.docx), then convert that file.
Can I convert a Google Doc?
Yes. In Google Docs choose File, Download, Microsoft Word (.docx), then choose the downloaded file here.
What happens to images?
By default they are left out and the status line tells you how many there were, because Markdown cannot hold a picture except as a link. Tick "Embed images" to keep each one inside the Markdown as a data: URI. That works in most Markdown previewers but makes the text very long.
Which Markdown flavour does it write?
GitHub Flavored Markdown: # headings, ** for bold, * for italics, - for bullets, pipe tables and [^1] footnotes. It reads correctly on GitHub and GitLab, in Obsidian and VS Code, and in static site generators such as Astro, Hugo and Jekyll.
Is it free?
Yes, with no sign-up and no limit on how many documents you convert one at a time. Pro, planned as a one-time purchase, adds converting a whole folder of files at once.