HTML to Markdown Converter
Paste HTML and get tidy Markdown you can drop into a README, doc or CMS. It converts headings, bold and italic, inline and fenced code, links, images, ordered and unordered lists, blockquotes and horizontal rules. Unknown tags are stripped, their text is kept, and common entities like & are decoded.
How to convert HTML to Markdown
- Paste or type your HTML into the input box.
- The Markdown output updates instantly as you edit.
- Copy the Markdown or download it as output.md for your repo or notes.
Examples
Heading, bold text and a link
<h1>Notes</h1><p>Some <strong>bold</strong> text and a <a href="https://example.com">link</a>.</p>
# Notes Some **bold** text and a [link](https://example.com).
An unordered list
<ul><li>Apples</li><li>Oranges</li><li>Pears</li></ul>
- Apples - Oranges - Pears
Frequently asked questions
Which HTML elements are supported?
Headings (h1 through h6), bold (strong, b), italic (em, i), inline code, preformatted code blocks (pre and code), links, images, unordered and ordered lists with nesting, blockquotes, horizontal rules and line breaks. Block tags like div and section pass their content through.
What happens to tags it does not recognize?
Unknown or styling-only tags such as span and font are removed, but the text inside them is kept, so you do not lose any content. Script and style blocks are dropped entirely along with their contents.
Does it handle HTML entities?
Yes. Common named entities like &, <, >, © and —, plus numeric entities like A and B, are decoded back to their real characters so the Markdown reads naturally.
Is my HTML sent to a server?
No. The conversion runs entirely in your browser, so nothing you paste leaves your machine. You can use it offline once the page has loaded.
Is this full CommonMark or GitHub Flavored Markdown?
It produces standard Markdown for the elements most people paste. Tables, definition lists, task lists and embedded raw HTML are not converted to special Markdown syntax, so review the output if your source relies on those.
Why does my formatting look slightly different?
Markdown has fewer constructs than HTML, so insignificant whitespace is collapsed and inline styling is normalized (for example b and strong both become **bold**). The meaning is preserved even when the exact bytes differ.
Related tools
Markdown to HTML
Convert Markdown to clean HTML in your browser. Headings, bold, italic, links, images, lists, blockquotes and fenced code blocks, with text safely escaped.
JSON to CSV
Convert JSON to CSV online. Paste an array of objects and get clean, spreadsheet-ready CSV with the right headers. Runs in your browser.
JSON Formatter
Format, validate and minify JSON online. Pretty-print with custom indentation, sort keys and catch syntax errors. Runs in your browser.
Binary to Decimal
Convert binary to decimal online. Paste any binary number, with or without spaces, and get the exact base-10 value instantly. Runs in your browser.
Binary to Hex
Convert binary to hexadecimal online. Paste a binary number and get exact hex, with optional uppercase. Handles huge values. Runs in your browser.
Celsius to Fahrenheit
Convert Celsius to Fahrenheit instantly. Type a temperature in C and get F, with the formula and a quick reference table. Runs in your browser.