How do you use this tool?
- Drop an HTML file or paste the source. One file per run, and no web address.
- Turn the YAML header on or off if you want.
- Click Convert to Markdown, then copy the source or download the .md file.
Why convert HTML to Markdown?
HTML is the source format of the web, and very often the form in which you find notes: an email newsletter you can search only as HTML source; a note backup from Evernote or OneNote; a scraped article; a CMS post export. Markdown is the format in which you keep that text over time, diffable, plain text, readable in an editor, and understood by Obsidian and Logseq.
This tool takes an HTML file or pasted source, not a web address. It writes GitHub Flavored Markdown with headings from the page body, lists, simple tables and the inline marks Markdown can carry. CSS layout and scripts are not run.
How does the conversion work technically?
The source is read in the browser, without building the page the way a
tab would and without running scripts. script, style, noscript,
iframe, stylesheet links, object and embed are always removed.
Attributes that start with on are removed. So is javascript: in
href or src. Ordinary links and image addresses stay.
Headings are h1 through h6 from the body, not the document title in
head. Paragraphs, lists and links are converted. <em> becomes
italic. Simple tables become pipe tables. A table with no header gets
an empty header row above the data rows. colspan and rowspan produce
no hint. The result can come out crooked, so check it.
Images become references. The reference stays, and the image file is not embedded in the Markdown. A renderer that shows the Markdown later can load the image address. A switch puts a YAML header in front, on by default. Conversion starts with the button. You then see Markdown source in a code block, not the rendered page. Copy it or download one .md file.
What are typical use cases?
- Archive email newsletters. Newsletters in HTML format come into your Obsidian vault as Markdown.
- Prepare web content for AI prompts. A long article becomes Markdown that fits inside your Claude or GPT prompt.
- Note migration from Evernote / OneNote. HTML note exports land as
clean
.mdfiles in your new note system. - Blog migration to Hugo / Astro. Existing HTML posts become Markdown posts with frontmatter that static-site generators understand.
- Wiki content from Confluence exports. HTML exports from Confluence/SharePoint become Markdown pages for Notion alternatives.
What stays: what doesn’t?
Still there: headings h1 through h6 from the body, paragraphs,
lists, links with their text, simple tables, bold and italic,
inline code, quotes, image references with the original address.
Always removed: script, style, noscript, iframe, stylesheet
links, object, embed, on attributes and javascript: in href or
src. That describes the cleanup.
Not one to one: tables with colspan or rowspan, and no hint
block. CSS layout, the document title, and content that only a script
would create. A language hint on code blocks is not promised.
How does the tool keep my HTML private?
An HTML export from a notes app, or a newsletter, can hold more than you want to pass on. The file or pasted source is converted locally in the browser and is not uploaded. None of it is stored on someone else’s server for this conversion.
Which related converters exist?
This tool is part of the Markdown converter family:
- DOCX to Markdown, Word documents with heading structure and lists.
- PDF to Markdown, including scanned PDFs via OCR.
- CSV to Markdown, also TSV, with comma, semicolon and tab.
- XLSX to Markdown, Excel including XLS and ODS, multi-sheet support.