Markdown to HTML converter

Convert Markdown to clean HTML in your browser, with GitHub Flavored Markdown support. Nothing is uploaded.

About this converter

Markdown is what you write in; HTML is what a browser, an email client or a CMS actually needs. Most of the time a static site generator does this conversion invisibly, and the times you need to do it by hand are exactly the times no generator is involved: pasting into a CMS field that only takes HTML, building an email template, or checking what a fragment will actually render as.

This converter supports GitHub Flavored Markdown by default, which is the dialect most people mean when they say Markdown. That adds tables, strikethrough, task lists and automatic linking on top of the original specification. Turn it off for strict CommonMark if you are targeting a parser that does not support the extensions.

The line-break option is worth understanding, because it is the single biggest difference between Markdown implementations. In standard Markdown a single newline is not a line break - paragraphs are separated by blank lines, and a single newline is just whitespace. Chat applications and many note-taking tools break on every newline instead, which is why text that looked right in one tool collapses into a wall in another. Set it to match wherever your output is going.

You can emit either a bare fragment or a complete HTML document with doctype, charset and viewport. The fragment is what you want for pasting into a CMS; the full document is what you want for a file you will open directly.

One security note that matters: Markdown permits raw HTML, and this converter passes it through unchanged, as the specification requires. If the Markdown came from anywhere but your own keyboard, sanitise the output before rendering it - a script tag in the input becomes a script tag in the output.

The conversion runs entirely in your browser.

Frequently asked questions

Why did my single line breaks disappear?
Standard Markdown treats a single newline as whitespace and needs a blank line between paragraphs. Enable the line-break option to break on every newline instead.
Is the output sanitised?
No. Raw HTML in Markdown is passed through, as the specification requires. Sanitise before rendering anything you did not write yourself.
Which Markdown flavour is this?
GitHub Flavored Markdown by default - tables, strikethrough, task lists and autolinking. Switch GFM off for strict CommonMark.

Related converters