HTML to Markdown

Converts HTML into Markdown, turning headings, lists, links, emphasis and code blocks back into plain-text syntax. Useful for moving content out of a CMS, into a documentation repo, or into any tool that speaks Markdown.

Live demo · real result from this tool
Bullet
Emphasis
Code fence

Markdown

## Release notes Version **2.4** adds [offline mode](https://example.com/docs "Docs") and fixes *three* bugs. - Faster start-up- Dark theme  - Auto switch ```bashnpm install toolsrift``` | Plan | Price || --- | --- || Free | €0 | > Works without an account. 

Processed on your device — nothing is uploaded.

How to use HTML to Markdown

  1. Paste your HTML.
  2. The Markdown appears alongside it.
  3. Check tables, nested lists and anything unusual before using the result.
  4. Classes, ids, styles and layout elements are dropped — Markdown cannot express them.
  5. Complex tables may come through as raw HTML, which is valid Markdown and usually the right answer.
  6. Conversion runs in your browser, so unpublished content is not transmitted.

What survives and what does not

Markdown expresses a small, deliberate subset of HTML: headings, paragraphs, emphasis, lists, links, images, blockquotes, code and — by extension — tables. Anything outside that has nowhere to go. Classes, ids, inline styles, data attributes, divs and spans, iframes, form elements and most of the structure of a modern web page simply vanish, because Markdown has no way to say them. That is the point of the conversion rather than a failure of it, but it means converting a full page gives you the article and none of the furniture.

Nested and complex structures are where it gets ugly

Markdown handles a nested list well and a table containing a list badly, because Markdown tables cannot contain block elements at all. A table with paragraphs in its cells has to stay as HTML — which is legal in Markdown, and is what a good converter falls back to. Deeply nested blockquotes, definition lists and figures with captions all come through approximately at best. Check anything structurally unusual by eye.

Round-tripping is lossy in one direction

Markdown to HTML and back is roughly stable. HTML to Markdown and back is not: the second HTML will be simpler than the first, having lost every attribute and wrapper. So converting a page to Markdown to edit it and then publishing the re-rendered HTML will quietly strip your styling hooks. Convert when you are moving to a Markdown-native system for good, not as a temporary editing step.

Frequently asked questions

What HTML elements are converted?
Headings, paragraphs, lists, links, images, bold, italic, code blocks, and blockquotes are converted to equivalent Markdown syntax.
Does it handle complex HTML?
The converter works best with semantic HTML. Complex layouts, tables, and styling may not translate perfectly to Markdown's simpler syntax.
Can I convert back to HTML?
Yes, use our Markdown to HTML tool to convert back. Markdown is designed to be reversible, though some HTML details may be lost in conversion.
Why did my styling disappear?
Markdown has no syntax for classes, ids or inline styles, so they cannot be represented. Only the structural meaning survives — headings stay headings, emphasis stays emphasis. If you need the presentation, keep the HTML.
Can I convert a whole web page?
You can, and you will get the article text plus whatever navigation, footer and sidebar text was in the markup. Extract the main content element first for a usable result — converting the whole document gives you the menus too.
What happens to tables?
Simple tables become Markdown table syntax. Tables containing paragraphs, lists or other block elements cannot be expressed that way and stay as HTML, which Markdown permits and every renderer handles.

Written by the ToolsRift team · Last updated

Pages are drafted with AI assistance and checked by automated tests. How we write and check pages.

Was this tool useful?

Report a problem

Start typing to search every tool.

↑ ↓ to moveEnter to openEsc to close