# URL to Markdown converter

> Paste the address of a public page and get its main text as Markdown, without menus, cookie banners and footers, ready to paste into a prompt or save as a file.

Canonical page: https://clawifi.dev/tools/url-to-markdown

Run it on the page: enter a public URL and the page comes back as Markdown, with Copy and Download buttons. No key needed: https://clawifi.dev/tools/url-to-markdown

## What it does

- Reads the page through Clawifi: a plain fetch first, a real browser only when the page needs one; the result line says which.
- Keeps the main text, headings, lists, links, tables and code; leaves out navigation, banners and footers.
- Shows the Markdown in a panel you can copy or download as a `.md` file.

## Limits

- The free preview stops at 20,000 characters; longer pages are cut, and the result says so.
- 12 runs a minute per address, shared with the other free tools and the [playground](https://clawifi.dev/playground).
- Public pages only: no logins, no private or local addresses, and no choice of fetch mode here.
- It does not crawl: one URL in, one page out. For a whole site, see [Sitemap to JSON](https://clawifi.dev/tools/sitemap-to-json) or [Map and crawl](https://clawifi.dev/docs/map-and-crawl).

## Do this from your agent

Your agent can make the same call. On the hosted MCP server `scrape_url` works without a key as a trial (12 a minute and 50 a day per address); with a key the limits are your plan’s and the text is not cut at the preview limit.

**MCP**

```text
scrape_url(url="https://example.com", formats=["markdown"])
```

**cURL**

```sh
curl https://api.clawifi.dev/scrape \
  -H "Authorization: Bearer $CLAWIFI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","formats":["markdown"]}'
```

**Python**

```python
from clawifi import Clawifi

client = Clawifi()  # reads CLAWIFI_API_KEY
page = client.scrape("https://example.com", formats=["markdown"])
print(page["formats"]["markdown"])
```

Read more: [Fetch and scrape](https://clawifi.dev/docs/fetch) · [POST /scrape](https://clawifi.dev/docs/api/post-scrape) · [Remote MCP](https://clawifi.dev/docs/remote-mcp) · [Docs](https://clawifi.dev/docs) · [Pricing](https://clawifi.dev/pricing)

## Questions

### How do I convert a web page to Markdown?

Paste the page’s URL above and press Convert. Clawifi fetches the page, keeps the main text and returns it as Markdown, which you can copy or download.

### Why convert a page to Markdown for an LLM?

Markdown keeps the structure that matters (headings, lists, links, tables) and drops the HTML markup, scripts and page furniture, so the model reads the content in far fewer tokens.

### Does it work on pages that need JavaScript?

Often, yes. Clawifi tries a plain fetch first and renders the page in a browser only when the text is not in the HTML. Pages behind a login or a bot challenge will not come through.

### Can it convert a PDF?

Yes, a public PDF URL comes back as Markdown too. The free preview cuts long documents at 20,000 characters; the API with a key returns the full text.

### Is there a limit?

The free tool allows 12 runs a minute per address and no key. For more, a [free API key](https://clawifi.dev/signup) includes 1,000 credits a month; see [Pricing](https://clawifi.dev/pricing).

## Other free tools

- [robots.txt and llms.txt checker](https://clawifi.dev/tools/llms-txt-checker): Which AI bots a site allows, and an llms.txt structure check.
- [Agent-readability test](https://clawifi.dev/tools/agent-readability-test): Can an agent read this page? Checks, each explained.
- [Sitemap to JSON](https://clawifi.dev/tools/sitemap-to-json): A sitemap.xml as JSON: URLs and lastmod, downloadable.
- [All free tools](https://clawifi.dev/free-tools): The estimator, the request builder and every tool.
