# ScraperAPI Pricing: $49 for 100k Credits, Not 100k Pages (https://www.socialcrawl.dev/blog/scraperapi-pricing) > ScraperAPI pricing: Hobby $49 for 100,000 credits. Google is 25 credits, LinkedIn 30. Plans, JS-render, no rollover, and when a social-data API is cheaper. ScraperAPI pricing starts at **$49/month** on Hobby for **100,000 credits** and 20 concurrent threads, with geotarget locked to the US and EU ([pricing page](https://www.scraperapi.com/pricing/)). One credit is not one page. Official multipliers put Google and Bing at **25** credits, LinkedIn at **30**, `render=true` at **10**, and `ultra_premium+render` at **75** ([credits and request costs](https://docs.scraperapi.com/getting-started/quick-start/credits-and-requests-costs)). Ten thousand Google SERPs burn 250,000 credits, so Hobby tops out at 4,000 of those pages. The official lander never multiplies that out. > **ScraperAPI** — 7/10 > > **Best for:** teams that need URL-in / HTML-out (e-com, Google SERP, Amazon) with proxies, JS render, and CAPTCHA handled in one call. > **Price:** Hobby $49 / 100k credits / 20 threads. 1 credit ≠ 1 request. > **Verdict:** Fair proxy-fetch API. The invoice is the credit table, not the $49 sticker. Skip it as a social-object API. | Dimension | Rating | Why | |---|---|---| | Ease of use | 8/10 | One API call; `max_cost`, `sa-credit-cost` header, Domain Cost Estimator | | Platform coverage | 6/10 | Any URL fetches; structured SDEs are Amazon/Google/Walmart — no IG/TT/YT/X | | Response quality | 7/10 | HTML + optional autoparse; SDEs for named e-com/search domains | | Pricing value | 6/10 | Cheap at 1-credit HTML; Hobby dies fast at 25–75 credit pages. G2 cons cluster on price | | Developer experience | 7/10 | Cost-control API; 429 at the thread cap (dropped, not billed extra) | | Support & docs | 7/10 | Credits doc is good; pricing FAQ and billing FAQ disagree on free-tier numbers; Student plan is docs-only | ## How was this pricing review sourced? This is a desk review of ScraperAPI pricing dated **2026-09-16**, not a 90-day production bake-off. We did not send a measured request volume through ScraperAPI. Every dollar figure below is arithmetic on a published list price, or a number copied from an official page. Sources: the [official pricing lander](https://www.scraperapi.com/pricing/), [credits and request costs](https://docs.scraperapi.com/getting-started/quick-start/credits-and-requests-costs), [JS rendering overview](https://docs.scraperapi.com/javascript-rendering/overview), [cost-control docs](https://docs.scraperapi.com/control-and-optimization/cost-control), [structured-data overview](https://docs.scraperapi.com/structured-data-endpoints/overview), [G2 (15 reviews, 4.3/5)](https://www.g2.com/products/scraper-api/reviews), [ScrapingBee pricing](https://www.scrapingbee.com/pricing/), [Bright Data Web Scraper API](https://brightdata.com/pricing/web-scraper), and the [public pack list](/pricing). Oxylabs returned HTTP 429 when we fetched its pricing page; we do not quote its $/1K figures. Bright Data’s $/1K slider did not extract as a number, so we omit that rate rather than guess. ScrapeGraphAI’s 2026 comparison ([post](https://scrapegraphai.com/blog/scraper-api-comparison)) is a ranking trap, not a source of numbers. The comparison table prices 10,000 Hobby pages at $49 ($0.0049/page). The body later says Hobby is 100,000 credits and that JS rendering burns 10, so 10,000 rendered pages. The 5,000-credit free tier in that table is the 7-day trial, not Hobby. The same table calls ScraperAPI “Raw HTML only” while the 2026 docs list JSON autoparse and structured data endpoints. Treat it as a warning label, not a spreadsheet. ## What is ScraperAPI? ScraperAPI is a proxy-and-fetch API: you send a URL, it rotates IPs, optionally renders JavaScript, and returns the page. The G2 listing says it “handles proxies, browsers, and CAPTCHAs” so you can scrape a page in one API call ([G2](https://www.g2.com/products/scraper-api/reviews)). Structured JSON and CSV sit on a **separate** surface. Official Structured Data Endpoints cover [e-commerce](https://docs.scraperapi.com/structured-data-endpoints/e-commerce) (Amazon, eBay, Walmart), [search/insights](https://docs.scraperapi.com/structured-data-endpoints/search-and-insights) (Google), [real estate](https://docs.scraperapi.com/structured-data-endpoints/real-estate) (Redfin), and [AI results](https://docs.scraperapi.com/structured-data-endpoints/ai-results) (ChatGPT, Perplexity, Gemini) — not Instagram, TikTok, YouTube, X, or Facebook. Social work on this product is HTML — or autoparse of that HTML — plus your own parser. The product map is Scraping API, Structured Endpoints, Async Scraper, and DataPipeline. All of them bill from the same credit pool ([pricing](https://www.scraperapi.com/pricing/)). If you are [writing your own HTML scraper](/blog/web-scraping), this is the “stop running the proxy pool” layer. It is not a social-object API. Paper request envelopes bouncing off a closed metal gate, the ScraperAPI pricing thread cap that drops extra calls instead of billing them. ## What does ScraperAPI do well? **The call is actually simple.** URL plus API key. Every paid plan can render JavaScript with `render=true` at **10 credits** ([JS rendering](https://docs.scraperapi.com/javascript-rendering/overview)). There is no extra credit charge for `country_code`, `session_number`, `device_type`, `autoparse`, or `wait_for_selector` ([credits and request costs](https://docs.scraperapi.com/getting-started/quick-start/credits-and-requests-costs)). For Amazon, Google, or a generic product page where you already know how to parse HTML, that is the whole product: one request, rotating proxies, optional headless browser, optional CAPTCHA handling. **Cost controls exist if you use them.** Every response carries an `sa-credit-cost` header. The dashboard Domain Multiplier and `GET https://api.scraperapi.com/account/urlcost` estimate spend before you run ([credits and request costs](https://docs.scraperapi.com/getting-started/quick-start/credits-and-requests-costs)). `max_cost` caps a scrape and returns **403** if the estimate exceeds the cap ([cost-control](https://docs.scraperapi.com/control-and-optimization/cost-control)). Official [status codes](https://docs.scraperapi.com/responses-and-formats/api-status-codes) also use **403** when the monthly credit pool is empty — treat either 403 as a hard stop. Hit the concurrent-thread limit and you get **429**: too many simultaneous requests; try again. 429 is not a `200` or `404`, so it is not billed ([credits](https://docs.scraperapi.com/getting-started/quick-start/credits-and-requests-costs)). That is a cleaner overage story than a silent queue that drains the pool while you sleep. **The plan ladder is public and wide.** Hobby is $49 / 100,000 credits / 20 threads. Advanced is $1,975 / 21,500,000 credits / 500 threads — and that 21.5M figure includes a limited-offer **+500k bonus**, not an evergreen base SKU ([pricing](https://www.scraperapi.com/pricing/)). Annual billing is **10% off**. Refunds are 7 days, no questions. They bill `200` and `404` responses, plus requests the client cancels before the 70-second finish window ([credits and request costs](https://docs.scraperapi.com/getting-started/quick-start/credits-and-requests-costs)). A gateway timeout on their side is not the line item you should fear. A 404 you did not mean to fetch is. ## What's missing when the URL is Instagram, TikTok, or X? **Credits meter fetch difficulty, not a social object.** The published social-domain surcharge is **LinkedIn only, at 30 credits**. Instagram, TikTok, YouTube, and X are not in the domain table. They fall under the 1-credit base plus render / premium / ultra (10 / 25 / 75) and bot-bypass **+10** ([credits and request costs](https://docs.scraperapi.com/getting-started/quick-start/credits-and-requests-costs)). Do not treat a blog post’s invented Instagram credit cost as official; the vendor’s answer is the Domain Multiplier lookup. You still get HTML. You still paginate, parse, and schema-normalize. Structured endpoints do not cover social networks ([e-commerce](https://docs.scraperapi.com/structured-data-endpoints/e-commerce), [search](https://docs.scraperapi.com/structured-data-endpoints/search-and-insights)). **The $49 sticker hides the parser plus the multiplier tax.** A 75-credit `ultra_premium+render` page on Hobby is about **$0.0368** (75 × $0.00049). That is not a rounding error on a 1-credit page. John S., a founder, wrote on G2 in February 2025 (organic, not an invite): “Credit costs can add up significantly, especially if using the premium parameters, which can make it difficult to budget usage vs. cost accordingly” ([G2 review](https://www.g2.com/products/scraper-api/reviews/scraper-api-review-10882328)). ScrapeGraphAI’s **$0.0049/page** figure prices 10,000 pages at $49, as if Hobby were 10k one-credit requests. Official Hobby is 100,000 credits, so a 1-credit page is **$0.00049**. $0.0049 is what a 10-credit `render=true` page costs on Hobby — not a typical Google or LinkedIn job. The decoder table below is the actual unit math. **Bill-shock rules are split across two official URLs.** Unused credits **do not roll over**; the counter resets at renewal ([billing FAQ](https://docs.scraperapi.com/resources/faq/plans-and-billing)). PAYG starts at **Scaling ($475)**, not Hobby, Startup, or Business. Hobby and Startup geotarget is locked to the US and EU regions — individual country codes start at Business ([standard geo](https://docs.scraperapi.com/control-and-optimization/geotargeting/standard-geo)). Free-tier copy conflicts on the same pricing page: the hero offers a 7-day trial / **5,000** credits / no card, and the FAQ on that page says **1,000** free credits / **5** concurrent. The [billing FAQ](https://docs.scraperapi.com/resources/faq/plans-and-billing) lists both (free plan 1,000/month, trial 5,000) and mentions a Student plan that the public pricing page does not list. We are flagging the contradiction, not picking a winner. For a team whose invoice is mostly social URLs, the leak is multiplier plus parser, not the Hobby sticker. [A tool like SocialCrawl](/pricing) meters a canonical social object: a standard call is 1 credit, failed and empty calls are refunded, and you buy packs rather than a subscription. Look up the live registry for the object you want; a generic HTML fetch is not the same unit. A tall stack of credit chips next to a much shorter stack of printed pages, the unit mismatch behind ScraperAPI pricing. ## How much does ScraperAPI cost? ScraperAPI pricing on the public lander (monthly, 2026-09-16): Hobby **$49**, Startup **$149**, Business **$299**, Scaling **$475**, Professional **$975**, Advanced **$1,975**. Once you leave the sticker, the invoice is credits times the domain table. $49 divided by 100,000 pages is the wrong formula. ### What are ScraperAPI's pricing plans? Monthly list on the public lander, **2026-09-16**. Annual is 10% off. Professional’s 10.5M and Advanced’s 21.5M totals include limited-offer bonuses (+250k and +500k), not evergreen base SKUs ([pricing](https://www.scraperapi.com/pricing/)). ScraperAPI pricing plans (monthly list, 2026-09-16): | Plan | Monthly | Credits | Threads | Geotarget | PAYG | |---|---|---|---|---|---| | Hobby | $49 | 100,000 | 20 | US & EU | No | | Startup | $149 | 1,000,000 | 50 | US & EU | No | | Business | $299 | 3,000,000 | 100 | Global | No | | Scaling | $475 | 5,000,000 | 200 | Global | Yes | | Professional | $975 | 10,500,000* | 300 | Global | Yes | | Advanced | $1,975 | 21,500,000* | 500 | Global | Yes | | Enterprise | Custom | 22,000,000+ | 500+ | Country-level | Yes | \*Limited-offer bonus credits are included in the published 10.5M / 21.5M totals. Derived $/credit on monthly list prices, no annual discount: Hobby **$0.00049**; Startup **$0.000149**; Business ≈ **$0.000100**; Scaling **$0.000095**. That is arithmetic on the table above, not a vendor-published “effective $/request.” For context, ScrapingBee Freelance is **$49 / 250,000 credits / 50 concurrent**, and the default `render_js=true` costs **5 credits** ([ScrapingBee pricing](https://www.scrapingbee.com/pricing/), [ScrapingBee docs](https://www.scrapingbee.com/documentation/)). Different credit table; do not pretend the units are 1:1. Bright Data’s Web Scraper API starts with **5,000 records/month** free, PAYG at **$1.5/1K records**, Scale at **$499 / 384,000 records**, and lists dedicated structured scrapers for LinkedIn, Instagram, TikTok, YouTube, X, and Facebook ([Bright Data](https://brightdata.com/pricing/web-scraper)). ### How do ScraperAPI credits actually work? ScraperAPI credits are a difficulty meter. Official domain table ([credits and request costs](https://docs.scraperapi.com/getting-started/quick-start/credits-and-requests-costs)): - Normal page: **1** - Amazon, Walmart, eBay: **5** - Google / Bing (all subdomains): **25** - LinkedIn (the only domain under “Social Media”): **30** - Cloudflare / Turnstile / Datadome / PerimeterX bypass: **+10** each Parameter add-ons: `premium=true` **10**; `render=true` **10**; screenshot **10**; `ultra_premium=true` **30** (paid only); `premium+render` **25**; `ultra_premium+render` **75** (paid only). JS rendering is the `render=true` flag, not a separate SKU. Worked decoder for **10,000 jobs**, Hobby vs Startup. If the job does not fit the pool, the cell says so. PAYG is not on Hobby or Startup, so there is no honest overage dollar to invent. | Job | Credits / request | 10k jobs | Fits Hobby (100k)? | Hobby $ if it fit | Startup $ | |---|---|---|---|---|---| | Generic HTML | 1 | 10,000 | Yes | $4.90 | $1.49 | | JS render (`render=true`) | 10 | 100,000 | Exact | $49.00 | $14.90 | | Google SERP | 25 | 250,000 | No (4,000 pages max) | — | $37.25 | | LinkedIn | 30 | 300,000 | No (~3,333 pages max) | — | $44.70 | | `ultra_premium+render` | 75 | 750,000 | No (~1,333 pages max) | — | $111.75 | Hobby LinkedIn unit: 30 × $0.00049 ≈ **$0.0147**. Hobby 75-credit page ≈ **$0.0368**. Scaling 75-credit page ≈ **$0.0071**. ScrapeGraphAI’s $0.0049/page is 10k pages priced as $49, not the 1-credit floor on a 100k Hobby pool. The pattern worth coding is cap-then-stop, not retry-until-broke. `max_cost` on a Google URL; treat **429** as the thread cap (sleep, retry, not billed); treat **403** as a hard stop — that code is both `max_cost` exceeded and an empty monthly pool. Hobby and Startup have no PAYG. Log `sa-credit-cost`. This is a sketch of the control flow, not a live ScraperAPI run. ```python API_KEY = os.environ["SCRAPERAPI_KEY"] TARGET = "https://www.google.com/search?q=scraperapi+pricing" resp = requests.get( "https://api.scraperapi.com/", params={"api_key": API_KEY, "url": TARGET, "max_cost": 25}, timeout=70, ) if resp.status_code == 429: time.sleep(2) # thread cap: dropped, not billed extra elif resp.status_code == 403: raise SystemExit("403: max_cost exceeded or monthly credits exhausted") elif resp.status_code != 200: raise SystemExit("stop: Hobby/Startup have no PAYG") print("sa-credit-cost:", resp.headers.get("sa-credit-cost")) ``` ### Does ScraperAPI have a free trial? ScraperAPI free trial copy does not agree with itself, so here are both official numbers. - Hero on the pricing page: 7-day trial, **5,000** credits, no credit card ([pricing](https://www.scraperapi.com/pricing/)). - FAQ on that same page: **1,000** free credits / month, max **5** concurrent. - Billing FAQ: free plan 1,000/month / 5 concurrent; 7-day trial = 5,000. A Student plan is mentioned there and is absent from the public pricing page ([plans and billing](https://docs.scraperapi.com/resources/faq/plans-and-billing)). Refund: 7-day, no questions. Cancel anytime, no fee. Credits do not roll over. PAYG starts at Scaling. A 429 at the thread cap is not billed extra (only `200` and `404` are). They also bill client-cancelled-before-70s. Whether a blocked attempt burns credits is **not** confirmed on the official pricing or credits pages; we are not filling that gap with a guess. ## Who should use ScraperAPI? The Hobby sticker is a real number when these four are true — and `max_cost` will keep it that way. - E-com / SERP / Amazon–Walmart fetch where SDEs or autoparse match the domain. - Teams that already parse HTML and want proxies, JS render, and CAPTCHA out of process — the generic [web-fetch](/blog/web-scraping) job, not a social graph. - Workloads that stay near 1-credit HTML, or that can sit on Scaling+ for PAYG. - US/EU-only geotarget is acceptable (Hobby and Startup). ## Who should skip ScraperAPI? Skip it when the invoice is mostly social objects, or when you need rollover, PAYG below Scaling, country geotarget on $49–$149, or a 1:1 credit quote on a canonical post. - The invoice is mostly Instagram, TikTok, YouTube, X, or Facebook objects. You will pay HTML plus your own parser plus render/premium multipliers. That is a different product category. - You need unused credits to roll over, or PAYG without jumping to $475 Scaling. - You need country-level geotarget on a $49–$149 plan. Hobby and Startup will not do it. - You need a quoted credit **before** the call that maps 1:1 to a canonical post or author. That is [how a social API quotes credits on the invoice](/blog/social-media-api-pricing), not a domain-multiplier HTML fetch. ## Is ScraperAPI worth it? **7/10.** ScraperAPI pricing is worth it when the job is URL-in, HTML-out at Hobby $49, you live on 1-credit pages, and you actually set `max_cost` / `urlcost`. The proxy / JS / CAPTCHA bundle is the product. G2 sits at **4.3/5 from 15 reviews**, with pricing in the cons cluster — mixed on price, not a dunk ([G2](https://www.g2.com/products/scraper-api/reviews)). It loses when the pipeline is social objects. Multiplier plus parser is the leak. SocialCrawl is the other model: one-time [credit packs](/pricing) that never expire, a standard call is 1 credit, failed and empty calls refunded. Public packs on 2026-09-16: Free 100 / $0; Starter 2,500 / £15; Growth 20,000 / £49; Pro 150,000 / £299. Ten thousand TikTok profile lookups = 10,000 credits, covered by Growth at £49. Different units than a 30-credit LinkedIn HTML fetch; the structural point is the meter. Contrast that with the [per-endpoint credit list](/docs/endpoint-pricing). For ScraperAPI’s own table, use the [official credits doc](https://docs.scraperapi.com/getting-started/quick-start/credits-and-requests-costs). To [see a social object before writing a single line](/explorer), open Explorer.