Parse
A GitHub-flavoured Markdown parser reads headings, lists, tables, code, links and footnotes.
Text & markupFree Markdown converter
Turn Markdown into clean, standard HTML: a snippet to paste into a CMS or email, or a complete web page ready to open. It runs in your browser, so nothing is uploaded.
Highlights
This tool reads your Markdown the way GitHub does and writes it out as plain, semantic HTML: headings, paragraphs, lists, tables, code, links and images, with no extra classes or wrappers.
The preview in Step 1 shows exactly how it will look. Everything happens in this browser tab and nothing is uploaded.
To use this tool, start with Step 1 below. In Step 1: Add Markdown, paste or type Markdown, open a .md file, or load the example. In Step 2: Copy HTML, pick your options, then copy the HTML or download it as an .html file.
Paste or type Markdown, open a .md file, or load the example. The preview updates as you type.
or drop a file here. It stays on this device.
.md, .markdown, .mdown, .mkd or .txt · up to 10 MB
0 characters · 0 lines
Preview
Your formatted document will appear here.
Choose a snippet or a full page. The HTML updates as you change an option.
Options
0 characters · 0 lines
Markdown to HTML guide
Markdown is quick to write, but websites, email templates and many CMS fields want HTML. This tool turns one into the other with the same rules GitHub uses, and keeps the output clean enough to read and edit by hand.
The basics
Your Markdown is parsed into a document tree, the same way a Markdown renderer reads it, and each part of the tree is written out as the matching HTML element.
A GitHub-flavoured Markdown parser reads headings, lists, tables, code, links and footnotes.
Each part becomes its standard HTML element, with heading ids and table alignment added.
Keep it as a snippet, or wrap it in a full page with a title and optional styles.
Copy the HTML or download an .html file. The preview shows how it will look.
What carries over
What each piece of Markdown becomes.
| Markdown | HTML | Notes |
|---|---|---|
| # to ###### | <h1> to <h6> | With a GitHub-style id unless you switch ids off. |
| **bold**, *italic*, ~~strike~~ | <strong>, <em>, <del> | Nested formatting is kept. |
| - item, 1. item | <ul>, <ol>, <li> | Nested lists and your starting number are kept. |
| - [x] task | <input type="checkbox"> | Checked state carried over, disabled so it can't be ticked. |
| Pipe table | <table> with <thead> | Column alignment becomes align="left|center|right". |
| ```js fenced code | <pre><code class="language-js"> | Ready for Prism, highlight.js or Shiki. |
| [text](url),  | <a href>, <img alt> | Reference-style links and bare URLs too. |
| [^1] footnote | <sup> link + footnotes section | Linked both ways, at the end of the document. |
Use cases
Whenever Markdown has to end up somewhere that only takes HTML.
Paste into WordPress, Ghost, Webflow or Shopify's HTML editor.
Write a newsletter or announcement in Markdown, then drop it into an email template.
Turn a README or doc into a standalone page you can host anywhere.
Move Markdown docs into tools like Zendesk or Confluence that accept HTML.
Check exactly what HTML a piece of Markdown produces before you ship it.
Write descriptions in Markdown and paste HTML into a marketplace listing.
Set expectations
A few things Markdown doesn't carry into HTML by itself.
Code blocks get a language class, but colouring comes from your site's highlighter.
Snippets use your page's styles, so they may look different from the preview.
Maths, diagrams and other non-GitHub extensions are written as plain text.
Need it the other way round? HTML to Markdown turns web pages and HTML source back into clean Markdown.
Common questions
Quick answers about converting Markdown to HTML.
Start in Step 1: paste Markdown, open a .md file or press Load example. The HTML appears in Step 2 straight away. Choose a snippet or a full page, then copy the HTML or download it as an .html file.
A snippet is just the HTML for your content, starting with the first heading or paragraph. Use it to paste into a CMS, a blog editor, an email template or an existing page. A full page wraps it in <!doctype html>, <head> and <body> with a title taken from your first heading, so you can open the file straight in a browser or put it on a web server.
No. Your Markdown is turned into HTML right in your browser tab, so it stays on your device. Nothing is saved between visits.
Everything in GitHub-flavoured Markdown: headings, bold, italic, strikethrough, links (inline, reference-style and bare web addresses), images, ordered, bullet and task lists, tables with column alignment, fenced code blocks with a language, blockquotes, horizontal rules and footnotes.
No. The snippet is plain semantic HTML: <h2>, <p>, <ul>, <table>, <pre><code> and so on, so it picks up your site's own styles. The only classes are the standard ones for task lists, code languages (language-js) and the footnotes section. Styles are only added to a full page, and you can switch them off.
By default it's passed through unchanged, which is what Markdown is designed to do, so things like <kbd>, <sup> or a <details> block keep working. Untick HTML written in the Markdown to leave it out, for example when you're preparing content for a system that doesn't allow raw HTML.
Each heading gets an id made from its text, the same way GitHub does it, so ## Before the count becomes id="before-the-count". That lets you link straight to a section with #before-the-count or build a table of contents. Untick Heading ids if you don't want them.
Keep line breaks is on, so each line you typed stays on its own line, as it does in GitHub comments and notes apps. Turn it off in Step 1 for strict Markdown, where lines next to each other join into one paragraph.
The HTML matches your Markdown exactly, including any raw HTML or links it contains, so treat it like anything else you publish. If the Markdown came from someone else, untick HTML written in the Markdown so scripts or embeds in it aren't carried over.
It's unlimited, with no account needed. Markdown files can be up to 10 MB, and pasting is limited only by what your browser can hold.
Related converters
These tools also run in your browser, with no sign-up and nothing uploaded.