Website to Markdown Scraper — LLM & RAG Ready avatar

Website to Markdown Scraper — LLM & RAG Ready

Pricing

from $10.00 / 1,000 page scrapeds

Go to Apify Store
Website to Markdown Scraper — LLM & RAG Ready

Website to Markdown Scraper — LLM & RAG Ready

Scrape any website into clean, LLM-ready Markdown. This URL-to-Markdown converter strips ads, nav, and boilerplate with Mozilla Readability — feed your AI models and RAG pipelines only real content. Batch URLs, optional JavaScript rendering, pay only for pages scraped successfully.

Pricing

from $10.00 / 1,000 page scrapeds

Rating

0.0

(0)

Developer

Damon Williams

Damon Williams

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Share

Website to Markdown Scraper — Clean, LLM-Ready Text

Scrape any website into clean Markdown. Give this URL-to-Markdown converter a web page address and get back just the content — no ads, no navigation bars, no cookie banners, no scripts. It's the fastest way to turn web pages into LLM-ready Markdown for RAG pipelines, AI agents, and knowledge bases.

Built on the principle that junk in the input means junk in the output: if you're feeding web content to an AI model, you want the article, not the page furniture.


Why use this website-to-Markdown scraper

Most web scrapers hand you raw HTML and leave the cleanup to you. This one does the cleanup for you and returns proper Markdown:

  • Readable Markdown, not HTML soup. Uses Mozilla's Readability engine — the same technology behind Firefox's Reader View — to find the actual article and discard the rest.
  • Proper GitHub-flavoured Markdown. Headings, lists, tables, code blocks, and links are all preserved and ready to paste straight into a prompt.
  • Handles modern JavaScript sites. Flip on Render JavaScript and each page loads in a real browser first, so content built by JavaScript is captured too.
  • Batch URL scraping. Pass a list of URLs and get one clean Markdown record per page in a single run.
  • You only pay for what works. Failed pages are recorded so you can see what happened — and you are never charged for them.

What you can use it for

  • Feeding articles and documentation into LLMs, RAG pipelines, and AI agents
  • Building research databases and knowledge bases from web sources
  • Content archiving in a durable, human-readable Markdown format
  • Converting documentation sites into clean Markdown for AI training or reference data
  • Powering AI writing and summarization tools that need clean source text

Input

FieldTypeDescription
startUrlsarrayOne or more page URLs to convert. Each successful page is charged once.
urlstringShortcut for a single page. Can be used instead of, or alongside, startUrls.
renderJsbooleanLoad each page in a real browser so JavaScript-built content is captured. Slower. Default false.
renderWaitMsintegerWith renderJs on, wait this many extra milliseconds after load for late content. Default 0.
includeLinksbooleanKeep hyperlinks in the Markdown. Turn off for cleaner plain prose. Default true.

Example input

{
"startUrls": [
"https://en.wikipedia.org/wiki/Markdown",
"https://example.com"
],
"renderJs": false,
"includeLinks": true
}

Output

One clean Markdown record per page:

{
"url": "https://en.wikipedia.org/wiki/Markdown",
"title": "Markdown",
"excerpt": "Markdown is a lightweight markup language...",
"siteName": "Wikimedia Foundation, Inc.",
"wordCount": 3092,
"markdown": "Markdown is a lightweight markup language for creating formatted text...",
"scrapedAt": "2026-07-23T20:31:00.000Z"
}

If a page can't be scraped, you get a record with an error field explaining why — and that page is not charged.


Pricing

Pay per event — you are charged once per page successfully scraped. No subscription, and failed pages are never charged.

What you runCharged as
Standard scrape (default)Page scraped — the low rate
With Render JavaScript onPage rendered — a higher rate

Rendering runs a real browser and uses far more computing power, so it's priced separately. If you don't turn it on, you never pay the rendering rate.


When to turn on "Render JavaScript"

Leave it off by default — it's faster and works for most articles, blogs, documentation, and news sites.

Turn it on when a page comes back nearly empty. That usually means the site builds its content with JavaScript after loading. The difference on such a page is dramatic:

ModeResult on a JavaScript-built page
Default (off)~3 words — just navigation links
Render JavaScript (on)~190 words — the full content

Frequently asked questions

How do I convert a website to Markdown for an LLM? Paste one or more URLs into the input and run the Actor. You get back clean, GitHub-flavoured Markdown for each page — ads, menus, and boilerplate removed — ready to drop straight into a prompt, a RAG pipeline, or a vector database.

How is this different from a normal HTML scraper? A normal scraper returns raw HTML and leaves you to strip out the noise. This Actor runs Mozilla Readability to isolate the real article first, then converts only that to Markdown — so you get readable text, not tag soup.

Does it handle JavaScript-rendered pages? Yes. Turn on Render JavaScript and each page loads in a real browser before extraction, so single-page apps and JavaScript-built content are captured.

Can I scrape multiple URLs at once? Yes. Pass a list in startUrls and the Actor returns one Markdown record per page in a single run. Batch scraping is fully supported.

Do I pay for pages that fail? No. You are only charged for pages that are successfully scraped and converted. Failed pages are returned with an error field and are never billed.

What Markdown format does it output? GitHub-flavoured Markdown (GFM) — with headings, lists, tables, code blocks, and (optionally) links preserved.

Is it suitable for RAG pipelines and AI agents? Yes — that's exactly what it's built for. Clean Markdown means less noise in your embeddings and better answers from your model.


Good to know

  • Only http and https pages are supported.
  • Pages are capped at 5 MB and time out after 20 seconds (30 with rendering) to keep runs fast and predictable.
  • Internal and private network addresses are refused for security.
  • A small number of sites block automated traffic; that's a site policy, and those pages are reported as errors rather than charged.