Convert HTML code to Markdown syntax. Perfect for converting web content to markdown format.
HTML to Markdown Converter tool
0 lines • 0 bytes
0 lines • 0 characters
Conversion Options
About HTML to Markdown Converter
Paste HTML and get Markdown back: headings become hashes, anchors become bracket-and-parenthesis links, lists become dashes, and tables become pipe tables. Useful when you are moving content into a repository, a static site generator or a documentation tool, or when you need to strip the formatting soup out of something copied from a web page.
What this tool does
Converts headings, paragraphs, links, images, lists, blockquotes and code blocks
Optional conversion of HTML tables to Markdown pipe tables
Optional preservation of line breaks
Optional stripping of embedded media tags
Line, byte and character counts for input and output
Copy the Markdown or download it as a .md file
Partly server-processed.
Some steps run in your browser and some are handled by our server over HTTPS. Do not submit confidential material you are not permitted to share with a third party.
How to use HTML to Markdown Converter
1
Paste the HTML
Any fragment works — a full page, a single article body, or the markup you copied out of a rich text editor.
2
Set the options
Table conversion and line-break preservation are on by default. Turn on Strip tags to drop embedded iframes, video and audio rather than keeping them as raw HTML.
3
Read the Markdown
The output updates as you change the options. Scan it for anything the converter left as raw HTML — that is normally content Markdown has no equivalent for.
4
Copy or download
Copy it into your editor, or download it as a .md file ready to commit.
HTML to Markdown Converter examples
Real input and the output this tool produces for it.
Example inputs and the results HTML to Markdown Converter returns
Example
Input
Result
Heading
<h2>Getting started</h2>
## Getting started
Link
<a href="/docs">Read the docs</a>
[Read the docs](/docs)
List
<ul><li>One</li><li>Two</li></ul>
- One
- Two
Emphasis
<p>A <strong>bold</strong> claim</p>
A **bold** claim
Converting HTML to Markdown well
What converts cleanly and what does not
Markdown is a much smaller language than HTML, so conversion is lossy by definition. Knowing which side of the line an element falls on saves time reviewing the output.
How HTML elements survive conversion
HTML
Markdown
Result
<h1>–<h6>
# to ######
Clean
<a href>
[text](url)
Clean
<strong>, <em>
**bold**, *italic*
Clean
<ul>, <ol>
- and 1.
Clean
<blockquote>
>
Clean
<pre><code>
Fenced code block
Clean
<table>
Pipe table
Simple tables only — no merged cells
<div>, <span> with classes
—
Styling is dropped; the text survives
<iframe>, <video>
—
Kept as raw HTML, or removed with Strip tags
Inline style attributes
—
Always dropped — Markdown has no styling
Cleaning up copied content
Content pasted from a word processor or a CMS editor carries an enormous amount of markup that means nothing: nested spans, inline font declarations, empty paragraphs, class names from a design system you are not using.
Converting to Markdown is one of the most effective ways to strip all of that, because Markdown has nowhere to put it. What comes out the other side is the structure and the words. If you need HTML again afterwards, the Markdown to HTML converter will produce clean markup from the cleaned Markdown.
Markdown is not one standard
The original Markdown specification is small and vague, so every platform has extended it differently. Tables, strikethrough, task lists and fenced code blocks are all extensions rather than core Markdown.
GitHub Flavored Markdown is the most widely implemented variant and is what most tools mean by "Markdown" today. Output that renders correctly on GitHub may still need adjustment for a documentation platform with its own dialect — check tables and code fences first, as those differ most.
Review before you commit
A converter is a first pass, not a finished document. Two things are worth checking every time.
Relative links and images. A path like /images/logo.png was relative to the original site and will not resolve in a repository. Fix paths before committing.
Leftover raw HTML. Anything Markdown cannot express stays as HTML in the output. That is valid in most Markdown renderers but is worth a look — it is usually an embed you want to handle deliberately.
Table structure. Merged cells and nested tables do not exist in Markdown and will come out flattened.
Heading levels. Content lifted out of a page often starts at <h2>; you may want to promote everything by one level.
When people use this tool
Migrating a site to a static generator
Convert existing articles into the Markdown that Hugo, Jekyll, Astro or Next.js expect.
Writing documentation from a web page
Turn an existing HTML page into a Markdown file you can commit alongside the code.
Cleaning up pasted content
Strip the styling soup out of something copied from a word processor or CMS editor.
Preparing a README
Convert an HTML product page into the Markdown a repository expects.
Moving between CMS platforms
Markdown is a portable intermediate format between systems that share no export path.
Archiving an article
Markdown is plain text — readable in twenty years without a rendering engine.
More about HTML to Markdown Converter
Convert HTML to Markdown with support for all common HTML elements. Powered by Turndown library for accurate conversion. Handles headings, paragraphs, bold, italic, links, images, lists (ordered and unordered), code blocks, blockquotes, and more. Options to preserve line breaks, strip unsupported HTML tags, and convert HTML tables to markdown tables. Real-time conversion as you type with line and character count. Copy markdown output or download as .md file. Perfect for converting blog posts, documentation, web content to markdown format for GitHub, documentation sites, or content management systems. Works entirely in browser for privacy and speed.
HTML to Markdown Converter — frequently asked questions
The conversion itself runs in your browser and your HTML is not sent to us. The page does load the conversion library from a public CDN when it opens, which is a normal third-party request — but your pasted content is not part of it.
Simple ones do, into Markdown pipe tables, with the option enabled. Merged cells, nested tables and per-cell alignment have no Markdown equivalent and will be flattened.
They are dropped. Markdown describes structure, not presentation, so there is nowhere for them to go. The text and the structural elements survive.
Because Markdown cannot express it. Embeds, iframes, video and unusual elements are passed through as raw HTML, which most Markdown renderers accept. Turn on Strip tags to remove them instead.
Output aligned with GitHub Flavored Markdown, which is what most tools support. Check tables and code fences if your target platform uses a different dialect.
Yes — use the <a href="/tools/markdown-to-html">Markdown to HTML converter</a>. A round trip will not reproduce your original markup, though, since the styling and structure Markdown cannot carry were dropped on the way out.
The link text and target are preserved exactly, but a relative path that resolved on the original site will not resolve in a repository. Rewrite paths after converting.
No fixed limit. Very large documents are constrained by your browser's memory.
Paste this iframe into your own page to give your readers the working tool without sending them away. The embed carries a "Powered by TechBelievers" link and needs no API key.
Embed code
<iframe src="https://techbelievers.com/tools/html-to-markdown/embed?theme=light" width="100%" height="600px" title="HTML to Markdown Converter by TechBelievers" style="border:1px solid #e2e8f0;border-radius:0.5rem"></iframe>
We use cookies to enhance your browsing experience, analyze site traffic, and personalize content. By clicking "Accept", you consent to our use of cookies.
Read our cookie policy