ZenRows pricing in 2026
Plans from $19, and the price per page.
ZenRows sells monthly credits, from Build at $19 for 45,000 to Scale at $2,999 for 45 million. A standard page is 1 credit, JavaScript rendering 5, premium proxies 10 and both 25, and unused plan credits expire at every renewal.
SpecStream reads any page for $0.80 per 1,000 with no plan, and tries a real browser when a plain read is refused. Keep your ZenRows client and change its address to https://api.specstream.ai/zenrows/v1/.
New accounts get $10 of credit, no card. It covers 12,500 pages.
What a page costs on ZenRows and on SpecStream
| SpecStream | ZenRows | |
|---|---|---|
| Free to start | $10 of credit, no card, which covers 12,500 pages | Free: 5,000 credits a month, no card |
| Plans | None needed. Pay $0.80 per 1,000 pages from your balance | Build $19 to $39, Launch $69 to $129, Growth $199 to $399 and Scale $549 to $2,999 a month. Enterprise is custom above 45M credits |
| Price of a page | $0.0008 for every page read, rendered or not | 1 credit for a standard request, 5 with JavaScript rendering, 10 with premium proxies, 25 with both |
| 1,000 pages rendered with JavaScript | $0.80 | 5,000 credits: $2.11 on Build B1, $1.38 on Launch L1 and $0.83 on Growth G1, with every credit used |
| 1,000 protected pages | $0.80 for each page read. A page that stays behind a bot check is not charged | 25,000 credits: $10.56 on Build B1 and $6.90 on Launch L1 |
| 404, 410 and empty pages | Not charged. A page that is missing, blocked, empty or fails is not charged | Failed requests are not charged. 404 and 410 count as successful results and are charged |
| Unused credit | Credit you buy never expires | Plan credits expire at every renewal. Top-up credits roll over once, then expire |
| More credit | A top-up from $10, at the same price per page | One pack per rung, such as 11,000 credits for $6.50 on Build B1, up to 10 per billing period |
| Pay as you go | Yes. Every call draws from the balance, with no plan | Not on a zenrows.com account. Agents at its agent storefront pay $0.50 per 1,000 credits, 10,000 credits at least |
| Concurrency | A busy call gets 429 with Retry-After and is not charged | 5 requests at once on Free, 20 on Build, 50 on Launch, 100 on Growth and 200 to 400 on Scale |
What a ZenRows credit buys, page by page
The credit weight sets the price
On Build B1, $19 buys 45,000 credits: 45,000 standard pages, 9,000 pages rendered with JavaScript, 4,500 with premium proxies or 1,800 protected pages. On Launch L1, $69 buys 250,000 credits, or 10,000 protected pages.
On SpecStream $19 reads 23,750 pages of any kind. Each URL gets up to 30 seconds: a page that refuses a plain read is tried again as a browser would ask for it, then in a real browser, then from the site's own feed, then from its newest public archive capture.
Credits that expire raise the price
ZenRows plan credits expire at every renewal, and top-up credits roll over once. A Build B1 month that uses half its credits pays twice the listed rate per page. SpecStream credit you buy never expires, and a yearly plan adds 20% more credit.
What is not charged
ZenRows charges only for successful requests, and counts a 404 or 410 as a successful result. On SpecStream only a page read with text is charged. A page the site does not have, a page behind a bot check, an empty page and a call that times out cost nothing, and a busy call gets 429 with Retry-After, also free.
The call, before and after
# Before
curl -G https://api.zenrows.com/v1/ \
--data-urlencode "apikey=$ZENROWS_API_KEY" \
--data-urlencode "url=https://en.wikipedia.org/wiki/Web_scraping"
# After
curl -G https://api.specstream.ai/zenrows/v1/ \
--data-urlencode "apikey=$SPECSTREAM_API_KEY" \
--data-urlencode "url=https://en.wikipedia.org/wiki/Web_scraping"url, apikey, response_type with markdown or plaintext, json_response and outputs with links and emails keep their meaning, and errors come back in ZenRows' own codes. Every parameter is listed on the ZenRows compatible page.
Scored on the official benchmarks
The SpecStream Extract API scores 0.908 F1 on WCXB. The Search API scores 97.9 F-score on all 1,000 SimpleQA Verified questions and 64.0 item F1 on all 200 WideSearch tasks. Every score and its method is on the benchmarks page.
Pages, search and rows on one key
The same key reads up to 20 pages or documents a call with the Extract API, searches the web for $1 per 1,000 searches with speed=fast, and runs Deep Search, which returns every match for a request in plain words as structured rows at 5¢, 15¢ or $1 a row.
What other page APIs cost
ScrapingBee
Hobby at $19 a month for 75,000 API credits, and a call with JavaScript rendering, the default, costs 5 credits. Credits are valid for one month. SpecStream answers ScrapingBee's own call at https://api.specstream.ai/scrapingbee/api/v1 for $0.80 per 1,000 pages.
ScraperAPI
Hobby at $49 a month for 100,000 API credits, and the balance resets when the subscription renews. SpecStream answers ScraperAPI's call at https://api.specstream.ai/scraperapi, and credit you buy never expires.
Firecrawl
Hobby at $19 a month for 5,000 credits. SpecStream answers Firecrawl's scrape call at https://api.specstream.ai/firecrawl for $0.80 per 1,000 pages.
How SpecStream scores
The same numbers as the benchmarks page, from the official tasks and scorers.
How to pay $0.80 per 1,000 pages
1. Create a key under Agents & API in the workspace. A new account gets $10 of credit, no card, which covers 12,500 pages.
2. Set the address to https://api.specstream.ai/zenrows/v1/ where your code has https://api.zenrows.com/v1/, and send the SpecStream key as apikey. In Python:
import requests
URL = "https://api.specstream.ai/zenrows/v1/" # was https://api.zenrows.com/v1/
reply = requests.get(
URL,
params={"apikey": SPECSTREAM_KEY, "url": "https://en.wikipedia.org/wiki/Web_scraping", "response_type": "markdown"},
timeout=60,
)
reply.raise_for_status()
print(reply.text[:500])3. With ZenRows' Python SDK, the change is the constructor: ZenRowsClient(SPECSTREAM_KEY, base_url="https://api.specstream.ai/zenrows/v1/"), or set ZENROWS_SCRAPER_BASE_URL to the same address. Read 429 as a call to send again after Retry-After. It is not charged.
Frequently asked questions
Something we didn't answer? Talk to a human
How much does ZenRows cost?
Does ZenRows have a free plan?
How many credits does a ZenRows request cost?
Do ZenRows credits roll over?
Does ZenRows charge for failed requests?
404 and 410 responses count as successful and are charged. On SpecStream a missing, blocked or empty page is not charged.Does ZenRows have pay as you go pricing?
Sources
SpecStream wrote this page. Each figure about ZenRows and other providers comes from that company's own page, read on the date shown.
- ZenRows pricing docsdocs.zenrows.com/first-steps/pricing.md, read Nov 12, 2026
- ZenRows pricingzenrows.com/pricing, read Nov 12, 2026
- SpecStream ZenRows pass tablespecstream.ai/specstream/dialects/zenrows.md, read Nov 12, 2026
- ScrapingBee pricingscrapingbee.com/pricing/, read Nov 12, 2026
- ScrapingBee documentationscrapingbee.com/documentation/, read Nov 12, 2026
- ScraperAPI pricingscraperapi.com/pricing/, read Nov 12, 2026
- Firecrawl pricingfirecrawl.dev/pricing, read Nov 12, 2026
- SpecStream benchmarksspecstream.ai/benchmarks, read Nov 12, 2026
- SpecStream for agentsspecstream.ai/agents.md, read Nov 12, 2026




