HTML to Markdown Converter

Convert HTML to Markdown online — headings, bold, italic, links, lists and code become clean Markdown. Paste, convert, copy.

—

How it works

A tag-oriented converter: h1–h3 become # / ## / ##, <strong> and <b> become **bold**, <em> and <i> become *italic*, <code> becomes backticks, <a href> becomes [text](url), <li> becomes dash list items, <br> becomes a line break, block-level closing tags become paragraph breaks, and any remaining tags are stripped with entities decoded.

Examples

InputOutput
<h2>Title</h2>## Title
<a href='https://example.com'>link</a>[link](https://example.com)
<ul><li>a</li><li>b</li></ul>- a\n- b

Frequently Asked Questions

Which HTML tags are supported?

Headings h1–h3, bold/strong, italic/em, inline code, links, list items, line breaks and the common block containers (p, div, ul, ol, blockquote). Everything else — tables, images, scripts — is stripped to its text content.

How do I do this in Python?

For production pipelines use a real parser-based library: markdownify (pip install markdownify) converts HTML to Markdown in one call, and html2text is a solid alternative. This page is for quick one-off conversions without installing anything.

Is the conversion lossless?

No — Markdown has no equivalent for many HTML features (tables in basic Markdown, attributes, nested structure). The tool keeps the text and the constructs Markdown can express, and drops the rest by design.

Can it handle a full web page?

It will produce text, but pasting a whole page including <head> and navigation gives noisy output. For best results paste just the content fragment you want as Markdown.

Related Tools

JSON Formatter & ValidatorRandom Password Generator (Bulk)Unix Timestamp Converter (Epoch)CSV to JSON ConverterJSON to YAML ConverterMarkdown to HTML ConverterText to Unicode Converter (Code Points)MD5 Hash GeneratorHTML Encoder / Decoder (Entities)Base64URL Encoder / DecoderBase64 to PDF Converter