Usevanta
Developer Tools

HTML to Markdown Converter

Convert HTML into clean Markdown for README files, documentation, notes apps and static site generators. Headings, emphasis, links, images, lists, quotes, code and simple tables are supported.

Try it now
Everything runs in this browser. Nothing you enter is uploaded.

Your HTML is read as plain text and converted with a built-in parser. It is never rendered or run, so scripts, images and links in it stay inactive. Scripts, styles, forms and embeds are removed, and links with javascript: addresses are dropped.

Markdown
Your Markdown will appear here...

How to Use the HTML to Markdown Converter

  1. Paste your HTML into the input, or press Load an example.
  2. Read the converted Markdown in the result panel. It updates as you edit.
  3. Check any notes about removed or simplified tags.
  4. Copy the Markdown or save it as a .md file.

Examples

Heading and paragraph

Input
<h1>Hello</h1> <p>This is <strong>important</strong>.</p>
Output
# Hello This is **important**.

List with code and a link

Input
<h2>Install</h2> <ol> <li>Run <code>npm install</code></li> <li>Start the <a href="https://example.com/dev">dev server</a></li> </ol>
Output
## Install 1. Run `npm install` 2. Start the [dev server](https://example.com/dev)

Quote, rule and image

Input
<blockquote><p>Simplicity is <em>prerequisite</em> for reliability.</p></blockquote> <hr> <img src="logo.png" alt="Company logo">
Output
> Simplicity is *prerequisite* for reliability. --- ![Company logo](logo.png)

About the HTML to Markdown Converter

Markdown is easier to read, review and version than HTML, which is why it is used for README files, wikis, documentation sites and many notes apps. Converting by hand is slow, especially for long pages with links and lists.

The converter supports headings (h1–h6), paragraphs, line breaks, bold, italic, strikethrough, links with titles, images with alt text, nested bulleted and numbered lists (including a start number), blockquotes, inline code, fenced code blocks with a language taken from class="language-…", horizontal rules and simple tables, which become GitHub-flavoured Markdown tables. HTML entities such as &amp;amp; and &amp;#169; are decoded, and characters that Markdown would treat as formatting are escaped.

Some HTML has no Markdown equivalent. Scripts, styles, forms, iframes, video and audio are removed. Underline, superscript, subscript and highlight keep their text but lose their formatting. Tables with merged cells, class and style attributes, and layout built with divs cannot be represented exactly, and links using javascript: addresses are dropped. Your HTML is read as text by a small built-in parser: it is never rendered, run or sent to a server.

Frequently Asked Questions

Is it safe to paste HTML that contains scripts?

Yes. The HTML is treated as plain text and parsed without a browser DOM, so scripts are never executed and images are not loaded. Script and style elements are removed from the output.

Which HTML tags are supported?

Headings, paragraphs, br, strong/b, em/i, del/s, a, img, ul, ol, li, blockquote, code, pre, hr and simple tables. Containers such as div and section become paragraphs. Other tags are converted to their text.

Does it support tables?

Yes, simple ones. Each row becomes a row of a GitHub-flavoured Markdown table, with the first row used as the header. Merged cells (colspan and rowspan) cannot be shown and trigger a note.

Why are some characters escaped with a backslash?

Characters such as *, _, [ and # can start formatting in Markdown. They are escaped when they are part of your text so that the Markdown shows them literally.

Can I convert a whole web page?

You can paste a full page’s HTML. The head section, scripts and styles are removed, and the body content is converted. Navigation menus and footers will be included too, so you may want to paste just the main article.