HTML to Markdown Converter
Convert HTML to clean Markdown syntax — paste, convert, and copy instantly.
Converted Markdown will appear here...About HTML to Markdown Converter
HTML to Markdown Converter takes raw HTML markup and rewrites it as clean, portable Markdown syntax. It uses the Turndown library under the hood, which faithfully maps headings (h1-h6) to ATX-style # symbols, converts anchor tags to inline [text](url) links, wraps code in fenced triple-backtick blocks, and handles lists, blockquotes, bold, italic, strikethrough, and tables — producing the Markdown dialect accepted by GitHub, GitLab, VS Code, Notion, Obsidian, Jekyll, Hugo, and most other Markdown-aware platforms.
The typical trigger is a content migration: an article written in a CMS, a README draft composed in a WYSIWYG editor, or a documentation page scraped from a legacy site all arrive as HTML. Manually rewriting heading tags, link syntax, and code fences is tedious and error-prone. Pasting the source into this tool and clicking Convert produces correctly structured Markdown in one step, ready to commit to a repository or paste into a docs platform.
The entire conversion runs in your browser with no server round-trip. The Turndown library executes locally, so your HTML — whether it contains confidential API documentation, unreleased product copy, or personal notes — never leaves your machine. The tool is free, has no rate limits, and requires no account.
Key Features
ATX-style headings
h1 through h6 elements become # through ###### prefix headings, the format expected by GitHub Flavored Markdown and most static site generators.
Fenced code blocks
pre and code elements are wrapped in triple-backtick fences rather than indented four spaces, so syntax highlighters in GitHub, GitLab, and VS Code recognize them correctly.
Inline links and images
Anchor tags become [label](href) Markdown links and img tags become  image syntax, preserving both the display text and the destination URL.
Lists, tables, and blockquotes
Ordered and unordered lists, HTML tables, and blockquote elements are each converted to their Markdown equivalents, keeping structure intact for documentation and README files.
Client-side only, no data upload
Conversion is executed entirely in your browser by the Turndown JavaScript library. Nothing is sent to a server, making it safe for internal documentation and proprietary content.
Handles real-world messy HTML
Copy-pasted blog posts, CMS exports, and scraped pages often contain nested divs and inline styles. The parser strips presentational noise and keeps only the semantically meaningful elements.
How to Use
Paste HTML
Copy your HTML code and paste it into the left editor pane.
Convert
Click "Convert" to transform your HTML into Markdown syntax.
Copy Result
Use the copy button to grab your Markdown output.
Example
Headings, bold text, links, and a fenced code block are each converted to their Markdown equivalents in a single click.
<h1>Getting Started</h1>
<p>Install the package with <strong>npm</strong>:</p>
<pre><code>npm install my-package</code></pre>
<p>Then visit the <a href="https://example.com/docs">documentation</a>
for configuration options.</p> # Getting Started
Install the package with **npm**:
```
npm install my-package
```
Then visit the [documentation](https://example.com/docs)
for configuration options. Common Use Cases
- arrow_circle_right
Migrating CMS content to a Git-based docs site
Export pages from WordPress, Drupal, or Contentful as HTML, then convert them to Markdown to store in a repository and publish with Jekyll, Hugo, or Docusaurus.
- arrow_circle_right
Authoring GitHub and GitLab READMEs from existing HTML
Turn an existing product landing page or internal wiki page into a properly formatted README.md without hand-rewriting every heading and link.
- arrow_circle_right
Preparing Obsidian and Notion notes from web content
Paste the HTML source of an article or documentation page and get clean Markdown you can drop directly into an Obsidian vault or Notion import without reformatting.
- arrow_circle_right
Converting email newsletter templates for archiving
HTML newsletters use table-heavy layout that cannot be read as raw source. Convert to Markdown to keep the text content and links in a human-readable, searchable archive.
- arrow_circle_right
Stripping HTML from WYSIWYG editor output for version control
Rich-text editors produce HTML that diffs poorly in Git. Convert to Markdown before committing so code reviews show meaningful line-level changes instead of tag noise.