How to use the HTML to Markdown Converter
- Paste HTML source, open an .html file, or copy content from a web page or document and paste it into the left box, where it arrives as HTML.
- Read the Markdown on the right. Switch to HTML preview to see the input as a browser would show it.
- Choose a heading style, bullet marker, code block style, emphasis characters and link style.
- Click Copy Markdown or download the result as a .md file.
Features
- Paste formatted content from web pages and documents directly
- ATX or Setext headings, -, * or + bullets, fenced or indented code
- Inline or reference-style links
- GitHub tables with column alignment, strikethrough and task lists
- Scripts, styles and form controls are left out of the result
- Sandboxed preview of the source HTML
Why convert HTML to Markdown?
Markdown is easier to read, edit and keep under version control than HTML. People convert HTML when they move a blog from a database-driven CMS to a static-site generator, bring web documentation into a Git repository, save articles into note apps such as Obsidian, or turn an old help page into a README. Rewriting every heading and link by hand is slow and error-prone; a converter does it in one step and lets you spend your time on the content.
How HTML elements map to Markdown
| HTML | Markdown |
|---|---|
<h1> … <h6> | # … ###### (or underlined with Setext) |
<strong>, <b> | **bold** |
<em>, <i> | _italic_ |
<a href> | [text](url) |
<img> |  |
<ul>, <ol> | - item, 1. item |
<pre><code> | Fenced or indented code block |
<blockquote> | > quote |
<table> | Pipe table (GitHub style) |
<del>, <s> | ~~text~~ |
Choosing a style
Markdown often allows more than one way to write the same thing, and teams usually standardize on one. ATX headings (# Title) work for all six levels and are the most common. Setext headings underline the text with === or --- and exist only for the first two levels, so deeper headings still use hashes. The bullet marker is purely a matter of taste, as long as you use one consistently. Fenced code blocks are clearer than indented ones and can carry a language name for syntax highlighting; the converter picks it up from classes such as language-bash. Reference links move long URLs to the end of the document, which keeps paragraphs readable in plain text.
What Markdown cannot express
Markdown describes structure, not presentation. Colors, fonts, column layouts, CSS classes, forms and embedded widgets have no Markdown equivalent, so only their text is kept, and scripts and styles are removed entirely. Tables with merged cells (colspan or rowspan) are flattened, so check them after converting.
Tips for a clean result
- Copy only the main article rather than the whole page, so menus, cookie banners and footers do not end up in your Markdown.
- Backslashes before characters such as
*,_or#are intentional. They stop those characters being read as formatting when the Markdown is rendered. - Relative image and link URLs are kept as they are, so update them if the content is moving to a new site.
- To check the result, paste it into the Markdown to HTML converter and compare the preview with the original page.
Frequently asked questions
Can I paste content copied from a web page?
Yes. When you copy from a browser or a word processor, the clipboard also holds the formatted HTML, and the tool uses it so headings, links, lists and tables survive. Untick “Paste copied web content as HTML” to paste plain text instead.
Why do some characters have backslashes in front of them?
Characters like *, _ and # have a meaning in Markdown. A backslash marks them as literal text, so “5 * 3” is not turned into italics when the Markdown is rendered.
What happens to images?
Each image becomes , keeping its alt text and title. The image files themselves are not downloaded, and relative URLs stay relative.
Are tables supported?
Yes, with the GitHub extras option ticked. Tables become pipe tables with alignment taken from the header cells. Merged cells cannot be represented in Markdown, so those tables are flattened.
Is my content uploaded anywhere?
No. The conversion runs in your browser, and the HTML preview is shown in a sandboxed frame with scripts disabled.