Markdown to HTML Converter

Write or paste Markdown and get clean HTML instantly — with a sanitised live preview, GitHub-flavoured tables, task lists and fenced code blocks.

Runs in your browser
0 words · 0 lines

The rendered preview appears here.

0 B of HTML

The preview is always sanitised with DOMPurify. Untick “Sanitise HTML output” only if you trust the Markdown and need raw embedded HTML such as <iframe> or inline event handlers.

Your data never leaves your computer. All processing happens 100% locally in your browser.

How to use the Markdown to HTML

  1. Type, paste or open a .md file in the Markdown pane — or click Sample to see every supported element.
  2. Check the rendered result in Preview, then switch to HTML to see the generated markup.
  3. Toggle options such as GitHub-flavoured Markdown, line breaks, heading IDs or a full HTML document.
  4. Click Copy HTML to paste it into your CMS or template, or Download to save an .html file.

What is a Markdown to HTML converter?

Markdown is a lightweight plain-text syntax for formatting: # for headings, **bold**, - for lists and backticks for code. Browsers can't display it directly, so it has to be turned into HTML first. This converter does that in your browser using the marked parser and shows the result side by side, which makes it handy for README files, documentation, blog posts written in Markdown, and content you need to paste into a CMS that only accepts HTML.

Supported syntax

MarkdownHTML output
## Setup<h2 id="setup">Setup</h2>
**bold**, _italic_<strong>, <em>
[link](/docs)<a href="/docs">link</a>
- [x] Done (GFM)<li><input type="checkbox" checked disabled> Done</li>
~~old~~ (GFM)<del>old</del>
```js fence<pre><code class="language-js">

GitHub-flavoured Markdown (GFM) adds pipe tables with column alignment (|:---|:---:|---:|), task lists, strikethrough and automatic linking of bare URLs. Fenced code blocks keep their language as a language-* class, which syntax highlighters such as Prism or highlight.js pick up.

Is the generated HTML safe?

Markdown allows raw HTML, so a document can contain <script> tags, onerror= handlers or javascript: links. The preview is always cleaned with DOMPurify before it is shown, and by default the HTML output is sanitised the same way. If you are converting user-submitted Markdown on your own site, sanitise on the server too — client-side cleaning only protects this page.

Options explained

  • Line breaks become <br> — standard Markdown joins lines within a paragraph; GitHub comments instead treat every newline as a line break. Enable this to match comment-style behaviour.
  • Heading IDs — adds GitHub-style id attributes (lowercase, hyphenated, de-duplicated with -1, -2) so you can link to #installation or build a table of contents.
  • Full HTML document — wraps the output in <!doctype html>, <head> and <body>, using the first heading as the <title>.

Tips

Leave a blank line before lists, tables and fenced code — many “why isn't this rendering?” problems come from a missing blank line. Need to go the other way? Use the HTML to Markdown converter, and tidy the result with the HTML Formatter.

Tools that pair well with the Markdown to HTML

  • HTML Entity Encoder — Escape < > & " so text is safe to show in HTML, convert accents and symbols to named or numeric entities, or decode entity-filled HTML back to plain text.
  • Word Counter — Paste or type your text to count words and characters live — plus reading and speaking time, keyword density and length checks for SEO titles, meta descriptions and social posts.
  • Diff Checker — Paste an original and a changed version to see added, removed and modified lines side by side — with the exact words that changed highlighted inside each line.
  • CSS Formatter — Turn a minified stylesheet into readable CSS with one property per line and properly nested @media blocks.

Frequently asked questions

Is my Markdown uploaded anywhere?
No. Conversion runs entirely in your browser with JavaScript; nothing is sent to a server. Your last input is only remembered in your own browser’s local storage.
Does it support GitHub-flavoured Markdown?
Yes. With the GFM option on (the default) it renders pipe tables, task lists (- [ ] / - [x]), strikethrough with ~~ and auto-linked URLs, following the GFM spec used on GitHub.
Why does my line break disappear?
In standard Markdown a single newline inside a paragraph is treated as a space. End the line with two spaces or a backslash to force a <br>, or enable the “Line breaks become <br>” option.
Can I use raw HTML inside Markdown?
Yes, Markdown passes inline HTML through. Safe tags such as <details>, <kbd> or <sup> are kept; scripts, event handlers and javascript: URLs are removed unless you switch off sanitising of the output.
Does it add syntax highlighting to code blocks?
It outputs <pre><code class="language-xyz"> for fenced blocks with a language, which is the convention highlight.js and Prism expect. Add one of those libraries to your page to colour the code.

Related tools