# URL to Markdown API price index 2026: what 1,000 pages cost at 21 APIs

> URL-to-Markdown and web reader API price index 2026: 21 APIs, cost per 1,000 pages at 3 volumes, static and JavaScript pages, crypto, KYC. Checked 2026-10-22.

- URL: https://webreaderapi.com/data/url-to-markdown-price-index-2026/
- Last updated: 2026-10-22
- Publisher: WebReaderAPI (https://webreaderapi.com)

Public list prices of 21 APIs that turn web pages into Markdown or text for models, normalised to the cost of 1,000 pages at three monthly volumes, for plain pages and for pages rendered in a browser. Published by WebReaderAPI, which is one of the APIs in the table.

**Quick answer — How much does a URL-to-Markdown API cost per 1,000 pages in 2026?**

Across 21 APIs whose list prices we read on 2026-10-22, reading 100,000 plain pages a month costs a median $0.99 per 1,000, and $1.00 when pages need a browser. At 1 million pages a month the medians fall to $0.774 and $0.899. **WebReaderAPI**, which publishes this index, charges $0.22/1K pages for plain pages at 100,000.

## The index in six numbers

- **$2.00** median per 1,000 plain pages at 10,000 a month (21 APIs)
- **$0.99** median per 1,000 plain pages at 100,000 a month (21 APIs)
- **$0.774** median per 1,000 plain pages at 1 million a month (20 APIs)
- **$1.00** median per 1,000 browser-rendered pages at 100,000 a month (18 APIs)
- **$0.899** median per 1,000 browser-rendered pages at 1 million a month (17 APIs)
- **3 + 7** APIs that state crypto payment on an account, plus APIs taking per-request USDC (x402)

## How was the index built?

We read each provider's public pricing page on 2026-10-22 and kept only figures shown there; every source is listed at the bottom. A "page" is one URL read and returned as Markdown or text, with the provider's default proxy and no paid add-on.

- **Plain page:** no JavaScript rendering. **Browser page:** rendered in a headless browser first; providers that always render (Firecrawl, Olostep, Diffbot) have the same price in both tables.
- **Price at a volume:** the least expensive published way to buy that many pages every month on one provider (plan, plan plus published overage, or pay as you go), divided by the pages used. A $99 plan used for 100,000 pages counts as $0.99 per 1,000 even if it includes more.
- **Credit multipliers are applied**, for example 5 credits per browser page at ScrapingBee, ZenRows and Scrape.do.
- **Free tiers are listed, not priced.** APIs billed by tokens, browser time, data volume or compute, and one API whose Markdown output we could not confirm, are listed separately.

WebReaderAPI is shown for reference and is not counted in the medians.

## Price per 1,000 plain pages, by monthly volume

Static pages, read without a browser. "—" means not published or not self-serve at that volume.

| API | 10K pages a month | 100K pages a month | 1M pages a month |
| --- | --- | --- | --- |
| WebReaderAPI (prepaid, never expires) | $0.38/1K pages | $0.22/1K pages | $0.07/1K pages |
| Firecrawl | $4.40 | $0.99 | $0.749 |
| Tavily Extract | $1.60 | $1.40 | $1.30 |
| Exa contents | $1.00 | $1.00 | $1.00 |
| Parallel Extract | $1.00 | $1.00 | $1.00 |
| Linkup fetch | $1.00 | $1.00 | $1.00 |
| Olostep | $2.90 | $0.99 | $0.399 |
| ScrapeGraphAI | $2.00 | $1.00 | $1.25 |
| Diffbot | $29.90 | $2.99 | $0.899 |
| ScrapingBee | $1.90 | $0.49 | $0.099 |
| ScraperAPI | $4.90 | $0.49 | $0.149 |
| ZenRows | $0.50 | $0.39 | $0.199 |
| Scrapfly | $3.00 | $0.30 | $0.10 |
| Scrape.do | $2.90 | $0.29 | $0.099 |
| Crawlbase | $2.10 | $0.764 | $0.349 |
| Bright Data Web Unlocker | $1.50 | $1.50 | $1.30 |
| Oxylabs Web Scraper API | $3.00 | $1.00 | $2.50 |
| Decodo Web Data API | $1.90 | $0.49 | $0.249 |
| Scrapeless | $1.00 | $0.90 | $0.80 |
| Hyperbrowser Fetch | $3.00 | $1.00 | — |
| Steel scrape | $5.00 | $5.00 | $5.00 |
| Crawl4AI Cloud | $1.00 | $0.50 | $0.395 |

*Prices checked on October 22, 2026.*

List prices in USD, read on 2026-10-22. Our prices: the WebReaderAPI pricing page on the same date.

## Price per 1,000 browser-rendered pages, by monthly volume

Pages that need JavaScript, rendered in a headless browser. APIs that document no browser option are left out of this table.

| API | 10K pages a month | 100K pages a month | 1M pages a month |
| --- | --- | --- | --- |
| WebReaderAPI (2 credits per page) | $0.75/1K pages | $0.435/1K pages | $0.148/1K pages |
| Firecrawl | $4.40 | $0.99 | $0.749 |
| Tavily Extract | $3.00 | $2.36 | $2.90 |
| Linkup fetch | $5.00 | $5.00 | $5.00 |
| Olostep | $2.90 | $0.99 | $0.399 |
| ScrapeGraphAI | $2.00 | $1.00 | $1.25 |
| Diffbot | $29.90 | $2.99 | $0.899 |
| ScrapingBee | $1.90 | $0.99 | $0.599 |
| ScraperAPI | $4.90 | $1.49 | $0.975 |
| ZenRows | $2.50 | $0.99 | $0.549 |
| Scrapfly | $3.00 | $1.00 | $0.56 |
| Scrape.do | $2.90 | $0.99 | $0.699 |
| Crawlbase | — | $0.99 | $0.599 |
| Bright Data Web Unlocker | $1.50 | $1.50 | $1.30 |
| Oxylabs Web Scraper API | $3.00 | $5.00 | $2.50 |
| Decodo Web Data API | $1.90 | $0.99 | $0.999 |
| Hyperbrowser Fetch | $3.00 | $1.00 | — |
| Steel scrape | $5.00 | $5.00 | $5.00 |
| Crawl4AI Cloud | $1.00 | $0.99 | $0.667 |

*Prices checked on October 22, 2026.*

## Why do prices differ so much between APIs?

Four things explain most of the spread.

1. **Product type.** General scraping APIs (ScrapingBee, Scrape.do, ZenRows, Scrapfly) are priced for volume and reach about $0.10 per 1,000 plain pages at 1 million a month. AI-focused readers (Exa, Parallel, Linkup) charge a flat $1.00 and add retrieval features.
2. **Browser multipliers.** A browser page costs 2 to 10 times a plain page at credit-based APIs; flat-priced APIs charge the same for both.
3. **Plan steps.** Many providers sell monthly plans with a large allowance, so small users pay for unused pages: the median at 10,000 plain pages a month is $2.00.
4. **Expiry.** Most plans reset unused credits monthly; ScrapeGraphAI, Crawlbase, Crawl4AI Cloud keep bought credits without a monthly reset.

## Free tiers, expiry, crypto, identity checks and robots.txt

What each provider states on the pages we read. "Not stated" means the pages did not say.

| API | Free tier | Credit expiry | Crypto payment | Identity checks | robots.txt |
| --- | --- | --- | --- | --- | --- |
| WebReaderAPI | None | Never | BTC, USDT, USDC, ETH, SOL, LTC | None: no ID, no selfie, no documents | Respected; never overridden |
| Firecrawl | 1,000 credits a month, no card | Plan credits reset monthly | No (cards, PayPal) | None stated | Respected by default; override on Enterprise only |
| Tavily Extract | 1,000 credits a month (5,000 basic URLs) | Reset monthly | Only at its discretion (terms) | None stated | Not stated |
| Exa contents | $10 credit a month | Free credit resets monthly | Per request, USDC (x402) | Card for pay as you go | Stated for its index crawler, not for user fetches |
| Parallel Extract | 5,000 requests a month | Free credit expires monthly | Per request, USDC (x402) | Card for the monthly credit | Stated for its index crawler, not for user fetches |
| Linkup fetch | $20 a month (professional email) | Not stated | Per request, USDC (x402) | Professional email for free credit | Crawling respects it; fetch not stated |
| Olostep | 500-request trial | Plan monthly; top-ups 6 months | Per request, USDC (x402) | Card for top-ups | Tools to respect it; default not stated |
| ScrapeGraphAI | 500 credits | Plan credits don't carry over; top-ups never expire | Agents only (MPP) | Not stated | Customer must comply (terms) |
| Diffbot | 10,000 credits a month | Quota resets each period | Not stated | No card for the free plan | Crawl obeys by default; Extract not stated |
| ScrapingBee | 1,000 credits | No rollover | No | Card for paid plans | Not stated |
| ScraperAPI | 5,000 credits for 7 days | Expire each billing period | No | None stated | Not stated |
| ZenRows | 5,000 credits a month | At renewal | Accounts: no; agents: USDC (x402) | Email validation | Not stated |
| Scrapfly | 1,000 credits once | No rollover | Not stated | KYC for every customer | Crawler API respects it by default; can be disabled |
| Scrape.do | 1,000 credits a month | Not stated | Yes (coins not stated) | None stated | Not stated |
| Crawlbase | 1,000 credits | Pay as you go: nothing expires | Not stated | None stated | Not stated |
| Bright Data Web Unlocker | 5,000 credits a month | Free credits reset monthly | No | Card for personal-email accounts; company KYC for robots-disallowed pages | Honoured by default |
| Oxylabs Web Scraper API | $5 credit once | End of cycle | No | KYC for every customer | Not mentioned |
| Decodo Web Data API | Up to 10,000 requests a month | Unused amounts expire monthly | Yes (via CoinGate) | Automatic check, then KYC | Not stated |
| Scrapeless | Trial, size not stated | Prepaid minimum not kept | Yes (coins not stated) | None for basic packages | Not stated |
| Hyperbrowser Fetch | 5,000 credits | Bought credits: 12 months | Per request, USDC (x402) | Not stated | Not stated |
| Steel scrape | $30 once (90 days) | Launch credit 90 days | Per request, USDC (x402) | No card | Terms forbid violating it |
| Crawl4AI Cloud | 1,000 credits a month | Bought credits never expire | Not stated | No card | Terms require honouring it |

*Prices checked on October 22, 2026.*

## What are the main findings?

- **Plain pages are cheap at volume.** At 1 million pages a month, ScrapingBee ($0.099), Scrape.do ($0.099), Scrapfly ($0.10) list the lowest plain-page prices.
- **Browser pages cost more.** At 1 million a month, Olostep ($0.399), ZenRows ($0.549), Scrapfly ($0.56) list the lowest browser-page prices.
- **The best-known reader is not the least expensive.** Firecrawl lists $0.99 per 1,000 at 100,000 pages and $0.749 at 1 million, with every page rendered.
- **Crypto is rare on accounts.** Scrape.do, Decodo Web Data API, Scrapeless state crypto payment; Exa contents, Parallel Extract, Linkup fetch, Olostep, ZenRows, Hyperbrowser Fetch, Steel scrape take per-request USDC through x402.
- **robots.txt is often left to the customer.** Providers stating a robots.txt-respecting default, at least on their crawl products: Firecrawl, Diffbot, Scrapfly, Bright Data Web Unlocker. Many say nothing.
- **KYC is the exception.** Oxylabs and Scrapfly ask every customer for it; Decodo runs an automatic check first.

## APIs billed another way (not in the medians)

These bill by tokens, browser time, data volume or compute, or did not confirm Markdown output, so a price per page depends on your pages.

| API | Price | Note |
| --- | --- | --- |
| Jina Reader | $50 per 1 billion output tokens; $500 per 11 billion | Billed per token: the cost per page depends on page length. 10 million free tokens per new key, non-commercial only. |
| Cloudflare Browser Run | $0.09 per browser-hour after 10 included hours, $5 monthly minimum | Billed by browser time; /markdown, /content and /crawl endpoints. |
| Spider | $1 per GB of content plus compute | Billed by data volume; the per-page figures it publishes are its own estimates. |
| Apify Website Content Crawler | Compute units ($0.13 per unit on Business) | Billed by compute; the per-page figures it publishes are its own estimates. |
| Zyte API | $0.13 per 1,000 static requests (website tier 1, pay as you go); $1.01 with a browser | Price depends on a tier Zyte assigns per website; Markdown output not stated on the pages we read. |

*Prices checked on October 22, 2026.*

## Can I reuse this data?

Yes. The tables on this page are published under the Creative Commons Attribution 4.0 licence (CC BY 4.0): copy and adapt them with a link to this page and the date 2026-10-22. We read the prices again at least once a month.

If a figure is wrong, write to support@webreaderapi.com with the page that shows the right one; we correct it and note the change in the [changelog](https://webreaderapi.com/changelog/).

## Price index: common questions

### Which URL-to-Markdown API costs least?

It depends on volume and on JavaScript. On 2026-10-22, the lowest plain-page prices at 1 million pages a month were ScrapingBee at $0.099 and Scrape.do at $0.099 per 1,000; the lowest browser-page price at that volume was Olostep at $0.399.

### How much does Firecrawl cost per page?

Firecrawl charges 1 credit per page with JavaScript included: $19 for 5,000 credits on Hobby, $99 for 100,000 on Standard and $749 for 1 million on Scale, read on its pricing page on 2026-10-22. JSON extraction adds 4 credits per page.

### Why is Jina Reader not in the main tables?

Jina bills by output tokens ($50 per 1 billion tokens on its smallest package), so its price per page depends on how long your pages are. It is listed in the table of APIs billed another way.

### Does WebReaderAPI count itself in the medians?

WebReaderAPI publishes this index and appears in the first rows for reference only. The medians use the other providers.

### How often is the index updated?

At least once a month, and when a listed provider changes its public prices. The date at the top shows the last full check.

## Sources

1. [Firecrawl: pricing](https://www.firecrawl.dev/pricing) — Firecrawl (read 2026-10-22)
2. [Tavily Extract: pricing](https://docs.tavily.com/documentation/api-credits) — Tavily (read 2026-10-22)
3. [Exa contents: pricing](https://exa.ai/pricing) — Exa (read 2026-10-22)
4. [Parallel Extract: pricing](https://parallel.ai/pricing) — Parallel (read 2026-10-22)
5. [Linkup fetch: pricing](https://docs.linkup.so/pages/documentation/development/pricing) — Linkup (read 2026-10-22)
6. [Olostep: pricing](https://www.olostep.com/pricing) — Olostep (read 2026-10-22)
7. [ScrapeGraphAI: pricing](https://scrapegraphai.com/pricing) — ScrapeGraphAI (read 2026-10-22)
8. [Diffbot: pricing](https://www.diffbot.com/pricing/) — Diffbot (read 2026-10-22)
9. [ScrapingBee: pricing](https://www.scrapingbee.com/pricing/) — ScrapingBee (read 2026-10-22)
10. [ScraperAPI: pricing](https://www.scraperapi.com/pricing/) — ScraperAPI (read 2026-10-22)
11. [ZenRows: pricing](https://docs.zenrows.com/first-steps/pricing.md) — ZenRows (read 2026-10-22)
12. [Scrapfly: pricing](https://scrapfly.io/pricing) — Scrapfly (read 2026-10-22)
13. [Scrape.do: pricing](https://scrape.do/pricing.md) — Scrape.do (read 2026-10-22)
14. [Crawlbase: pricing](https://crawlbase.com/pricing) — Crawlbase (read 2026-10-22)
15. [Bright Data Web Unlocker: pricing](https://www.bright.cn/pricing/web-unlocker) — Bright Data (read 2026-10-22)
16. [Oxylabs Web Scraper API: pricing](https://oxylabs.io/pricing/web-scraper-api) — Oxylabs (read 2026-10-22)
17. [Decodo Web Data API: pricing](https://help.decodo.com/docs/web-data-api-billing) — Decodo (read 2026-10-22)
18. [Scrapeless: pricing](https://www.scrapeless.com/en/pricing) — Scrapeless (read 2026-10-22)
19. [Hyperbrowser Fetch: pricing](https://hyperbrowser.ai/docs/pricing.md) — Hyperbrowser (read 2026-10-22)
20. [Steel scrape: pricing](https://docs.steel.dev/overview/pricinglimits) — Steel (read 2026-10-22)
21. [Crawl4AI Cloud: pricing](https://crawl4ai.com/) — Crawl4AI (read 2026-10-22)
22. [Jina Reader: pricing](https://jina.ai/api-dashboard/pricing/) — Jina Reader (read 2026-10-22)
23. [Cloudflare Browser Run: pricing](https://developers.cloudflare.com/browser-run/pricing/) — Cloudflare Browser Run (read 2026-10-22)
24. [Spider: pricing](https://spider.cloud/pricing) — Spider (read 2026-10-22)
25. [Apify Website Content Crawler: pricing](https://apify.com/apify/website-content-crawler) — Apify Website Content Crawler (read 2026-10-22)
26. [Zyte API: pricing](https://www.zyte.com/pricing/) — Zyte API (read 2026-10-22)

---

WebReaderAPI: WebReaderAPI is a web reader API for AI agents that turns any public web page into clean Markdown, paid in crypto with no ID upload. Prepaid credits from $0.07/1K pages never expire, and robots.txt is respected. No KYC — no ID, no selfie, no documents. Pay in crypto.
