Docs to RAG Crawler: Site to Markdown | Johto Data
Pricing
Pay per event
Docs to RAG Crawler: Site to Markdown | Johto Data
Crawl a docs site into token-budgeted Markdown for RAG. llms.txt-first. Re-crawl incrementally: pass last hashes and unchanged or duplicate pages are free. $2.50 per 1,000 crawled pages.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Jo
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
2 days ago
Last modified
Categories
Share
Docs to RAG Crawler: Site to Markdown
By Johto Data. Crawl a docs site or blog into token-budgeted Markdown, one row per page. Re-crawls charge only new and changed pages.
For AI agents
- Call: run
johto.data/site-markdown-crawlerwith the example input below and read the default dataset. - Re-crawls: store each row's
urlandstats.contentHash, pass them back as"knownHashes": {"<url>": "<hash>"}. Unchanged and duplicate pages are skipped and not charged; their links are still followed. - Context size:
stats.tokensEstimateper page;maxTokenstrims long pages (stats.truncatedflags it). - Scope: URLs under a start URL, unless you set
includeUrlGlobs/excludeUrlGlobs. Cap spend withmaxCrawlPagesormaxResults. - Single-page mode:
"mode": "single-page"withurls(orurlsand nostartUrls). One row per URL, same fields as llm-web-reader. - Safety: http(s) only. Each host is resolved once and refused unless every address is a routable internet address (private, loopback, link-local and metadata addresses are refused); the connection goes only to that checked address, and every redirect hop is re-checked. Refused URLs return a status row at no charge. robots.txt is always respected.
| This Actor | Leading alternative | |
|---|---|---|
| Crawled page | $0.00025 | $0.0005 |
| Single page | $0.0002 (60% under) | $0.0005 |
| Run start | $0.00005 | none |
| Measured run time | 10-page crawl: 5.3 s; 1 single page: 4.2 s | not measured |
Sample (run mGSasox4jPWgK5bGS, Oct 22 2026, input below):
| url | metadata.title | stats.tokensEstimate |
|---|---|---|
| https://docs.python.org/3/tutorial/ | The Python Tutorial | 703 |
| https://docs.python.org/3/tutorial/appetite.html | 1. Whetting Your Appetite | 1120 |
| https://docs.python.org/3/tutorial/modules.html | 6. Modules | 6384 |
Example input (crawls 10 pages)
{"startUrls": [{"url": "https://docs.python.org/3/tutorial/"}],"maxCrawlPages": 10,"maxCrawlDepth": 1}
Cost: $0.00255 (10 × $0.00025 + $0.00005).
Output schema
One row per saved page:
url: final page URLcrawl:loadedUrl,loadedTime,referrerUrl,depth,httpStatusCodemetadata:canonicalUrl,title,description,author,keywords,languageCode,publishedAt,urltext,markdown;htmlonly whensaveHtmlis truestats:markdownChars,tokensEstimate(chars/4),tokensEstimateFull,truncated,contentHash
The run's OUTPUT record holds savedPages, unchangedPagesSkipped, duplicatePagesSkipped, chargedPages.
Single-page mode
{"mode": "single-page", "urls": ["https://docs.python.org/3/tutorial/appetite.html"], "outputFormats": ["markdown"], "maxTokens": 1500}
Per URL: crawl (status, loadedUrl, loadedAt, requestStatus, error on failure), searchResult, metadata, markdown / text / html per outputFormats, stats, links (if includeLinks), unchanged. Failed, robots-blocked and unchanged rows are not charged. Keyword search is not supported: pass page URLs.
Pricing
apify-actor-start: $0.00005 per runpage: $0.00025 per saved page (crawl mode)single-page: $0.0002 per page read (single-page mode)
Use it when / not when
- Use it for docs sites and blogs that render as plain HTML, for RAG indexes, embeddings or LLM context, and for scheduled re-crawls that should bill only changes.
- Do not use it for pages that need JavaScript, files, screenshots, logins, or for structured records such as prices. Use apify/website-content-crawler for JavaScript sites.
Compatibility
Input startUrls, maxCrawlPages, maxCrawlDepth, includeUrlGlobs, excludeUrlGlobs, useSitemaps, useLlmsTxt, saveMarkdown, saveHtml, htmlTransformer, removeElementsCssSelector, maxResults and output url, crawl, metadata, text, markdown use the same names as Apify's Website Content Crawler.
- MCP:
https://mcp.apify.com/?tools=johto.data/site-markdown-crawler - LangChain / LlamaIndex:
ApifyActorsTool("johto.data/site-markdown-crawler")
Limits
Raw HTTP only (no JavaScript rendering). Token counts are estimates. You are responsible for the URLs you supply and for following each site's terms.
Made by Johto Data.