Upload an .html or .htm file and our self-hosted Parsyra service returns a clean Markdown document with headings, links, lists, code and tables preserved where Markdown can represent them. The source is processed in temporary storage and deleted immediately after conversion.
Free accounts handle .html and .htm files up to 20MB, three queued at once; Pro lifts that ceiling to 100MB and thirty.
A saved web page is mostly not prose — it is stylesheets, analytics snippets, embedded players and layout scaffolding. Before the HTML to Markdown pass begins, Parsyra deletes every head, script, style, noscript and iframe node, which is why a full page save yields readable text instead of CSS rules and JavaScript source pasted in as paragraphs.
Four stages separate a messy saved page from a tidy .md file. The self-hosted Parsyra service receives the upload, removes non-content noise, extracts the document structure and returns the Markdown result before deleting the temporary source.
Drag in an .html or .htm file, or click to pick one. The file is uploaded over HTTPS, processed temporarily and deleted immediately after conversion.
head, script, style, noscript and iframe subtrees are removed outright. Skipping this is what makes naive HTML to Markdown attempts spill minified JavaScript and font declarations into the body text as if they were prose.
Parsyra maps the remaining HTML structure to Markdown: headings, paragraphs, links, lists, code and tables become readable plain text while presentation-only layout is simplified.
The finished HTML to Markdown result appears in a preview pane you can scroll before committing to anything. Save the .md file, or select the text and drop it straight into Obsidian, a pull request description, or a retrieval index.
Specifics, not slogans — here is the behaviour you can count on, plus the one place where HTML to Markdown genuinely cannot help you.
The Parsyra engine preserves common HTML structures as Markdown tables, task lists and readable inline formatting where the target syntax supports them. Complex layout and attributes are simplified rather than copied as raw HTML noise.
The HTML file is uploaded only for conversion. Our self-hosted Parsyra service processes it in temporary storage, deletes the source immediately afterward and does not add it to your account.
div, span, custom web components and inline style attributes have no counterpart in the target syntax, so HTML to Markdown reduces them to the text they wrap. Layout evaporates while headings and code fences stay, which is precisely the shape a chunker or a retrieval index wants to be handed.
The conversion removes common non-content nodes such as head, script, style, noscript and iframe before writing Markdown. Drop in a browser's own Save Page As output and you get the article rather than a wall of analytics tags and inlined CSS.
Nothing is metered on the free tier beyond size: one HTML to Markdown job accepts a file up to 20MB, and three can run together. Pro widens that to 100MB per file and thirty in a batch, which matters when you are draining an entire archived site rather than a single article.
Here is the honest caveat: a href of /about or an image src of img/diagram.png may resolve nowhere once the .md file lives in your notes. Prefix the origin with one search-and-replace, or start from a live address instead — the URL to Markdown route fetches the public page through a proxy and converts the returned HTML locally.
Engine behaviour, edge cases and limits, answered plainly.
Drop an .html or .htm file into the box above. Parsing starts immediately, the preview fills in, and a download button gives you the .md file. There is nothing to install and no account to create.
This page uses our self-hosted service running Parsyra library. It extracts HTML structure and writes the result as Markdown; complex layout and styling are simplified because Markdown cannot represent them fully.
Relative URLs pass through untouched. An anchor written as /pricing stays /pricing, and img/diagram.png stays img/diagram.png, both of which only meant something relative to the page's original address. Two fixes work: convert from the live address so paths resolve against the real origin, or run one search-and-replace over the finished text to prepend the base URL.
They have no equivalent in the output syntax, so they collapse to whatever text they wrap. The same is true of inline style attributes and of custom web components. Structural markup vanishes; the words inside it survive.
No, and this is a common failure mode in other HTML to Markdown tools. head, script, style, noscript and iframe nodes are deleted before conversion begins, so stylesheet rules, tracking snippets and embedded players never reach the text stream. Body-only fragments are unaffected by the same cleanup.
Yes, thanks to the GFM plugin: tables become pipe-delimited rows with a dash separator, checkboxes become - [ ] and - [x], and struck text becomes ~~struck text~~. Anything relying on colspan or nested tables will flatten, because the target syntax simply has no notation for it.
Yes, on a sibling page. Browsers cannot fetch cross-origin documents, so a small server proxy retrieves the HTML, hands it back, and the conversion still runs in your browser. It also sidesteps the relative-path problem, since links resolve against the site they came from. See the URL to Markdown converter.
A single HTML to Markdown job can take a file up to 20MB on the free tier and 100MB on Pro. Batches run three files at a time free, or thirty on Pro. Very large saved pages spend most of their weight on embedded images and inline CSS, which the cleanup pass removes before the Markdown is written.
The saved HTML file is uploaded over HTTPS to our self-hosted Parsyra service, processed in temporary storage and deleted immediately after conversion. The live-address workflow is different: its proxy fetches the public page on your behalf, then the returned HTML is converted locally.
The online service is operated independently by parsyra.com and uses Microsoft's open-source Python Parsyra library on the server. Microsoft does not operate, endorse or host this service.
Related tools: fetch a live page with URL to Markdown, lift a copied table with Table to Markdown, or unpack a .docx with Word to Markdown — then polish the result in the Markdown online editor.
One file, one drop, one download. ATX headings, fenced code, GFM tables — and an HTML to Markdown pass that leaves stylesheets and tracking scripts on the floor where they belong.
Sign in to your account
Don't have an account?Sign Up
Focused converter
Optional: choose a dedicated format page.
Markdown Preview
Preview appears after conversion.
# Project Overview
Converted Markdown keeps headings, lists, tables, links, and readable structure ready for AI workflows.
## Supported Formats
PDF · DOCX · PPT · Excel · HTML · CSV · JSON · URL