ScrapingBee vs ScraperAPI: the same 96 requests through both

- ScrapingBee is the better default for most scraping. Same 96 requests through both on June 26, 2026: 87.5% success each, but ScrapingBee returned JavaScript-rendered pages about 3.5x faster (median 3.8 s against 13.5 s). A rerun on September 13 came out the same way: 2.2 s against 13.2 s.
- It's also cheaper. On each vendor's cheapest plan (ScrapingBee Hobby at $19, ScraperAPI Hobby at $49), 1,000 requests cost 1.9x to 19x more on ScraperAPI, because ScraperAPI charges more credits per request and each credit costs more. Plan prices checked October 1, 2026.
- Neither bills a blocked page, and both bill a 404. On September 13 an Amazon product URL came back as a 404 on both, and both charged 5 credits for it.
- Pick ScraperAPI if you want its parsed Amazon, Google, and SERP endpoints or its batch tools for very large jobs.
- If you'd rather not buy credits at all, a pay-per-request page scraper returned the real page on 20 of 23 commonly scraped sites on October 1, 2026, one fetch each, G2 included, for $0.0237 in all.
Built on AnyAPI
476 scraping and data APIs behind one key.
Every endpoint in this post is one call away. Pay per request in USD from a prepaid wallet, with automatic failover when a provider breaks. No subscription, no card to start.
Get ~160 free requests$0.10 of credit on signup.You've got a scraper that keeps hitting block pages, and you're down to two tabs: ScrapingBee and ScraperAPI. Both promise that you send a URL, they handle the proxy, the headless browser, and the retries, and you get the page back.
On paper they do the same job, so I ran them head to head instead of reading their landing pages. Same 8 URLs through each API, in basic and JavaScript-rendering modes, three times each: 96 requests.
I measured whether the real page came back, how long it took, and what it cost in credits, read straight from each API's own response header.
The success rate came out identical. Nothing else did.
| What I measured | ScrapingBee | ScraperAPI | Edge |
|---|---|---|---|
| Success rate, standard tier | 87.5% | 87.5% | Tie |
| Median latency, JS render | 3.8 s | 13.5 s | ScrapingBee, ~3.5x faster |
| Speed when a request fails | 3 to 6 s | 36 to 57 s | ScrapingBee |
| Credit pricing model | Flat (1 or 5) | Tiered by site (1 to 30) | ScrapingBee, predictable |
| Cost per 1,000 e-commerce pages, no JS, cheapest plan | $0.25 | $4.90 | ScrapingBee, about 19x cheaper |
| Cheapest plan | $19 for 75,000 credits | $49 for 100,000 credits | ScrapingBee |
| Structured Amazon / Google / SERP endpoints | Some | More | ScraperAPI |
| Credits roll over month to month | No | No | Tie |
How did I test them?
The 8 targets run from easy to hard: example.com, the books.toscrape.com and quotes.toscrape.com/js sandboxes, the Hacker News front page, an e-commerce sandbox, a live Amazon product page, a Best Buy search page, and a G2 page behind Cloudflare's bot protection.
Each ran in basic mode and with JS rendering, three trials apiece. JS rendering means the vendor loads the page in a real browser first, so anything drawn by scripts, like the quotes on the /js sandbox, is in what you get back.
A request counted as a success only if the API returned 200, the site returned 200, and a known piece of that page's text was in the body. A 200 that carries a captcha or a block page is a failure, because for your code it is.
Both ran on the standard proxy tier, no premium or stealth proxies. A proxy is the IP address your request goes out through, so the site sees the vendor's address instead of yours.
Credits came from the spb-cost and sa-credit-cost response headers, the same ones you'd see on your own calls, so cost is measured, not guessed. The September rerun used the same eight pages with rendering on.
Which one gets the page more often?
Neither. If you stay on the standard tier, both succeed on 87.5% of requests (21 of 24 each).
You'd have gotten the real page from both on every easy and medium target in June: the sandboxes, Hacker News, the e-commerce sandbox, and the Amazon product page. Best Buy was clean for ScrapingBee (3 of 3) and nearly clean for ScraperAPI (2 of 3).
The one wall you'd hit on both was the G2 page. ScrapingBee got it 0 times out of 6, ScraperAPI 1 out of 6.
On the standard tier, neither gets past serious bot protection, and both sell a premium or stealth proxy for exactly that, at a higher credit cost. If your targets are behind Cloudflare, DataDome, or PerimeterX, budget for that tier on either vendor.
So if your only question is "can it fetch the page," it's close to a coin flip. The differences are how fast you get it and what you pay.
Which one is faster?
If you don't need rendering, they're close: a median of 1.7 s on ScrapingBee and 2.3 s on ScraperAPI.
JavaScript rendering is where they split. If you need rendered pages, ScrapingBee returned them in a median of 3.8 s.
On ScraperAPI you'd wait 13.5 s for the same work, and on a couple of sites it ran past 25 s.
The averages hide a second timing fact: when a request is going to fail, the two make you wait very different amounts of time.
ScrapingBee gave up on the G2 page in 3 to 6 seconds and handed you a clean error. ScraperAPI retries internally, so it took 36 to 50 seconds to return the same failure, and one Best Buy attempt ran 57 seconds before it errored.
Neither charged for those failures, so the cost was only time. If you run any volume, though, 45-second hangs add up.
Did it hold up in September?
Yes. On September 13, 2026, the same eight pages went through both again, rendered only, three rounds each:
| Page | ScrapingBee, rendered | ScraperAPI, rendered |
|---|---|---|
| Static page, two sandboxes, Hacker News, e-commerce sandbox | 15 of 15, 1.1 to 4.5 s, 5 credits each | 13 of 15, 6.8 to 43 s, 10 to 20 credits each; two calls never returned inside two minutes |
| G2 page behind Cloudflare | 0 of 3: a 500 after 4.5 to 5.7 s, not billed | 1 of 3: 30 credits when it worked, a 500 after 29 s when it didn't |
| Best Buy search | 3 of 3, 2.4 to 4.5 s | 3 of 3, 14 to 20 s, 20 credits each |
| Amazon product page | 0 of 3: a 404, billed 5 credits | 0 of 3: a 404, billed 5 credits |
| Pages delivered | 18 of 24 | 17 of 24 |
| Credits for the 24 calls | 105 | 265 |
| Median on delivered pages | 2.2 s | 13.2 s |
Same order as June: ScrapingBee faster and cheaper, ScraperAPI slower to fail. Two things changed, and you'd see both on the bill.
The Amazon product page that both fetched in June came back as a 404 on both, and both charged for that 404. And ScraperAPI charged 20 credits, not 10, to render the static page and the Best Buy search.
Which one costs less?
A credit is each vendor's unit of spend: you buy a monthly bundle of them, and every request uses up some. How many depends on the vendor.
ScrapingBee charges a flat rate. Every request you send is 1 credit without JavaScript and 5 with it, whatever the site. I saw exactly those two numbers on all 8 sites.
The ScrapingBee docs match: 1 credit, 5 with rendering, 25 for a premium proxy with rendering, 75 for stealth.
ScraperAPI charges by site. A plain page is 1 credit, but in June an e-commerce or news site cost 10 credits in basic mode, Amazon cost 5, and the protected G2 page cost 30.
ScraperAPI's credit docs list the same pattern: 10 to render, 5 for Amazon, 25 for Google, 30 for LinkedIn, and 10 more for a site behind Cloudflare, DataDome, or PerimeterX.
Then there are the plans you'd actually buy.
ScrapingBee's cheapest is Hobby at $19 for 75,000 credits, which includes JavaScript rendering. ScraperAPI's cheapest is Hobby at $49 for 100,000.
So a ScraperAPI credit costs you about twice as much, and you spend more of them per request. At the same $49, ScrapingBee's Freelance plan gives you 250,000 credits, two and a half times as many.
| Monthly plan, checked October 1, 2026 | ScrapingBee | ScraperAPI |
|---|---|---|
| Cheapest | $19 / 75,000 credits | $49 / 100,000 credits |
| Second | $49 / 250,000 | $149 / 1M |
| Third | $99 / 1M | $299 / 3M |
| Fourth | $249 / 3M | $475 / 5M |
| Top published | $599 / 8M | $975 / 10.5M |
Here's what 1,000 requests cost you if you use every credit in the plan:
| Request type | Credits (ScrapingBee / ScraperAPI) | ScrapingBee Hobby ($19) | ScrapingBee Freelance ($49) | ScraperAPI Hobby ($49) | ScraperAPI vs ScrapingBee, cheapest plans |
|---|---|---|---|---|---|
| Plain page, no JS | 1 / 1 | $0.25 | $0.20 | $0.49 | 1.9x |
| Plain page, JS render | 5 / 10 | $1.27 | $0.98 | $4.90 | 3.9x |
| E-commerce or large site, no JS | 1 / 10 | $0.25 | $0.20 | $4.90 | 19.3x |
| E-commerce or large site, JS render | 5 / 20 | $1.27 | $0.98 | $9.80 | 7.7x |
If you're spending the same $49 a month, the gap is wider, 2.5x to 25x, because ScrapingBee's Freelance credits are cheaper than its Hobby ones.
If you're on the bigger plans, it narrows. ScraperAPI's $149 Startup against ScrapingBee's $99 Startup is 1.5x on a plain page, but e-commerce still runs 6x to 15x more, because the per-request credit count doesn't change.
If most of what you scrape is plain HTML on a high-volume plan, the two get close. Neither rolls credits over: whatever you don't use resets at the end of the month on both.
What are the limits of this test?
It's the standard proxy tier only. If you pay for premium or stealth proxies, you pay more on both, and the G2 row would change.
It's eight pages on two dates, and latency moves with the site's load and the time of day. I don't know how either does on your targets at your hour.
And it tested the generic fetch endpoint both sell, not ScraperAPI's structured endpoints or its batch product, which are the main reasons you'd pick it.
Which one should you use?
Reach for ScrapingBee for most scraping. It's faster on the JavaScript pages that make up most real scraping, and its flat pricing means you can predict the bill.
It also came out cheaper on every workload I tested, on its cheapest plan and at the same $49. If you scrape a lot of e-commerce, the gap decides it on its own.
ScrapingBee cons:
- Fewer structured endpoints than ScraperAPI
- Bills a 404, 410, and 413
- Credits expire monthly
ScrapingBee pricing: 1,000 free credits, no card; Hobby $19 for 75,000 credits (5 credits a rendered page, and leftovers expire monthly)
Reach for ScraperAPI when you want its structured endpoints or batch tools. It has parsed Amazon, Google, and SERP results and an async data-pipeline product for very large scheduled jobs, and it matched ScrapingBee on raw success rate.
If you'd otherwise write and maintain your own parsers for those sources, weigh that against the price gap. If you only want pages back, skip it.
ScraperAPI cons:
- 13.5 s median on rendered pages in June
- 36 to 57 s to fail
- 1 to 30 credits a request, by site
ScraperAPI pricing: 5,000 credits for 7 days; Hobby $49 for 100,000 credits (10 to render, up to 30 by site, and leftovers expire monthly)
For anything behind Cloudflare-class protection, you're buying the premium or stealth tier on whichever you pick, so compare them there too. And if you're scraping a few hundred pages once, ScrapingBee's 1,000 free credits, with no time limit, may cover the whole job.
| ScrapingBee | ScraperAPI | What it means for you | |
|---|---|---|---|
| Credits per request | Flat: 1 (no JS), 5 (JS) | 1 to 30 by site | ScrapingBee's bill is predictable; ScraperAPI charges more for e-commerce, search, and protected sites |
| Cheapest plan | $19 / 75,000 credits | $49 / 100,000 credits | ScrapingBee is cheaper to start and per credit |
| Median JS latency | 3.8 s (June), 2.2 s (September) | 13.5 s (June), 13.2 s (September) | ScrapingBee returns rendered pages several times faster |
| Failure speed | 3 to 6 s | 29 to 57 s | ScraperAPI makes you wait through its retries |
| Billed statuses | 200, 404, 410, 413 | 200, 404 | A blocked page (500) is free on both; a missing page (404) is billed on both |
| Credits roll over | No | No | Unused credits expire monthly on both |
| Free trial | 1,000 credits, no card | 5,000 credits, 7 days | Both let you test before paying |
| Structured endpoints (Amazon, Google, SERP) | Some | More | ScraperAPI is more built out for parsed store and search data |
What if you don't want a credit plan at all?
Both are the same shape of product: a single-vendor subscription, priced in credits that expire every month, where you read a credit table to know what a request costs. That's fine when scraping is your whole job.
It chafes when scraping is one feature among many and your usage is spiky.
AnyAPI charges you per request, in dollars, with no plan. A rendered page through web.scrape is $0.70 per 1,000, as Markdown or HTML, at any volume, and nothing expires.
If the first source for a page is blocked, your call moves to another one, up to $1.50 per 1,000, and a page every source fails on costs nothing. On the September 13 pages it got the G2 page six times out of six.
It doesn't do screenshots or async batches. If you manage proxy modes and browser sessions yourself, stay with one of the two above.
Which popular sites does it get through?
Both credit vendors' standard tier failed the G2 page in these tests. So on October 1, 2026, 23 of the URLs people most often try to scrape went through web.scrape, one fetch per site, one call at a time: stores, property and job sites, review sites, social profiles, a paywalled news article, a Cloudflare test page, and Wikipedia as a control.
A call counted only when the page's own content was in the text, the same rule as the head-to-head, so a captcha or a paywall preview that came back as a 200 was a miss.
| Site, October 1, 2026 | Real page | Time | Charged | What came back instead |
|---|---|---|---|---|
| Zillow city search | Yes | 1.5 s | $0.00125 | |
| Cloudflare challenge test page | Yes | 2.5 s | $0.00125 | |
| Etsy search | Yes | 3.0 s | $0.00125 | |
| Craigslist listings | Yes | 3.2 s | $0.0007 | |
| X profile | Yes | 3.6 s | $0.0007 | |
| G2 product reviews | Yes | 3.6 s | $0.00125 | |
| Booking.com hotel | Yes | 3.6 s | $0.00125 | |
| Walmart product | Yes | 3.7 s | $0.00125 | |
| Wikipedia article (the control) | Yes | 4.2 s | $0.0007 | |
| Medium article | Yes | 4.2 s | $0.0007 | |
| Trustpilot company reviews | Yes | 4.6 s | $0.00125 | |
| Redfin city search | Yes | 4.7 s | $0.00125 | |
| LinkedIn company page | Yes | 4.7 s | $0.0007 | |
| Indeed job search | Yes | 4.8 s | $0.00125 | |
| Tripadvisor attraction | Yes | 5.2 s | $0.00125 | |
| Shopify store product | Yes | 5.5 s | $0.0007 | |
| Amazon product | Yes | 6.1 s | $0.00125 | |
| Reddit thread | Yes | 6.4 s | $0.0015 | |
| Instagram profile | Yes | 6.4 s | $0.0015 | |
| eBay search | Yes | 9.9 s | $0.00125 | |
| New York Times article | No | 4.0 s | $0.0015 | A paywall preview ("we are checking your access"), charged |
| Yelp business page | No | 16.5 s | Free | An error |
| Glassdoor company page | No | 23.4 s | Free | An error |
20 of the 23 sites came back with the real page, G2 included. The median call took 4.6 seconds, and every page came back inside 10. The 23 calls cost $0.0237: the two errors were free, and the paywall preview cost $0.0015.
Here's one call, and what it cost: one of ScrapingBee's own blog posts, rendered, as Markdown, for $0.0007 in 2.8 seconds on September 11, 2026.
curl https://api.getanyapi.com/v1/run/web.scrape \
-H "Authorization: Bearer $ANYAPI_KEY" \
-d '{"url": "https://www.scrapingbee.com/blog/web-scraping-101-with-python/", "formats": ["markdown"]}'import os, requests
r = requests.post(
"https://api.getanyapi.com/v1/run/web.scrape",
headers={"Authorization": f"Bearer {os.environ['ANYAPI_KEY']}"},
json={"url": "https://www.scrapingbee.com/blog/web-scraping-101-with-python/", "formats": ["markdown"]},
)
body = r.json()
print(body["costUsd"], body["output"]["data"]["title"])
# 0.0007 Python Web Scraping Tutorial for 2026 with Examples & Best Practicesconst r = await fetch("https://api.getanyapi.com/v1/run/web.scrape", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.ANYAPI_KEY}` },
body: JSON.stringify({ url: "https://www.scrapingbee.com/blog/web-scraping-101-with-python/", formats: ["markdown"] }),
});
const { costUsd, output } = await r.json();
console.log(costUsd, output.data.markdown.length > 0); // 0.0007 trueIf you want each one priced against paying per request, with five more scraping APIs, see the best ScrapingBee alternative and best ScraperAPI alternative pages.
Frequently asked questions
- Is ScrapingBee or ScraperAPI better?
- For most scraping, ScrapingBee. In my June run they tied on success rate, but ScrapingBee was about 3.5x faster on JavaScript-rendered pages, and a September rerun showed the same gap. It's also cheaper on every workload I tested. ScraperAPI is the better pick if you want its structured Amazon, Google, and SERP endpoints or its async batch product for very large jobs.
- Is ScrapingBee cheaper than ScraperAPI?
- Yes. On each vendor's cheapest plan (ScrapingBee Hobby at $19 for 75,000 credits, ScraperAPI Hobby at $49 for 100,000), 1,000 requests cost 1.9x more on ScraperAPI for plain pages and about 19x more for e-commerce pages, because ScrapingBee charges a flat 1 credit where ScraperAPI charges up to 10. At the same $49 the gap is 2.5x to 25x. It narrows on bigger plans but doesn't close. Prices checked October 1, 2026.
- Do ScrapingBee and ScraperAPI charge for failed requests?
- Not for a blocked or failed page: both return a 500 and don't bill it. Both do bill a 404. ScrapingBee's docs list 200, 404, 410, and 413 as billed, and ScraperAPI's list 200 and 404. On September 13, 2026, an Amazon product URL came back as a 404 on both, and both charged 5 credits for it.
- Can ScrapingBee or ScraperAPI scrape Cloudflare-protected sites?
- Not reliably on the standard tier. In June ScrapingBee got a Cloudflare-protected G2 page 0 times in 6 and ScraperAPI once. Both sell a premium or stealth proxy for these sites that costs more credits per request, so compare them on that tier if protected sites are your job.
- Which has a better free trial?
- ScraperAPI gives 5,000 credits for 7 days. ScrapingBee gives 1,000 credits with no card and no time limit. ScraperAPI's trial is bigger; ScrapingBee's lets you take longer to evaluate.
Use data responsibly and follow AnyAPI's Acceptable Use Policy.