Markdown to HTML Converter Online
Convert Markdown to HTML instantly. Preview rendered output side by side.
When a Markdown to HTML converter is the right tool
Notes, README fragments, and comments are often easier to write in Markdown and easier to paste elsewhere as HTML. This page is for that direction: paste Markdown on the left, and HTML appears on the right as you type. You can inspect the source, switch to a rendered preview, and copy the HTML.
The converter is a compact, line-oriented rewriter, not a full CommonMark or GFM parser. If you need tables or a closer GitHub-style preview, use Markdown Preview instead.
Use cases
Turning a short article into HTML
Headings, bold and italic, inline code, lists, fenced blocks, a one-line blockquote, and [text](url) links usually come out as the tags you would expect. Load Sample pastes a short document that includes those constructs if you want to try that first.
Copying HTML for a CMS that does not accept Markdown
Keep the output on the Source tab and use Copy. The Preview tab is for a visual check of the same generated markup, not a second conversion.
Checking how a fence or a list will look
A closed ```javascript fence becomes a <pre><code class="language-javascript"> block with the contents escaped. An unclosed fence at the end of the file is still emitted as a <pre>, but without the language class.
How conversion works
The input is split into lines. Fenced code is collected until a closing ```. Headings need a space after the hashes. Unordered lists start with -, *, or +; ordered lists start with digits and a period. A blockquote line must begin with > (greater-than and a space) and is a single paragraph. Horizontal rules are three or more -, *, or _ characters on a line. Other non-empty lines become paragraphs. Inline markup is applied after the text is escaped. Nested lists are not parsed: an indented item becomes a paragraph.
# Hello, World!
This is a **bold** and *italic* example.
- Item one
- Item two
<h1>Hello, World!</h1>
<p>This is a <strong>bold</strong> and <em>italic</em> example.</p>
<ul>
<li>Item one</li>
<li>Item two</li>
</ul>That is the usual shape for a simple fragment. A language fence and a link in the built-in sample follow the same rules.

<p>!<a href="https://example.com/a.png">alt</a></p>Links are rewritten before images, so the usual Markdown image form does not survive. A GFM table similarly stays as paragraphs of pipes.
What this tool does not do
It does not convert tables, images, task lists, or autolinked URLs, and it does not parse nested lists. Underscore emphasis can touch identifiers. Nothing is sent to a server. To go the other way, use HTML to Markdown.
How to use Markdown to HTML
- Paste your Markdown, or use Load Sample for a short demo document.
- Review the HTML on the Source tab, or switch to Preview to see it rendered.
- Copy the HTML when it looks right, or Clear to start over.
Frequently asked questions
Is this the same renderer as Markdown Preview?
No. This page uses a small, built-in converter rather than the marked library. It handles headings, emphasis, inline code, fenced code, lists, horizontal rules, single-line blockquotes, and links. It does not implement GitHub Flavored Markdown tables, task lists, or autolinked URLs.
Are tables and images converted?
Tables are not. Each table row becomes an ordinary paragraph that still contains the pipe characters. Image syntax is also not turned into an <img> tag: because links are rewritten first,  becomes a paragraph that starts with ! and a link. Use Markdown Preview if you need GFM tables, or write an HTML image tag after you copy.
Is the HTML escaped? Can I paste raw HTML in the Markdown?
The converter escapes &, <, and > in the text before it adds its own tags, so a pasted <script> appears as visible text rather than a tag. The Preview tab still renders the generated HTML, which is only the markup this page inserted.
Why did underscores in a name become italic?
Underscores are treated as emphasis markers, the same as asterisks. A token such as foo_bar_baz can be rewritten as foo, then italic bar, then baz. Use asterisks for emphasis, or avoid unmatched underscores in identifiers if that rewrite would be a problem.
Is my Markdown sent to a server?
No. Conversion runs in your browser as you type. Closing the tab discards what you pasted. Do not paste documents that contain secrets if you would not be comfortable with them sitting in memory on this device.
Is there a file size limit?
There is no server-imposed limit, because nothing is uploaded. A few thousand lines is comfortable. A very large document can make the tab feel slow; in that case, convert a smaller excerpt.
Related tools and guides
References
- CommonMark and GitHub Flavored Markdown describe a fuller Markdown dialect than this converter implements. Tables, images, and autolinks are not produced here.
- For a GFM preview that uses marked, see the Markdown Preview page. That renderer is a different implementation.