HTML to Markdown Converter
Convert HTML to clean Markdown instantly. Paste any HTML and get properly formatted Markdown — supports all common elements including headings, lists, links, code, tables, bold, and italic.
Convert HTML to clean Markdown instantly. Paste any HTML and get properly formatted Markdown — supports all common elements including headings, lists, links, code, tables, bold, and italic.
Discover our collection of free online tools for developers, designers, and power users
Advertisement
Advertisement
Advertisement
Migrating a CMS to a static site generator, importing old blog posts into Obsidian, writing a GitHub README from existing docs — all of these require converting HTML to Markdown. This converter handles it instantly, with options to match your Markdown style preferences.
| HTML | Markdown |
|---|---|
| <h1> to <h6> | # through ###### |
| <strong>, <b> | **bold** |
| <em>, <i> | *italic* |
| <a href="..."> | [text](url) |
| <ul>, <ol>, <li> | - item / 1. item |
| <code>, <pre> | `code` / ```block``` |
| <blockquote> | > quote |
| <table> | Markdown table |
| <img> |  |
| <hr> | --- |
Paste raw HTML into the left panel. The converter processes it instantly as you type or paste — no button needed.
Choose heading style (# or underline), bullet marker (-, *, +), and code block style (fenced ``` or indented). Options update the output live.
Click Copy Markdown above the output panel to copy the clean Markdown to your clipboard, ready to paste anywhere.
Inline styles (color, font-size, etc.) are stripped — Markdown has no equivalent. JavaScript is removed. Complex layouts (div, flexbox, grid) collapse to their text content. Inline SVG is ignored. If you need styling preserved, keep the original HTML.
ATX uses hash symbols: # Heading 1, ## Heading 2 — this is the GitHub standard and works for all heading levels. Setext uses underlines: "Heading 1" followed by "======" — this only works for h1 and h2 and is an older style. ATX is recommended for most use cases.
Fenced code blocks use triple backticks (```) and are supported by all modern Markdown renderers including GitHub, GitLab, and Obsidian. Indented code blocks use 4 spaces and are the original Markdown spec. Use fenced unless your target renderer specifically requires indented.
The tool converts HTML syntax to Markdown — paste the body content of a page (not the full HTML including head/scripts). For best results, paste just the article or main content HTML rather than the entire page source.