HTML to Markdown Converter

Convert HTML into clean Markdown — paste HTML from a web page, CMS, or email and get GitHub-Flavored Markdown you can copy or download. Runs in your browser.

The HTML to Markdown Converter turns HTML into clean, readable Markdown. Paste the HTML from a web page, a CMS export, an email, or anywhere else, and get GitHub-Flavored Markdown you can drop straight into a README, documentation, a static-site post, or a Markdown-based CMS.

It handles the elements that matter — headings, links, images, lists, blockquotes, code blocks, and (with GitHub-Flavored mode on) tables, strikethrough, and task lists — and strips the surrounding markup and styling so you are left with tidy Markdown. Everything runs in your browser, so the content you paste is never uploaded.

How to convert HTML to Markdown

  1. Paste your HTML into the input box (view-source or copied markup both work).
  2. Leave GitHub-Flavored on for tables, strikethrough, and task lists, or turn it off for plain Markdown.
  3. The Markdown updates instantly on the right.
  4. Copy the Markdown or download it as a .md file.

When you need HTML to Markdown

This is the reverse of what a Markdown editor does. It is most useful when you are migrating content: moving articles from a WordPress or other CMS export into a Markdown-based site, turning a rich-text email or Google Doc (pasted as HTML) into a clean post, saving a web page as notes, or converting legacy HTML documentation into Markdown for a docs generator. Instead of hand-stripping tags, you get structured Markdown in one step.

What gets converted

Standard elements map to their Markdown equivalents: h1–h6 become # headings, <strong> and <em> become bold and italic, <a> becomes a link, <img> an image, <ul>/<ol> lists, <blockquote> a quote, and <pre><code> a fenced code block. With GitHub-Flavored Markdown enabled, <table> becomes a pipe table, <del>/<s> become strikethrough, and checkbox list items become task lists. Elements with no Markdown equivalent are unwrapped so their text content is preserved.

Getting the cleanest result

Markdown is intentionally simpler than HTML, so anything Markdown cannot express — inline styles, class names, <div> wrappers, and scripts — is dropped, leaving just the content. If you are pasting from a live page, copying the relevant section rather than the entire document avoids pulling in navigation and footer markup. You can switch the bullet character (-, *, or +) to match your project’s style, and the output uses ATX (#) headings and fenced code blocks, which are the most widely supported conventions.

Frequently Asked Questions

How do I convert HTML to Markdown?

Paste the HTML into the input box and the converter produces Markdown instantly on the right, which you can copy or download as a .md file.

Does it support tables and task lists?

Yes, when GitHub-Flavored Markdown is enabled (the default). HTML tables become pipe tables, strikethrough is preserved, and checkbox list items become task lists.

How is this different from the Markdown Editor?

The Markdown Editor goes the other way — you write Markdown and get HTML. This tool takes existing HTML and converts it back into Markdown, which is what you need when migrating web content.

What happens to styling and scripts?

Markdown cannot represent inline styles, classes, or scripts, so they are removed and only the content and structure are kept. That is usually exactly what you want for clean Markdown.

Is my HTML uploaded anywhere?

No. The conversion runs entirely in your browser, so the HTML you paste stays on your device.