Skip to content

Convert

Site to Markdown

Site to Markdown

Beta

Paste a web page's HTML or upload a saved .html file and get clean Markdown, with navigation, footers and scripts removed. This page does not fetch URLs.

Use via API
  • Free, no sign-up
  • REST + MCP
  • Updated
  • Reviewed by Olgun Ozoktas

Paste a saved page's HTML, or upload the .html file. This page does not fetch URLs.

Used only to make relative links and images absolute. Nothing is fetched.

Page HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Markdown

Paste a page's HTML to see its Markdown

How to get a page's HTML

View Source

Open the page and press Ctrl+U (Windows, Linux) or Option+Cmd+U (Chrome and Safari on a Mac; Cmd+U in Firefox). Select all, copy, and paste it here.

Save Page As

Press Ctrl+S or Cmd+S and save the page as HTML. Then use Upload above to open the saved .html file; its image folder is not needed.

Built with JavaScript?

If View Source holds little text, open the developer tools (F12, or Option+Cmd+I on a Mac), right-click the <html> element in Elements, and choose Copy, then Copy outerHTML.

How to Convert a Web Page's HTML to Markdown

  1. Get the Page's HTML

    Open the page in your browser. Use View Source (Ctrl+U, or Option+Cmd+U on a Mac) and copy everything, or save the page with Ctrl+S or Cmd+S as an .html file.
  2. Paste or Upload It

    Paste the HTML into the Page HTML panel, or upload or drop the saved .html file. The Markdown appears as soon as the HTML is there.
  3. Add the Page URL for Absolute Links

    Optionally type the page's address into Page URL. Relative links and image paths are then written as full https:// addresses. Nothing is fetched.
  4. Check, Copy or Download

    Read the Markdown or switch to Preview, check the word, line and character counts, then copy it or download it as a .md file.

Common Use Cases

Feeding a Page to an AI Model

Turn a documentation page or an article into Markdown for a prompt, a RAG index or a knowledge base. The navigation, scripts and footer that only cost tokens are gone, and the headings, lists, code and tables stay.

Archiving an Article

Keep a blog post, a tutorial or a research article as a plain-text .md file that version control, a notes app and any text editor can read.

Moving Content to a Markdown Site

Move pages from a CMS to a Markdown-based site such as Hugo, Jekyll or Astro: save each page, convert it, and paste the result into a content file.

Writing Docs from an Existing Page

Lift the content of an internal wiki or a product page into a README or a docs folder without retyping its headings, lists and tables.

Why Use Site to Markdown?

Markdown is the format documentation sites, note apps, Git repositories and AI tools read best, and a web page's HTML is mostly not content: navigation, scripts, styles and footers. Site to Markdown keeps the article and drops the rest, turns headings, lists, code and tables into Markdown, and can make every link absolute. It works on HTML you paste or a page you saved, because this page does not fetch URLs.

Site to Markdown turns the HTML of a whole web page into clean Markdown. Paste the page's HTML, or upload the .html file your browser saved, and the converter keeps the content and drops the rest: the head, scripts, styles, iframes, SVG, navigation and footers, and anything marked hidden. When the page has a <main> or <article> element, only that part is converted. This page does not fetch URLs; it works on HTML you already have.

Headings, paragraphs, bold and italic text, strikethrough, links, images, ordered and unordered lists, blockquotes, fenced code blocks with their language, and tables come out as standard Markdown. An optional Page URL resolves relative links and image paths into absolute ones, so the Markdown still works outside the site. The result shows its word, line and character counts, can be previewed as rendered text, and can be copied or downloaded as a .md file. On this page, the conversion runs in your browser.

For a snippet rather than a page, the HTML to Markdown converter converts exactly the HTML you give it. To go the other way, Markdown to HTML renders Markdown back into HTML, and the Markdown Previewer shows how a document renders while you edit it. For tables, HTML Table to JSON pulls tabular data out of a page as JSON.

How it compares

Reader services and scraping APIs fetch a URL for you, which needs a key, a quota or a server that can reach the page. Browser extensions convert the page you are on, but they need installing. This page takes the HTML you already have, so it also works for a page behind a login that you saved yourself, with no extension and no account.

Libraries such as Turndown or a Pandoc command do the same conversion in code, with more options and some setup. When you want that from a script here, the same converter is on the FindUtils REST API and MCP server; like this page, it does not fetch the URL.

Tips for Better Conversions

  • Fill in Page URL when the page links with relative paths; otherwise a link such as /pricing/ stays relative in the Markdown and breaks outside the site.
  • A page that renders with JavaScript may show little in View Source. Copy the outerHTML of the <html> element from the developer tools instead, after the page has loaded.
  • Pages with a <main> or <article> element convert most cleanly, because only that part is kept. A page without one is converted from the whole body.
  • For a single block you already picked out, such as a table or a paragraph, use HTML to Markdown: it converts exactly what you give it.
  • Read the Preview before you paste the Markdown elsewhere: a table with merged cells or a layout table can need a hand edit.

Frequently Asked Questions

Does Site to Markdown fetch a URL?

No. This page converts HTML you paste or upload, and it does not fetch URLs. The Page URL field is used only to turn relative links and image paths into absolute ones. To convert a live page, open it in your browser, get its HTML with View Source or Save Page As, and paste or upload that.

How is Site to Markdown different from HTML to Markdown?

Site to Markdown takes a whole saved page and keeps its main content: it drops navigation, footers, scripts, styles, iframes and SVG, and starts from the page's <main>, <article> or role="main" element when it has one. HTML to Markdown converts the HTML you give it as it is, which suits a snippet or a fragment you already picked out.

How do I get the HTML of a web page?

Use View Source or Save Page As. For View Source, press Ctrl+U on Windows or Linux, or Option+Cmd+U in Chrome and Safari on a Mac (Cmd+U in Firefox), then select all, copy and paste here. For Save Page As, press Ctrl+S or Cmd+S, save the page as HTML, and upload the saved .html file here.

What does the converter remove from a page?

It removes the head, scripts, styles, noscript blocks, iframes, SVG, navigation and footers, and any element marked hidden or aria-hidden="true". When the page has a <main>, <article> or role="main" element, only that element is converted, so sidebars and headers outside it are left out; without one, the whole body is converted.

What Markdown does it produce?

Headings become # to ######, paragraphs are separated by blank lines, bold, italic and strikethrough become **, * and ~~, links and images become [text](url) and ![alt](src), lists keep their numbering, blockquotes get >, code blocks are fenced with their language when the class names one, and tables become pipe tables with the first row as the header.

Why are the links in my Markdown relative?

A saved page often links with paths such as /blog/next/ or ../img/a.png. Type the page's address into Page URL and every relative link and image path is resolved against it, so /blog/next/ becomes https://example.com/blog/next/. Nothing is fetched from that address.

Why is the Markdown empty or shorter than the page?

The page probably builds its text with JavaScript, so the HTML from View Source holds little more than a script tag. Open the developer tools (F12, or Option+Cmd+I on a Mac), right-click the <html> element in the Elements panel, choose Copy, then Copy outerHTML, and paste that. HTML that holds only navigation and scripts gives the error "No readable content found in the HTML".

Is the HTML I paste uploaded?

Not on this page. The HTML is converted in your browser, and the page sends no request with it. The REST API and MCP tool are a separate path: a call sends the input you include to FindUtils over HTTPS, where it is processed and the result returned. FindUtils does not store that input, and logs the request without its content.

Can I run the same conversion from a script or an AI agent?

Yes. The same converter is on the FindUtils API as site-to-markdown on REST and site_to_markdown on MCP. Send the page HTML as html and, if you want absolute links, the page URL as url; it returns the Markdown with word, line and character counts. The API does not fetch the URL either.

Is there a size limit?

Yes. The converter accepts up to 2,000,000 characters of HTML, on this page and on the API. A long article page is usually far below that.

Do I need an account?

No. Site to Markdown works with no signup and no usage limit.

Rate This Tool

0/1000

Get Weekly Tools

Suggest a Tool