URL to Markdown Converter
Pricing
from $2.00 / 1,000 page converteds
URL to Markdown Converter
Fetch any URL and convert it into clean, LLM-ready Markdown — headings, links, lists and emphasis preserved, scripts/nav/ads stripped. No browser, no LLM calls, no API key. Built for RAG pipelines and AI agents that need one page turned into readable text, cheaply.
Pricing
from $2.00 / 1,000 page converteds
Rating
0.0
(0)
Developer
Tim Zinin
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
URL to Markdown — Clean, LLM-Ready Markdown from Any Page
Point this Actor at any URL and get back clean Markdown — headings, paragraphs, resolved links, lists, bold and italic — with scripts, styles and nav/header/footer boilerplate stripped out. One HTTP request per page, no browser, no LLM call, no API key: a pragmatic reader-mode converter built for feeding page content into RAG pipelines and AI agents.
What you get
- Clean Markdown, not raw HTML. Headings, paragraphs, absolute-resolved links, lists, bold/italic — scripts, styles, comments and nav/header/footer/aside boilerplate stripped before conversion.
- Deterministic, not an LLM cleanup pass. Same page in, same Markdown out, every time, at zero token cost.
- Link control. Turn
includeLinksoff to keep only the anchor text when URLs would just clutter the output. - Built for lists. Concurrency up to 30, one row per URL, so a batch of a few dozen pages is a single run.
- Internal addresses are refused, including through a redirect — a public page that happens to point at an internal or private address is not followed there.
- Runs on Apify: schedule it, monitor it, call it from the API or the MCP server, export to JSON, CSV or Excel, or push results straight into your own pipeline.
How to run it
- Click Try for free — no card needed on the free plan.
- Paste your URLs into URLs, one per line.
- Press Start. Results appear in the dataset — read them in the UI, pull them from the API, or have a webhook push them onward.
Pricing
Pay-per-event: $0.005 per run start + $0.002 per URL converted. No monthly seat, no minimum. 100 URLs cost about $0.21; 1,000 URLs about $2.01.
A URL that could not be fetched is still returned, with found: false and the reason —
and it is not charged for. You pay for pages converted, not for attempts.
Input
| Field | Required | What it does |
|---|---|---|
urls | yes | URLs to fetch and convert. Up to 100 per run. |
includeLinks | no | Convert <a href> tags to Markdown links. false keeps only the link text. Default true. |
maxConcurrency | no | How many URLs to fetch at once, 1–30 (default 10). |
{"urls": ["https://example.com", "https://www.iana.org/help/example-domains"]}
Output
One row per URL. This is a real row from a real run:
{"url": "https://example.com/","found": true,"httpStatus": 200,"title": "Example Domain","markdown": "# Example Domain\n\nThis domain is for use in documentation examples without needing permission. Avoid use in operations.\n\n[Learn more](https://iana.org/domains/example)","wordCount": 20,"summary": "https://example.com/ — 20 words of Markdown.","checkedAt": "2026-07-26T13:23:47.737Z"}
| Field | What it means |
|---|---|
found | Whether the URL was reachable |
httpStatus | The HTTP status code the page returned |
title | The page's <title> text |
markdown | The converted page body |
wordCount | Word count of markdown |
summary | Human-readable one-liner |
found: false | Same row shape, markdown: "" and an error explaining why — not billed |
Need the rest of the picture?
These run on the same account, take the same shape of input and bill the same way, so they slot into an existing pipeline without new plumbing.
| Actor | What it does |
|---|---|
| Structured Data Extractor | Turn any URL into clean structured JSON — title, description, image, JSON-LD, headings, links, emails and… |
| AI Crawler Access Checker | Check which AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended & more) can access your website |
| B2B Lead Enricher | Turn a list of company websites into sales-qualified lead cards: detected tech stack, a rough revenue… |
| Clinical Trials Monitor | Watch conditions, drugs or sponsors for new and updated clinical trials |
| Company Hiring Radar | Pull every open role a company is hiring for from its public job board (Greenhouse, Lever, Ashby) and turn… |
FAQ
Does it need an API key or login? No.
Does it run JavaScript or render the page? No — a single HTTP fetch plus a regex conversion. Content that only appears after client-side rendering is not captured.
Does it preserve tables or images? No — this is a reader-mode converter for text content (headings, paragraphs, links, lists, emphasis), not a layout-faithful HTML-to-Markdown transpiler.
Can I call it from an AI agent? Yes — a standard Apify Actor, callable from the Apify API, the SDK, or the Apify MCP server.
What this is NOT. It does not crawl an entire site, does not pull structured fields like prices or JSON-LD out of the page, and does not fetch pages behind a login — one URL, one HTTP request, plain Markdown out.
Found a wrong result, or need a check we don't run? Open an issue on this Actor's page.