Free · Live Conversion · No Signup

HTML to Markdown Converter

Convert HTML markup to clean, readable Markdown instantly. Supports GitHub Flavored Markdown, tables, code blocks, nested lists, blockquotes, links and images with live preview.

Live PreviewTablesCode BlocksNested ListsBlockquotesGitHub GFMImage TagsClean HTML
Conversion Options
HTML Input
Markdown Output

HTML → Markdown Tag Reference

Headings
<h1> – <h6>
# Heading 1 … ###### Heading 6
Bold
<strong>, <b>
**bold text**
Italic
<em>, <i>
_italic text_
Links
<a href="">
[text](url)
Images
<img src="">
![alt](src)
Code
<code>
`inline code`
Code Block
<pre><code>
```lang\ncode\n```
Unordered
<ul><li>
- list item
Ordered
<ol><li>
1. list item
Blockquote
<blockquote>
> quoted text
Divider
<hr>
---
Table
<table>
| col | col |\n|---|---|
Line Break
<br>
\n (2 spaces)
Strike
<del>, <s>
~~strikethrough~~
Paragraph
<p>
paragraph\n\n
Entities
&amp; entities
Decoded automatically

Free HTML to Markdown Converter Clean, Accurate, Instant

The TOOLBeans HTML to Markdown converter transforms HTML markup into clean, readable Markdown the moment you type or paste it. It handles every common element you are likely to encounter headings from h1 to h6, bold and italic text, hyperlinks, images, ordered and unordered lists with nesting, fenced code blocks with language hints, blockquotes, horizontal rules and full tables and it keeps inline formatting such as bold, links and inline code intact even when those appear inside list items, headings or table cells.

Markdown has become the default writing format for developers and technical writers because it is simple, portable and readable as plain text. GitHub README files, project wikis, static site generators like Jekyll, Hugo and Astro, documentation platforms, and note-taking apps such as Obsidian and Notion all speak Markdown. But a huge amount of existing content lives as HTML, whether exported from a CMS, copied from a web page, or generated by a rich text editor. This converter bridges that gap, turning messy HTML into tidy Markdown you can paste anywhere.

Everything runs entirely inside your browser. Your HTML and any files you upload are processed locally and never sent to a server, which makes the tool fast, private and safe for proprietary or unpublished content. There is no signup, no watermark and no limit on how much you convert.

HTML and Markdown: What Is the Difference?

HTML, the language of the web, describes content using angle-bracket tags such as <h1>, <p> and <a>. It is powerful and precise, but verbose and hard to read in raw form. Markdown, created by John Gruber in 2004, is a lightweight markup language that expresses the same structure with simple punctuation: a hash for a heading, asterisks for bold, square brackets for a link. The result reads naturally even before it is rendered.

Because Markdown is so much easier to write and review, it has been adopted almost everywhere developers work. When you write a GitHub issue, comment on a pull request, draft documentation or compose a README, you are almost certainly writing Markdown. Converting existing HTML to Markdown lets you bring older content into these modern workflows without rewriting it by hand.

The conversion is not always one-to-one, because HTML can express things Markdown cannot, such as arbitrary styling or complex layout. A good converter focuses on the structural meaning of the content the headings, emphasis, links, lists and code and discards purely presentational markup. That is exactly what the Clean HTML option here does when you need the leanest possible output.

How to Convert HTML to Markdown

1
Paste or upload your HTML

Type or paste HTML into the input panel, click Load Sample HTML to see a full example, or use Upload to load an .html file from your device.

2
Watch it convert live

With Live mode on, Markdown is generated instantly as you type. Turn Live off and use the Convert button if you prefer to convert on demand for very large documents.

3
Choose your options

Enable GitHub Flavored Markdown for strikethrough, task lists and GitHub-ready tables. Turn on Clean HTML to strip scripts, styles and attributes. Toggle Preserve Links to keep or drop hyperlink URLs.

4
Pick a view

Use Split to see HTML and Markdown side by side, Markdown for the raw output alone, or Preview to see how the Markdown will actually render.

5
Check the live preview

The Preview tab renders your Markdown with headings, tables, code blocks and blockquotes styled, so you can confirm the structure is correct before using it.

6
Copy or download

Copy the Markdown to your clipboard with one click, or download it as a .md file ready to commit to a repository or drop into your docs.

What This Converter Handles Well

Many simple converters fall down on the details. This one is built to handle the cases that matter in real documents.

Inline formatting inside lists and headings

Bold, italic, inline code and links are preserved when they appear inside a list item, a heading or a table cell, so a bulleted item like a link to the docs keeps its link rather than collapsing to plain text.

Tables

HTML tables become Markdown pipe tables with a proper header separator row, including any bold or links inside cells, ready to paste straight into GitHub.

Code blocks with language hints

A pre and code block keeps its content verbatim and picks up the language from a class such as language-js, producing a fenced block with correct syntax highlighting on GitHub.

Nested lists

Lists within lists are indented correctly to the right depth, so multi-level outlines survive the conversion.

Blockquotes

Quoted content is converted recursively, so formatting inside a blockquote is handled just like formatting anywhere else.

HTML entities

Encoded characters such as &amp;amp;, &amp;lt; and numeric entities are decoded back to the real characters they represent.

GitHub Flavored Markdown and Clean HTML

GitHub Flavored Markdown (GFM) is the dialect used across GitHub and many other platforms. It adds features beyond the original Markdown spec, including tables, strikethrough with double tildes, and task list checkboxes. When you enable GFM mode here, the converter emits these constructs so your output renders correctly in a GitHub README, a wiki page, an issue or a pull request description. If you are writing for GitHub, leave this option on.

The Clean HTML option is invaluable when your source comes from a web page or a CMS export. Such HTML is usually cluttered with <script> and <style> blocks, inline styles, and class and ID attributes that carry no meaning once the content is Markdown. Cleaning strips all of that first, so the conversion focuses purely on content and produces lean, portable output. It is the difference between a clean document and one littered with leftover markup.

Who Uses an HTML to Markdown Converter?

📝 Bloggers migrating platforms

Moving from WordPress or another CMS to a static site or a Markdown-based blog means converting exported HTML posts into Markdown files.

📚 Documentation writers

Turning legacy HTML help pages into Markdown lets teams version their docs in Git alongside the code they describe.

💻 Developers writing READMEs

Converting an HTML description or a design doc into Markdown produces a ready-to-commit README without manual reformatting.

🔄 Content teams and CMS migration

Bulk-moving articles between systems is far easier when HTML can be reduced to clean, predictable Markdown.

📧 Email and newsletter authors

HTML email content can be converted to Markdown for archiving, reuse in docs, or publishing on a Markdown-based platform.

🎓 Students and note-takers

Saving a web article as Markdown makes it easy to store in tools like Obsidian or Notion and to annotate later.

Private by Design

Unlike many online converters that upload your content to a server for processing, this tool does everything locally in your browser. Your HTML, the Markdown it produces, and any .html files you upload never leave your device.

That matters when you are converting unpublished articles, internal documentation, client work or anything confidential. Because nothing is transmitted, there is no upload wait, the tool keeps working even if your connection drops after loading, and you never have to wonder where your content went.

Tips for Cleaner Markdown Output

A few habits make the conversion smoother and the result tidier. If your HTML comes from a web page or a rich text editor, turn on Clean HTML first; pasted markup often carries hidden styling and wrapper elements that add noise to the output, and cleaning removes them before anything else happens. If you are writing for GitHub, keep GitHub Flavored Markdown enabled so that tables and strikethrough render the way you expect rather than appearing as literal symbols.

Use the Preview tab as a final check. Markdown can look correct as raw text but reveal a problem once rendered, such as a table whose columns do not line up or a code block that swallowed a stray tag. The preview here styles headings, tables, code, blockquotes and lists the way a typical Markdown renderer would, so you can catch these issues before you publish. Because the output is fully editable, you can fix any small detail directly in the Markdown panel and then copy or download the corrected version.

Finally, remember that Markdown deliberately supports only a subset of what HTML can express. Elements that have no Markdown equivalent, such as custom widgets, embedded forms or complex multi-column layouts, are reduced to their text content. This is expected and usually desirable: the goal of converting to Markdown is to capture the meaning and structure of your content in a clean, portable form, not to reproduce every pixel of the original page. For the elements Markdown does cover, which is the vast majority of real writing, the conversion is faithful and complete.

Frequently Asked Questions

Is the HTML to Markdown converter free?+
Yes. It is completely free with no signup and no usage limits. Every feature, including GitHub Flavored Markdown, clean HTML, live preview, file upload and download, is available to everyone.
Are my files uploaded to a server?+
No. All conversion happens locally in your browser. Your HTML and any uploaded .html files never leave your device, so it is safe for confidential or unpublished content.
Does it support GitHub Flavored Markdown?+
Yes. Turn on GitHub Flavored Markdown to produce strikethrough, task list checkboxes and tables that render correctly in GitHub README files, wikis, issues and Pages.
Does it keep bold and links inside lists and headings?+
Yes. Inline formatting such as bold, italic, inline code and links is preserved inside list items, headings and table cells, so your Markdown keeps its full meaning rather than flattening to plain text.
Can it convert HTML tables to Markdown?+
Yes. HTML tables are converted to Markdown pipe tables with a header separator row, including any formatting inside the cells, ready to paste into GitHub or any Markdown editor.
What does the Clean HTML option do?+
It removes scripts, stylesheets, inline styles and class and ID attributes before conversion. This produces minimal, portable Markdown and is ideal for content copied from a web page or exported from a CMS.
Can I upload an HTML file?+
Yes. Click Upload .html and select a .html, .htm or .txt file. Its contents load into the input and convert immediately, just like pasted HTML.
Will my code blocks keep their language?+
Yes. A pre and code block with a class such as language-js produces a fenced code block tagged with that language, so it gets correct syntax highlighting on GitHub and other platforms.
Can I edit the Markdown after converting?+
Yes. The Markdown output is a normal editable text area. You can tweak it directly, then copy or download the edited result.
Does the converter work offline?+
Yes. Once the page has loaded, conversion runs entirely in your browser, so it keeps working even without an internet connection.