Parse
The HTML is read into a document, just as a browser would read a page.
Text & markupFree Markdown converter
Turn HTML source, a saved web page or content copied from a site into clean Markdown, with menus, scripts and footers left behind. It runs in your browser, so nothing is uploaded.
Highlights
This tool reads HTML and writes the same content as GitHub-flavoured Markdown: headings, paragraphs, lists, tables, code, links and images.
Paste HTML source, open a saved .html file, or copy part of any web page and paste it straight in. Everything happens in this browser tab and nothing is uploaded.
To use this tool, start with Step 1 below. In Step 1: Add HTML, paste HTML or copied web content, open an .html file, or load the example. In Step 2: Check and copy, compare the Markdown with its preview, adjust the options, then copy or download it.
Paste HTML source or content copied from a web page, open an .html file, or load the example.
or drop a file here. It stays on this device.
.html, .htm or .xhtml · up to 10 MB
0 characters · 0 lines
Choose how links and headings are written. You can also edit the Markdown; changing an option rewrites it.
0 characters · 0 lines
Preview
The formatted preview will appear here.
HTML to Markdown guide
HTML is everywhere, but it's hard to read and edit by hand. This tool turns it into Markdown you can drop into a README, a wiki, a notes app or a static site, keeping the structure and leaving the clutter behind.
The basics
Your HTML is read by the browser's own parser, then each element is written out as its Markdown equivalent. Anything that isn't content is skipped.
The HTML is read into a document, just as a browser would read a page.
Scripts, styles and forms are dropped, and menus, sidebars and footers if you choose.
Headings, lists, tables, code, links and images become GitHub-flavoured Markdown.
See the Markdown next to its rendered preview, edit it, then copy or download it.
What carries over
What each kind of HTML becomes.
| HTML | Markdown | Notes |
|---|---|---|
| <h1> to <h6> | # to ###### | Or underlined with === and --- for the top two levels. |
| <strong>, <em>, <del> | **bold**, *italic*, ~~strike~~ | Inline styles from Google Docs and web pages too. |
| <ul>, <ol>, <li> | - item, 1. item | Nested lists and starting numbers are kept. |
| <input type="checkbox"> | - [x] task | Checked state carried over. |
| <table> | Pipe table | Alignment kept; the first row becomes the header if none is marked. |
| <pre><code class="language-js"> | ```js fenced code | Language kept, including GitHub's highlighted blocks. |
| <a>, <img> | [text](url),  | Inline or reference-style links; lazy-loaded images found. |
| <br> | \ at the end of the line | A line break inside a paragraph. |
Use cases
Whenever content lives in HTML but needs to be edited or stored as Markdown.
Move pages from WordPress or an old CMS to Hugo, Jekyll, Astro or Next.js.
Save articles and documentation into Obsidian, Notion or Bear as clean Markdown.
Turn HTML help pages into Markdown for a GitHub wiki, Docusaurus or MkDocs.
Copy from Google Docs and paste here to get Markdown with formatting intact.
Turn an HTML newsletter or email into readable, editable text.
Feed web content to an AI assistant as compact Markdown instead of bulky HTML.
Set expectations
Markdown covers document structure, not design, so some things are left behind.
Colours, fonts, columns and spacing aren't part of Markdown.
Merged cells and tables containing lists or code are kept as HTML.
Forms, embedded videos and scripts are removed.
Going from Markdown to a web page instead? Markdown to HTML turns Markdown into clean HTML for any site or CMS.
Common questions
Quick answers about converting HTML to Markdown.
Paste HTML into Step 1, open an .html file, or press Load example. The Markdown appears in Step 2 next to a formatted preview. Choose how links and headings are written, make any edits, then copy the Markdown or download a .md file.
Yes. Select the part of the page you want in your browser, copy it, and paste it into the HTML box. The browser copies the page's formatting along with the text, and the tool uses that, so headings, lists, links and tables come through. You can also save the page (File → Save Page As) and open the .html file.
No. Fetching another site's page from your browser is blocked by most websites, and doing it on our server would mean your content passing through it. Open the page, copy its content, and paste it here instead. It takes a few seconds and nothing leaves your device.
No. The HTML is parsed and rewritten as Markdown inside your browser tab, so it never leaves your device. Nothing is kept once you refresh or close the page.
When the HTML is a whole page, only its main content is converted: the <main> element, or the page's only <article>. Navigation menus, sidebars and the page's own header and footer are skipped. Turn it off to convert everything. Scripts, styles and forms are always left out.
Yes. Copy the text in Google Docs and paste it into the HTML box. Google Docs marks bold, italic and strikethrough with inline styles rather than the usual tags, and the tool reads those, so the formatting comes through as **bold**, *italic* and ~~strikethrough~~. For a .docx file, use Word to Markdown.
HTML tables become GitHub-flavoured pipe tables, with column alignment kept. If a table has no header cells, its first row becomes the header, because Markdown tables need one. Tables that contain lists, headings or code blocks can't be written as pipe tables, so they're kept as HTML, which Markdown allows.
Inline links put the address right after the text, like [docs](https://example.com). Reference-style links keep the text tidy, like [docs][1], and list every address at the end of the document. Both render the same.
Characters like *, _ and # mean something in Markdown. When they appear in ordinary text, the tool puts a backslash in front so they show up as typed instead of changing the formatting. A backslash at the end of a line is a line break from a <br> in the HTML. Neither shows in the preview.
Convert as many pages as you like without signing up. HTML files can be up to 10 MB, and pasted HTML is limited only by your browser.
Related converters
These tools also run in your browser, with no sign-up and nothing uploaded.