HTML to Markdown
Convert HTML to Markdown — web content into portable plain text.
How to use HTML to Markdown
- Paste the HTML — page source content, a CMS export or an email body.
- Read the Markdown output — headings, links, lists and code preserved in plain text.
- Expect presentation to vanish — classes and inline styles have no Markdown form, by design.
- Drop the .md into its new home — static site, wiki, notes app or repo.
What is HTML to Markdown?
An HTML to Markdown converter runs the publish step in reverse: <h2> becomes ##, anchors become [text](url), <ul> lists become hyphen lines, <pre><code> becomes fenced blocks — HTML content distilled into the plain-text format documentation lives in.
The migration direction matters: content trapped in HTML — old blog posts, CMS exports, web pages — needs to become Markdown to enter the modern text-file world: Git-versioned docs, static site generators, wikis, Obsidian/Notion knowledge bases. Converting by hand means retyping every link and list; the converter preserves them.
About the HTML to Markdown
Paste HTML — a fragment or a page's content — and get clean Markdown: structure preserved, presentation stripped, ready for any .md destination.
The migrations it powers: WordPress/legacy-CMS exports into Hugo, Jekyll or Astro content folders; web articles into your notes app in editable form (not a bookmark — the text itself); HTML documentation into Git-managed Markdown where diffs and pull requests work; and HTML emails or newsletters into reusable plain-text drafts.
What deliberately doesn't survive: styling (classes, inline CSS, fonts) — Markdown has no vocabulary for it, and shedding presentation is the point of the trip; complex layout (nested divs, floats) flattens to linear content; and HTML without Markdown equivalents (forms, iframes) either passes through as raw HTML or drops. Clean semantic input converts beautifully; div-soup converts to its content, which is usually what you wanted anyway.