ScraperAPI Review: Features, Pricing & Tests
- ScraperAPI is a credit-based scraper API: 1 credit per plain GET, 10 for JS rendering or premium proxies, 30 for ultra-premium, on a pool of 40M+ proxies (per its docs, mid-2026).
- Confirmed plans from its docs are Free ($0, 1,000 credits, 5 threads), Professional ($975/mo, 10.5M credits, 300 threads) and Advanced ($1,975/mo, 21.5M credits, 500 threads). Entry-tier slider prices change, so confirm at the source.
- Free trial is 5,000 credits for 7 days. Geotargeting is US/EU only on lower tiers; the full 70-entry country list unlocks on Business and up.
- Strengths devs cite: simple integration, structured endpoints (Amazon, Google, Walmart, eBay), async scraper. Common gripe: render and premium requests burn 10x credits, so real costs climb fast.
- Performance figures here are approximate, compiled from public + vendor figures, not our own first-hand tests. Independent benchmarks pending (how we test).
ScraperAPI is one of the older managed scraper APIs, and the question I get is whether its credit model and feature set still earn the price in 2026. This is a single-vendor review: what it is, how the pricing works, the features that matter, honest pros and cons with sentiment attributed, and who it fits. Every price and feature below comes from ScraperAPI’s own documentation and pricing pages in mid-2026, attributed inline, because pricing pages move and review-site numbers go stale fast. If you want the wider category first, start with the web scraping pillar guide.
One disclosure up front: bestscraperapi.com earns affiliate commissions from some of the API vendors I write about, including the ChocoData comparison at the end. That does not change the numbers. Pricing comes straight from each vendor’s own page, and I flag every figure I could not verify rather than guessing.
A second note on performance. The speed and success-rate figures in this review are approximate, compiled from ScraperAPI’s own published figures plus aggregated public reports. They are not bestscraperapi.com’s own first-hand tests. My independent, like-for-like benchmarks are still in progress; see how we test for the methodology.
What is ScraperAPI?
ScraperAPI is a proxy-and-rendering API that takes a URL and returns the page’s HTML or structured JSON, handling proxy rotation, browser rendering, and anti-bot retries for you. You send a request to its endpoint with your API key and the target URL, and the service routes it through what its docs describe as a pool of “over 40 million proxies,” retrying internally until a request succeeds. The point of a tool like this is to remove the proxy and CAPTCHA plumbing so you only write the URL and the parser. For the engineering trade-off behind that, see scraping without getting blocked.
It bills by API credit rather than per request, which is the detail that drives the whole cost model: a plain fetch costs 1 credit, but turning on JavaScript rendering or premium proxies multiplies that. I break the credit math down in the next two sections.
How much does ScraperAPI cost?
ScraperAPI uses monthly plans priced by the number of API credits you get, and only three tiers are spelled out with exact figures in its documentation. The Free, Professional, and Advanced numbers below are confirmed from ScraperAPI’s docs in mid-2026. The lower paid tiers (commonly labeled Hobby, Startup, and Business) are set on a slider on the pricing page, and I could not confirm their exact prices and credit counts from a primary source, so I am not printing numbers I cannot verify. Confirm those at the ScraperAPI pricing page before you buy.
| Plan | Price/mo | API credits/mo | Concurrent threads | Geotargeting |
|---|---|---|---|---|
| Free | $0 | 1,000 | 5 | US/EU regions |
| Professional | $975 | 10,500,000 | 300 | Full 70-entry list |
| Advanced | $1,975 | 21,500,000 | 500 | Full 70-entry list |
The free trial gives 5,000 credits for the first 7 days after sign-up, per the docs, after which the account drops to the 1,000-credit Free plan. Geotargeting matters for budgeting: the docs note that lower tiers (Hobby and Startup) are limited to US and EU regions, while individual country codes across the full 70-entry “Standard Geo list” unlock on Business and above.
The headline price tells you little until you apply the credit multipliers, which is the next section. A 10.5M-credit plan sounds enormous, but if your workload needs JavaScript rendering on every request, your effective request budget is one tenth of that.
How do ScraperAPI credits work?
One API credit equals one plain GET request, and every heavier feature multiplies that cost. This is the most important table in the review, because it converts a credit allowance into a real request count for your workload. All values are from ScraperAPI’s documentation in mid-2026.
| Request type | Parameter | Credits per request |
|---|---|---|
| Standard GET | (default) | 1 |
| JavaScript rendering | render=true | 10 |
| Premium proxies | premium=true | 10 |
| Premium + rendering | premium=true&render=true | 25 |
| Ultra-premium | ultra_premium=true | 30 |
| Ultra-premium + rendering | ultra_premium=true&render=true | 75 |
Work an example through it. On the Professional plan’s 10.5M credits, a workload of pure 1-credit fetches buys 10.5M requests. The same plan buys 1.05M rendered requests (10 credits each), or 140,000 ultra-premium-plus-render requests (75 credits each). So the right way to read any ScraperAPI plan is credits divided by the cost of your typical request, not the raw credit number. ScraperAPI only deducts credits for successful requests, per its docs, so failed attempts after its retries do not count against you.
What features does ScraperAPI offer?
ScraperAPI bundles proxy management, JS rendering, geotargeting, structured-data endpoints, an async service, and a low-code pipeline. Here is what its documentation confirms exists, by exact name, in mid-2026.
| Feature | Parameter / endpoint | What it does |
|---|---|---|
| JavaScript rendering | render=true | Runs a headless browser to load dynamic pages |
| Geotargeting | country_code (2-letter) | Routes through a chosen country’s IPs |
| Device type | device_type=desktop|mobile | Sets desktop (default) or mobile user agents |
| Auto-parse | autoparse=true | Auto-parses supported domains to JSON (default false) |
| Sticky sessions | session_number | Reuses an IP; sessions expire 15 min after last use |
| Async scraper | async.scraperapi.com/jobs | Submits large batches asynchronously |
| Structured data | /structured/... endpoints | Returns parsed JSON for specific sites |
| DataPipeline | low-code UI | Schedules and automates jobs, delivers to a webhook |
The structured-data endpoints are the standout for e-commerce and SERP work. The docs list dedicated endpoints for Amazon Search (/structured/amazon/search), Google Search (/structured/google/search), Google Shopping (/structured/google/shopping), Walmart Search (/structured/walmart/search), and eBay Product (/structured/ebay/product), among others. These return parsed JSON, so you skip writing and maintaining HTML selectors yourself, the kind of brittle work covered in the XPath and CSS selectors guide. The async scraper service is built for sending large batches without holding open connections, and DataPipeline is a low-code layer for scheduling jobs and pushing results to a webhook.
A minimal request looks like a single URL call. The pattern below is from ScraperAPI’s documented format; I have not executed it here, so I am not pasting fabricated output.
# Documented request pattern (not run here)
curl "https://api.scraperapi.com/?api_key=YOUR_KEY&url=https://example.com&render=true&country_code=us"
If you are wiring this into Python, the integration is a standard HTTP call you can drop into the workflow from the Python web scraping guide or pair with Requests.
How fast and reliable is ScraperAPI?
On published figures, ScraperAPI advertises an average success rate of around 98%, per its general FAQ in mid-2026. I want to be precise about what that number is and is not. It is a vendor self-report measured on ScraperAPI’s own target sites under its own conditions, so it is directional, not a like-for-like benchmark against other APIs.
| Metric | Figure | Source | Label |
|---|---|---|---|
| Average success rate | ~98% | ScraperAPI FAQ, mid-2026 | Vendor self-reported |
| Latency (plain vs rendered) | Approx. 1-3s plain, higher with render=true | Compiled from public + vendor figures | Approximate, not first-hand |
| Proxy pool | 40M+ proxies | ScraperAPI docs, mid-2026 | Vendor-published |
Two caveats before you lean on these. First, latency depends heavily on whether rendering is on: a render=true request runs a real browser and is far slower than a 1-credit raw fetch, so any single latency number hides that spread. Second, the latency range above is approximate, compiled from public reports and vendor material, not bestscraperapi.com’s own measurement. My independent, same-target benchmark across providers is in progress at how we test; check back for measured numbers rather than trusting any vendor’s self-report, including this one.
What are the pros and cons of ScraperAPI?
The honest summary is that ScraperAPI is easy to integrate and strong on structured endpoints, while the credit multipliers make rendered and premium workloads expensive. Sentiment below is attributed: these reflect commonly reported developer experience and ScraperAPI’s own documented behavior, not a controlled test by me.
| Pros | Cons |
|---|---|
| Simple single-URL integration across cURL, Python, Node, PHP, Ruby, Java (per docs) | Rendered requests cost 10x and premium up to 30x a plain fetch, so real costs climb |
| Dedicated structured endpoints (Amazon, Google, Walmart, eBay) return parsed JSON | Full country-level geotargeting is gated to Business tier and above |
| Bills only successful requests, per docs | Mid-tier slider pricing is hard to verify from a primary source |
| Async scraper plus low-code DataPipeline for batch and scheduled jobs | 7-day, 5,000-credit trial is short for evaluating a heavy workload |
| Large 40M+ proxy pool with premium and ultra-premium tiers | A 98% self-reported success rate is not independently verified |
The recurring theme in developer feedback is the credit math: teams report that the entry credit count looks generous until rendering or premium proxies cut their effective request budget by 10x or more. The structured endpoints draw the most consistent praise because they remove parser maintenance for the highest-demand sites.
Who is ScraperAPI for?
ScraperAPI fits teams that need e-commerce or SERP data at scale and value parsed JSON from dedicated endpoints over rolling their own parsers. If your workload is mostly Amazon, Google, Walmart, or eBay pages, the structured endpoints and async service are the draw, and the higher plans give you the thread counts (300 to 500) to push volume. It also suits developers who want a mature, well-documented API with integrations across six languages.
It fits less well if your budget is tight and your targets demand JavaScript rendering on every request, because the 10x render multiplier erodes the credit allowance quickly, or if you need country-level geotargeting on a low tier, since that is gated to Business and up. For those cases, compare the per-request economics against a cheaper-entry alternative before committing.
How does ScraperAPI compare to ChocoData?
ChocoData is the closest alternative I cover on the structured-data axis, and the two differ most on entry price and billing unit. Both are managed scraper APIs that return HTML or parsed JSON and handle proxies and anti-bot for you. The comparison below is factual, from each vendor’s own pages in mid-2026.
| Factor | ScraperAPI | ChocoData |
|---|---|---|
| Lowest paid entry | Slider-priced (unverified from primary source); confirmed tiers start at $975/mo Professional | $19/mo (Vibe), 27,000 requests/mo |
| Free tier | 1,000 credits/mo; 5,000-credit 7-day trial | 1,000 requests/mo (5,000 credits), no card |
| Billing unit | API credits (1 plain, 10 render, 30 ultra-premium) | Credits (5 per request; +10 render, +10 screenshot) |
| Structured data | Dedicated endpoints (Amazon, Google, Walmart, eBay) | Universal endpoint + 453 endpoints across 235 sites, 250+ parity-checked JSON |
| Geotargeting | US/EU on low tiers; 70-entry list on Business+ | Country-matched residential IPs on paid tiers |
| Published reliability | ~98% success (self-reported) | Median 2.6s latency, p95 6s (no headline success rate) |
The practical read: ScraperAPI’s confirmed plans start high ($975/mo) and its lower tiers are slider-priced and hard to verify, while ChocoData publishes a $19/mo paid entry point and exposes a universal endpoint plus 453 dedicated endpoints, per ChocoData’s site in mid-2026. If you want the lowest documented entry price for structured JSON from named sites, ChocoData is the value pick; if you specifically need ScraperAPI’s async service or its particular structured endpoints at high thread counts, the higher ScraperAPI tiers cover that. Try ChocoData.
One last reminder, because it matters for budgeting: every figure here is what each vendor published in mid-2026, and scraper-API pricing changes frequently. Confirm the current number on the vendor’s own pricing page, and check whether a plan bills by request or by credit so you are comparing like with like. For the broader landscape, the web scraping pillar guide and the Scrapy guide cover the free alternatives you can pair with or replace an API with.
FAQ
No. Per its documentation, ScraperAPI only charges API credits for successful requests (and successful structured-data results). Failed requests after its internal retries are not deducted, which matters because JS-rendered and premium requests cost 10 to 30 credits each.
Yes, by adding render=true to a request, which runs a headless browser and costs 10 credits instead of 1. Combine it with premium=true (25 credits) or ultra_premium=true with render (75 credits) for harder anti-bot targets. Plain HTML fetches stay at 1 credit.
Both route through harder-to-detect proxies at higher credit cost: premium=true is 10 credits and ultra_premium=true is 30 credits per request, per the docs. Ultra-premium targets the most aggressive anti-bot systems. Use the cheapest tier that returns the data, since costs scale directly with the parameter you set.