HTML → Markdown

Paste HTML, get clean Markdown. Perfect for escaping a WYSIWYG editor or migrating into a docs-as-code workflow.

About this tool

The HTML-to-Markdown converter takes arbitrary HTML and produces readable, diffable Markdown you can commit to Git, edit in any text editor, or move between platforms. It handles the full range of common HTML elements — headings, paragraphs, lists, tables, blockquotes, code blocks, links, images, and inline formatting — and strips away editor-specific junk like empty spans, tracking attributes, and redundant wrappers.

Conversion runs entirely in your browser, so HTML you paste never reaches our servers. This makes the tool safe for content from internal CMS exports, Notion/Confluence dumps, or anything else you wouldn't want uploaded to a third-party service.

The output is GitHub Flavored Markdown: GFM tables, fenced code blocks, task lists, and autolinks. You can paste it directly into a docs repo, a static site generator, or any modern Markdown editor.

How it works

  1. 1

    Paste your HTML

    Paste the HTML — from View Source, a CMS export, a pasted-rich-text clipboard, or anywhere else — into the left panel.

  2. 2

    Review the Markdown

    The right panel shows the converted Markdown. Check that headings, lists, and tables came through correctly.

  3. 3

    Copy and edit

    Copy the Markdown and paste it into your editor or repo. Inline edits are often needed for complex HTML — this tool gets you 90% there.

Common use cases

  • Migrating blog posts from a WordPress, Medium, or Ghost export into a Git-based docs workflow
  • Converting Notion or Confluence HTML exports into plain Markdown notes
  • Recovering documentation from a rendered web page when the original source is lost
  • Cleaning up copy-pasted rich text that brought along bloated inline formatting

Frequently Asked Questions

What happens to inline styles and scripts?+
They're stripped. Markdown has no representation for CSS or JavaScript, so the converter discards style attributes, <style> tags, and <script> tags while preserving the semantic content.
Will complex HTML tables convert cleanly?+
Simple tables convert to GFM tables. Tables with rowspan, colspan, multi-paragraph cells, or nested elements will lose structure — Markdown tables are single-line per row. For complex tables, consider keeping the raw HTML instead.
Does it preserve image paths?+
Yes, both relative and absolute image URLs are preserved. If you're migrating between sites, you may still need to update the paths manually after conversion.
What about custom HTML elements like <kbd>, <details>, or <sup>?+
Elements Markdown can represent (<strong>, <em>, <code>, etc.) are converted. Elements without a Markdown equivalent are passed through as raw HTML, since most Markdown renderers accept inline HTML.
Is any HTML sent to a server?+
No. Conversion happens in your browser. The tool works offline and your content stays on your device.

Related tools

Learn more