Convert HTML to Markdown
HTML to Markdown is for turning a document tree into source that a person can read and edit. Instead of preserving angle-bracket tags, the result uses familiar Markdown markers for basic headings, paragraphs, emphasis, links, lists, and simple code. That makes a page easier to move into a README, issue tracker, documentation repository, or version-controlled writing workflow. The conversion is a pure-code text transformation, so it works on the HTML file supplied rather than visiting a URL or reconstructing a complete website. It does not have the page's CSS, browser state, remote images, scripts, custom components, or site-specific Markdown plugin. Basic constructs have the clearest mapping; complex tables, layout wrappers, embedded widgets, and decorative navigation deserve a source review. Treat the result as an editable Markdown draft and keep the original HTML when exact rendering or later reconciliation matters.
Use this without the search next time. Prathom Workbench puts Prathom's tools in your toolbar.
Add to Chrome — freeDrop your HTML file here, or click to browse
Up to 50 MB. Deleted automatically after 30 minutes.
What it does
- Basic HTML headings, paragraphs, emphasis, links, lists, and code mapped to Markdown
- Readable source suitable for documentation and version-control review
- No live URL browsing, remote asset fetching, or script execution
- No watermark and no sign-up
How to use HTML to Markdown
- 1
Supply the HTML source
Upload the HTML file that contains the article or document. Include only the source and any inline content you expect to convert; a reference to a remote stylesheet, image, or widget does not make that dependency available to this file-only transformation.
- 2
Map the ordinary constructs
The converter translates recognizable structure into Markdown notation. Headings become hash prefixes, links retain their labels and destinations, list items receive markers, and emphasis or code becomes readable punctuation when the input uses straightforward HTML.
- 3
Edit and render the draft
Read the Markdown as source, then render it with the flavor used by your destination. Check tables, images, nested blocks, entities, and custom components because different Markdown engines support different extensions and do not promise identical output.
How it works
The pure-code converter parses the supplied HTML as a small document tree and emits Markdown tokens for structures that have a conventional textual equivalent. A heading becomes a line beginning with the appropriate number of hash characters. Paragraphs stay separated by blank lines. An anchor becomes a label and destination in Markdown link syntax, while strong or emphasized text is surrounded by the corresponding markers. Lists are emitted as list items, and preformatted content is kept apart from ordinary prose so code does not get mistaken for a paragraph.
The mapping is intentionally narrower than a browser. A browser combines HTML with CSS, JavaScript, fonts, image requests, layout calculations, and application state. None of those layers is needed to write basic Markdown source, and none is available to this file-only conversion. This prevents a remote asset or script from quietly changing the output, but it also means a widget that appears in a browser may have no useful Markdown equivalent. The output records what the HTML structure says, not everything the finished site happened to display.
Readable source versus faithful rendering
Markdown is valuable partly because its punctuation exposes the document's outline in a text editor. That benefit can disappear if a converter preserves every layout wrapper as noise. Navigation, footer links, tracking attributes, empty containers, and decorative spans should not crowd an article intended for a README. Still, removing content is a judgment call. A link label may matter, a caption may explain an image, and a table may carry the primary facts. Inspect the source around those boundaries rather than assuming that the largest block of HTML is the only meaningful one.
Images need special handling. Markdown can express an image URL and alternative text, but a reference is not an embedded asset. Relative paths can break when the file moves repositories, and remote URLs may be unacceptable to a private build. Copy required images through an explicit asset workflow, verify their alternative text, and do not infer that a successful Markdown conversion made the document self-contained. The same discipline applies to links: retain destinations when they are useful, then check whether their paths still make sense in the new project.
Choose HTML to Markdown when the next editor wants source control and human-readable structure. Choose HTML to TXT for indexing or plain-data exchange, and HTML to PDF when the visual page needs fixed layout. The Markdown file is a clean starting point, but its final quality comes from rendering and reviewing it with the destination's actual parser.
Examples
A knowledge-base article moved into a repository
The result is easier to review in a pull request than a page full of nested div elements. The links remain useful source data, while the repository owner can now choose its own theme, anchor behavior, and navigation instead of carrying the old site's presentation wrappers forward.
A small reference page cleaned for a README
Code and table conversion should be inspected rather than accepted on appearance alone. Markdown flavors disagree about tables and fence details, so the output is a useful starting source, not a promise that every renderer will reproduce the original browser layout.
Frequently asked questions
Does HTML to Markdown copy the design of my website?
No. Markdown is an authoring notation, not a record of CSS, responsive breakpoints, font choices, menus, animations, or component state. The converter focuses on basic content structure and writes readable source for headings, paragraphs, emphasis, links, lists, and code where those mappings are clear. Recreate the destination theme separately, and keep the HTML if the original presentation is part of the required record.
Are images, scripts, and external stylesheets fetched?
No. This is a pure-code transformation of the uploaded HTML and does not browse a live page or execute its scripts. An image reference such as a relative path can be represented as Markdown source, but the image file itself is not downloaded or verified. Remote fonts, CSS, iframe content, and client-generated text are likewise outside the input. Review every asset reference before publishing the Markdown somewhere else.
Will complex HTML tables and custom components convert perfectly?
They should be treated as review points. Basic rows and cells can become a readable pipe table or another simple representation, but merged cells, nested markup, layout tables, and custom web components do not have one universal Markdown equivalent. A callout implemented by a site plugin may become ordinary text or an unsupported marker. Compare the generated source with the original and rewrite important structures for the Markdown flavor you actually use.
Which Markdown flavor does the output require?
The safest expectation is basic Markdown rather than every extension offered by GitHub, a static site generator, or a documentation platform. Common headings, emphasis, links, lists, and code travel well, while task lists, admonitions, automatic anchors, and special directives are ecosystem-specific. Render the file in its final destination, because valid source in one flavor can be literal punctuation or a different structure in another.