Comparison
A Firecrawl and Jina Reader alternative
All three take a URL and return the page as Markdown for a model. They bill differently: Firecrawl by the page from a monthly plan, Jina Reader by the output token from a prepaid balance, and Webfetch by the page at a lower rate, with blocked fetches free and every page fetched live.
The same page through each
Firecrawl
curl -X POST https://api.firecrawl.dev/v2/scrape \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $FIRECRAWL_KEY" \
-d '{"url": "https://example.com/post",
"formats": ["markdown"]}'Jina Reader
curl https://r.jina.ai/https://example.com/post \
-H "Authorization: Bearer $JINA_KEY"Webfetch
curl "https://api.webfetch.io/v1/\
?url=https%3A%2F%2Fexample.com%2Fpost\
&return_page_markdown=true" \
-H "Authorization: Bearer $WEBFETCH_KEY"Price by monthly volume
The cheapest plan that covers each volume, billed monthly. Firecrawl charges 1 credit a page.
Webfetch charges 5 credits for a page rendered in a browser, the default, and
1 with render_js=false.
| Pages a month | Firecrawl | Webfetch, rendered | Webfetch, without rendering |
|---|---|---|---|
| 5,000 | $19 Hobby | $11.99 Starter | $11.99 Starter |
| 15,000 | $99 Standard | $11.99 Starter | $11.99 Starter |
| 50,000 | $99 Standard | $29.99 Pro | $11.99 Starter |
| 100,000 | $99 Standard | $59.99 Scale | $29.99 Pro |
| 200,000 | $399 Growth | $59.99 Scale | $29.99 Pro |
| 500,000 | $399 Growth | $149.99 Business | $59.99 Scale |
| 1,000,000 | $749 Scale | $359.99 Business+ | $59.99 Scale |
Firecrawl's prices from firecrawl.dev/pricing, checked October 20, 2026. Annual billing lowers them by 16.7%, or 20% on Scale, and between plans Firecrawl sells extra credits at $5 per 1,000 on Hobby to $5 per 5,000 on Scale. Firecrawl's 1 credit also covers its enhanced proxy; on Webfetch, premium and stealth proxies cost 10 to 75 credits a page. Webfetch has one monthly price per plan, locked for as long as the subscription stays active. See all plans.
Where they differ
| Webfetch | Firecrawl | Jina Reader | |
|---|---|---|---|
| Billing unit | The page: 1 credit, or 5 rendered | The page: 1 credit, plus 4 for the JSON, question or highlights formats | Output tokens, from a prepaid balance |
| Free allowance | 1,000 credits at signup, then 250 a month, banking up to 1,000 | 1,000 credits a month | 10 million tokens per new API key; 20 requests a minute without a key |
| Concurrency, entry plan | 5 free; 25 on Starter ($11.99) | 2 free; 5 on Hobby ($19) | Rate-limited: 500 requests a minute with a key |
| Fresh or cached | Every request fetches the page live | A cached copy up to 2 days old by default, at the same price; maxAge: 0 fetches live |
Cached for a time by default; X-No-Cache fetches live |
| Blocked or failed | Not billed: a 403, an anti-bot challenge, a CAPTCHA page, a timeout | A 403 or 404 page costs 1 credit; no document, no charge | Failed requests are not charged |
| robots.txt | Honored on every request; a refusal is not billed | Not stated on its pricing or scrape pages | Checked when the request names a bot in X-Robots-Txt |
| Request style | GET with ScrapingBee's parameter names | JSON POST to /v2/scrape |
The URL after r.jina.ai/, options as headers |
Firecrawl and Jina Reader terms from their pricing, billing, scrape and Reader pages, checked October 20, 2026.
When Firecrawl or Jina Reader fits better
Firecrawl
- Crawling a whole site from one URL, or mapping its links (
/crawl,/map). Webfetch fetches one URL per request. - PDFs, at 1 extra credit a PDF page. Webfetch converts HTML pages.
- Extraction written by a model into JSON. Webfetch's
extract_rulesuses CSS and XPath selectors. - Pages that need a stronger proxy, which Firecrawl includes in the 1 credit.
Jina Reader
- Occasional use with no account: 20 requests a minute without a key.
- Short pages, where output tokens cost little.
- PDFs and image-heavy documents, with an optional OCR model at 40 times the tokens.
- Embeddings and reranking on the same key.
Moving to Webfetch
The options most Markdown calls use, and their Webfetch parameters. The
SDKs have a markdown() method, and the
MCP server's fetch_page tool returns Markdown by default.
| Firecrawl | Webfetch |
|---|---|
"formats": ["markdown"] | return_page_markdown=true |
"waitFor": 2000 | wait=2000 |
"location": {"country": "DE"} | country_code=de |
"actions": [...] | js_scenario |
"includeTags": [...] | extract_rules with "output": "markdown_relevant" |
"maxAge": 0 | Not needed; every request is live |
| Jina Reader | Webfetch |
|---|---|
r.jina.ai/{url} | ?url={url}&return_page_markdown=true |
X-Wait-For-Selector | wait_for |
X-Target-Selector | extract_rules with "output": "markdown_relevant" |
X-Proxy: de | country_code=de |
X-Timeout (seconds) | timeout (milliseconds) |
Accept: application/json | json_response=true |
X-No-Cache: true | Not needed; every request is live |
Questions
How does Webfetch's price compare with Firecrawl's?
Firecrawl charges 1 credit a page and sells 100,000 credits for $99 a month on Standard. Webfetch charges 5 credits for a page rendered in a browser and 1 without rendering, and sells 1,000,000 credits for $59.99 a month on Scale: 200,000 rendered pages or 1,000,000 pages without rendering. Prices checked October 20, 2026.
How does Jina Reader's billing compare?
Jina Reader charges tokens for the length of the output, from a prepaid balance, so a long page costs more than a short one. Each new Jina API key comes with 10 million free tokens. Webfetch charges the same credits for a page whatever its length.
Does Webfetch serve cached copies?
No. Every request fetches the page live. Firecrawl returns a cached copy up to two days old by default unless the request sets maxAge to 0, and Jina caches pages for a time unless the request sends X-No-Cache.
What does a blocked page cost?
Nothing on Webfetch: a 403 from the target, an anti-bot challenge and a CAPTCHA page are not billed. Firecrawl bills a page returned with a 403 or 404 status at 1 credit and does not bill a scrape that returns no document. Jina does not charge for failed requests. Webfetch bills a 404 or 410, because the target answered.
Run one page side by side
Send a URL you already convert today and compare the Markdown. An email address is the whole signup, and failed fetches cost nothing.
Get a free key