CrawlCheck

Guides · 2026-10-03 · By · 0 views

Best web scraping APIs compared: ScrapingBee, ZenRows and more

ScrapingBee, ZenRows, ScraperAPI, Bright Data, Firecrawl and Apify compared on free tiers, entry plans and what a JavaScript or protected page really costs, with where CrawlCheck fits.

Converted into pages: ZenRows Build ($16) gives 45,000 plain or 9,000 JavaScript pages; ScrapingBee Hobby ($19) 75,000 plain or 15,000 JavaScript; Firecrawl Hobby ($19) 5,000 pages at one credit each; ScraperAPI Hobby ($49) 100,000 plain; Bright Data charges $1.50 per 1,000 successful requests. Apify bills compute. CrawlCheck is not a scraper; it checks whether AI crawlers can read your own site, free.

Share of all scans carrying each finding named aboveANSWER_ENGINE_REFUSED5.9%Share of all scans carrying eachfinding named aboveANSWER_ENGINE_REFUSED5.9%
Read live from the same counters the dataset page uses, at the moment this page was served. Bars are scaled to the largest value shown, not to 100%.

Web scraping APIs sell the same thing in different units: a page fetched for you, through proxies, optionally rendered in a browser. The headline plan prices look similar; what differs is how many credits a hard page costs. A page that needs JavaScript and a premium proxy costs 25 times a plain page at two of the providers below. This comparison converts each plan into the pages you will actually get, and places CrawlCheck where it belongs: not as a scraper, but as the check of whether AI crawlers can read your own site.

Disclosure: CrawlCheck publishes this comparison and is one of the products in it. Every figure about another company comes from that company’s own pricing or documentation page, linked where it appears, read on 3 October 2026. Where CrawlCheck does less than a competitor, the tables say so.

Plans and what a hard page costs #

APIFreeEntry planPlain pageJavaScript pageBehind bot protection
ScrapingBee1,000 credits, no cardHobby $19/mo, 75,000 credits1 credit (render_js=false)5 credits (the default)Premium proxy + JS 25; stealth 75
ZenRows5,000 credits a month, no cardBuild $16/mo, 45,000 credits1 credit5 creditsPremium proxy 10; with JS 25
ScraperAPI1,000 credits; 7-day trial with 5,000Hobby $49/mo, 100,000 credits1 creditNot priced separately on the pricing page+10 credits on sites behind Cloudflare, DataDome or PerimeterX
Bright Data Web Unlocker5,000 requests a monthPay as you go $1.50 per 1,000 successful requests; Scale $499/moPer successful requestBrowser rendering includedCAPTCHA solving included
Firecrawl1,000 creditsHobby $19/mo, 5,000 credits1 credit1 credit (no separate render charge listed)Not priced separately on the pricing page
Apify$5 of usage a monthStarter $19/mo of usageDepends on the actorCompute units at $0.20 eachResidential proxy $8/GB
CrawlCheckUnlimited scans of a siteAPI $99/mo, 2,000 scansNot a scraperReports content that only exists after JavaScriptReports refusals and challenges as findings

Sources: ScrapingBee and its docs, ZenRows, ScraperAPI, Bright Data, Firecrawl, Apify, CrawlCheck pricing.

Pages per entry plan, worked out #

PlanPlain pagesJavaScript pagesJavaScript + premium proxy
ZenRows Build ($16)45,0009,0001,800
ScrapingBee Hobby ($19)75,00015,0003,000
Firecrawl Hobby ($19)5,0005,000not published
ScraperAPI Hobby ($49)100,000not publishedabout 9,000 at 11 credits

Bright Data bills per successful request, so its unit is already a delivered page: 1,000 for $1.50 pay as you go. The cheapest plan on paper is not always the cheapest for your mix of pages; work out the mix first.

Choosing a scraping API #

Estimate your cost before you buy #

The plan that looks cheapest depends on how your pages split between plain HTML, JavaScript and bot-protected targets. Multiply each share by its credit cost and add them up. A worked example for 10,000 pages a month, 70 percent plain, 20 percent needing JavaScript and 10 percent needing JavaScript plus a premium proxy, using the credit costs in the table above:

Page typePagesCredits each (ScrapingBee and ZenRows)Credits
Plain HTML7,00017,000
JavaScript2,000510,000
JavaScript + premium proxy1,0002525,000
Total10,00042,000

That mix fits ScrapingBee’s Hobby plan (75,000 credits) and, just, ZenRows’ Build plan (45,000). The 10 percent of hard pages costs 60 percent of the credits, which is the usual pattern: the bill is driven by the hardest targets, not the page count. If the hard share doubles to 20 percent (with plain pages down to 60 percent), the same 10,000 pages need 66,000 credits.

Test a page before you pay to render it #

Rendering is the default on some APIs and costs five times a plain fetch. Before a large job, fetch a sample of target URLs both ways and compare the text you get back. If the plain fetch already carries the content you need, switch rendering off for that site and the same credits go five times further. The pages where the two differ are the ones built by JavaScript; only those need the browser.

Check how failures are billed #

Bright Data prices per successful request, so a blocked attempt costs nothing. The credit-based APIs price per request in credits; read each provider’s documentation on whether failed or blocked attempts consume them before comparing plans, because on hard targets the failure rate decides the real cost per delivered page.

Scrape the way you would want to be crawled #

Where CrawlCheck fits, and where it does not #

CrawlCheck does not scrape other sites and is not a substitute for any API above. It answers the reverse question for your own site: when AI crawlers such as GPTBot, ClaudeBot and PerplexityBot fetch it, are they allowed, served and able to quote it? A scraping API tells you nothing about that, because it is not the one your firewall treats as an AI crawler. Across CrawlCheck’s scans, an answer engine’s crawler is refused while a browser is served on 5.9% of sites. Run the free scan for that; use a scraping API for data.

Cost detail on budget plans: best AI web crawler on a budget.

Every figure above came out of this scanner.

Point it at your own domain and see the same measurements, free.

Scan a domain — free

The main product

Found this on your own site? We fix it for $749.

Scan free to see where you stand. The fix is one site, every finding implemented and re-measured, with a sealed before and after.

Questions this post answers

What is the best web scraping API?

It depends on the pages. For plain HTML, ScrapingBee ($19 for 75,000 credits) and ZenRows ($16 for 45,000) go furthest. For hard targets, Bright Data Web Unlocker charges only for successful requests ($1.50 per 1,000 pay as you go). For Markdown into LLM pipelines, Firecrawl. For scheduled scrapers, Apify.

How many credits does a JavaScript page cost?

ScrapingBee and ZenRows charge 5 credits for a JavaScript-rendered page and 25 with a premium proxy. Firecrawl lists 1 credit a page with no separate rendering charge. ScraperAPI adds 10 credits for sites behind Cloudflare, DataDome or PerimeterX.

Which scraping APIs have a free plan?

ZenRows gives 5,000 credits a month, Bright Data Web Unlocker 5,000 requests a month, ScrapingBee and Firecrawl 1,000 credits, ScraperAPI 1,000 credits plus a 7-day 5,000-credit trial, and Apify $5 of usage a month. Figures read 3 October 2026.

Is CrawlCheck a web scraping API?

No. CrawlCheck checks whether AI crawlers can reach, read and quote your own site, comparing what each crawler identity is served. It does not extract data from other sites. Its API is for scan results, from $99 a month for 2,000 scans.

Why does a scraping API reach my site when ChatGPT cannot?

Because sites and CDNs treat clients by name and network. A scraping API identifies as itself or a browser, often through residential proxies; GPTBot identifies as GPTBot from OpenAI's addresses. A rule can refuse one and serve the other. A free CrawlCheck scan shows what each AI crawler receives.

Related findings

How anything measured in this article was measured15client identitiesone second, one address5machine filesapex and www114named agentsresolved from robots.txt24sections scoredreach, read, quoteHow anything measured here was measured15 client identities5 machine files114 named agents24 sections scoredone second, one addressapex and wwwresolved from robots.txtreach, read, quote
No account, nothing installed, and the same sequence on every domain — which is what makes one scan comparable to another. Run it on your own site.

Comments

Comments are read before they appear. Nothing is published automatically, and no account is needed.

Writing about this? Facts, live figures and marks — every number on that page is dated and traceable to a scan.

All guides · The dataset · How the dataset works