Why convert a web page to Markdown
Markdown is plain text with just enough structure: headings, lists, links, emphasis and code. It is the format of README files, static site generators, note apps like Obsidian and Notion, and it is the most token-efficient way to give a web page to an AI model. Raw HTML is mostly markup; the same content as Markdown is often a fraction of the size and much easier to read.
Common uses:
- Feeding pages to ChatGPT, Claude or your own LLM pipeline without menus, cookie banners and tracking scripts eating the context window.
- Saving articles to a notes app in a clean, durable format.
- Migrating content from an old CMS into a Markdown-based site.
- Quoting documentation in an issue or pull request.
What is kept and what is dropped
The converter looks for the page's main content first: the <main> element, or a single <article>. If there is none, it uses the whole body. Inside that, it keeps headings, paragraphs, bulleted and numbered lists (including nested ones), links, images with alt text, bold, italic, strikethrough, inline code, fenced code blocks with their language, blockquotes and tables.
It drops what is not content: scripts, styles, navigation, page headers and footers, sidebars, forms, buttons, SVG icons, iframes and anything hidden. Relative links and image sources are made absolute, so the Markdown still works when moved somewhere else.
Limits
Pages that build their content in the browser with JavaScript may convert to very little, because the converter reads the HTML the server sends. Very long pages are cut at about 300,000 characters. If you already have HTML rather than a URL, paste it into the HTML to Markdown converter. For a quick look at a page's structure before converting, the heading analyzer shows its outline.