ConvertOwl

HTML to Markdown — Convert Web Content to Plain Markdown

Convert HTML documents, website content, or CMS exports to clean Markdown format. Useful for migrating content from one platform to another, archiving web pages as plain text, or extracting content for editing in a Markdown editor. The turndown library converts headings, paragraphs, lists, links, images, code blocks, and tables while stripping unnecessary HTML tags.

How to use this tool

  1. Paste your HTML

    Paste HTML source code, a webpage section, an email template, or CMS-exported HTML. Full HTML documents and HTML fragments (without doctype) both work.

  2. Click Convert

    turndown parses the HTML and converts semantic elements to Markdown: <h1> → # Heading, <strong> → **bold**, <a href="..."> → [text](url), <ul><li> → - item, <code> → `code`.

  3. Review the Markdown

    Complex HTML layouts (multi-column, nested tables) may not convert perfectly — review the output and adjust manually. Simple content like articles, blog posts, and documentation converts cleanly.

  4. Copy or download

    Copy the Markdown to paste into a Markdown editor like Obsidian, Notion, or Bear, or download as a .md file.

Frequently Asked Questions

What HTML elements are supported?

All standard document elements: headings (h1–h6), paragraphs, bold/italic/strikethrough, links (with title attributes), images, ordered and unordered lists, nested lists, blockquotes, inline code, fenced code blocks, horizontal rules, and tables. Layout elements like div and span are treated as block/inline containers and their content is extracted without the tags.

Tables are not converting correctly. Why?

Markdown table support requires each row to have the same number of columns, and nested tables are not expressible in Markdown. If the source HTML has merged cells (colspan/rowspan), complex nested tables, or inconsistent column counts, conversion will be imperfect. Simple data tables with consistent columns convert cleanly.

Can I convert a full webpage to Markdown?

Yes, but the output will include navigation menus, footers, sidebars, and other non-content HTML that you'll need to remove manually. For extracting just the article content from a webpage, it's better to copy the main content area's HTML (inspect element → copy outer HTML of the article or main element) rather than the full page source.

How are inline styles converted to Markdown?

CSS inline styles (font-weight: bold, font-style: italic) are not converted to Markdown equivalents — Markdown doesn't have a concept of arbitrary CSS. Only semantic HTML tags (<strong>, <em>, <b>, <i>) are reliably converted. For CMS-exported HTML that uses classes instead of semantic tags for formatting, the styling information is lost.

Why does some content come through as raw HTML in the Markdown?

turndown converts semantic HTML elements. Non-semantic or unknown elements (custom web components, script/style tags, SVG elements) are kept as raw HTML in the Markdown output (which is valid — Markdown allows raw HTML). If you want truly plain text without any HTML, remove the raw HTML blocks manually after conversion.

Something not working? Report a bug