NewLaunching String Web Access APIRead the manifesto →
← Comparisons

String vs ScrapingAnt (2026): 99 protected sites

Logan Harless, Founder, String · Updated August 31, 2026

String won the measured fetch comparison. ScrapingAnt won Skyscanner, returned raw attempts quickly, and charges less than String's premium path at some plan sizes. On the open Web Data Frontier Benchmark, String returned verified content on 97.0% of 495 requests and ScrapingAnt returned 30.7%. String's failure-aware latency score was 9.98 seconds against ScrapingAnt's 16.08. The public ScrapingAnt adapter used residential proxies without browser rendering. That is a strong proxy path, but it is not ScrapingAnt's 125-credit browser-plus-residential mode, so the result is not a ceiling on every configuration.

TL;DR

  • Success rate: String 97.0% (480/495), ScrapingAnt 30.7% (152/495)
  • Latency score: String 9.98s (second of 15), ScrapingAnt 16.08s (ninth)
  • Mean attempt time: String 7.67s, ScrapingAnt 2.57s
  • Perfect targets: String 92 of 99, ScrapingAnt 20
  • Sites where nothing came back: String 2, ScrapingAnt 60
  • ScrapingAnt win: Skyscanner, five of five against zero of five
  • Benchmark mode: residential proxies, browser rendering off, raw HTML, 25 credits per success
  • Untested stronger mode: browser rendering plus residential proxies, 125 credits per success
  • Every number comes from a public harness you can run with your own keys
String ScrapingAnt
Product type Fetch, search, sitemap, and remote browser Web scraping platform with Chrome, rotating proxies, Markdown, AI extraction, and MCP
Benchmark success rate 97.0% (480/495) 30.7% (152/495), residential proxy and raw HTML
Latency score 9.98s, second of 15 16.08s, ninth of 15
Mean attempt time 7.67s 2.57s, second fastest
Per-target outcome 92 perfect, 5 partial, 2 zero 20 perfect, 19 partial, 60 zero
Anti-bot highlights 100% Cloudflare, Kasada, and Fastly 60.0% Fastly, 48.9% PerimeterX, 67.7% proprietary or other
Pricing basis Plan plus successful-request usage; credits roll over Monthly credit pool; unused credits expire; failed requests cost zero
Entry point First 5,000 requests free 10,000 free monthly credits, no card
Agent tooling Hosted MCP and HTTP API Hosted MCP, Markdown, AI extraction, and integrations
Where it wins Measured coverage and completion time Skyscanner, raw-attempt speed, proxy controls, extraction tools, and some premium-path prices

How we tested, and the configuration caveat

We built the Web Data Frontier Benchmark and sell the product that ranks first. The defense against that conflict is reproducibility. The 99 targets and pass criteria, every provider adapter, and the August results JSON are public. A request passes only when its body contains an expected marker from the real page. A captcha or empty shell with HTTP 200 fails.

The ScrapingAnt adapter called GET /v2/general with proxy_type: "residential" and browser: false. ScrapingAnt's proxy documentation describes residential as its premium proxy type. Its request reference confirms that disabling browser returns the target response without a headless browser.

That configuration costs 25 credits for each successful response. ScrapingAnt also supports JavaScript rendering with datacenter proxies for 10 credits and browser rendering with residential proxies for 125 credits. The credit table makes the fivefold step from the tested mode explicit. The benchmark did not measure that 125-credit path, custom JavaScript, a wait selector, cookies, or a chosen proxy country. We cannot infer what those settings would score.

If ScrapingAnt believes another general configuration is fairer, the adapter is one file and a pull request changes the next run. A Firecrawl engineer used that route in benchmark pull request 6, and the next run raised Firecrawl's result by 7.7 points.

Pricing and product claims were checked against live first-party pages on August 31, 2026. Performance figures are from the August 11 run.

What ScrapingAnt is

ScrapingAnt is a web scraping platform built around a general API backed by headless Chrome and rotating proxies. Its request endpoint can use a datacenter or residential proxy, choose a country, forward cookies and headers, run custom JavaScript, wait for a selector, and return raw or rendered HTML. A separate proxy mode exposes the same API behavior through an HTTP or HTTPS proxy port.

The platform also has a Markdown endpoint, a natural-language AI extractor, and a hosted MCP server with HTML, Markdown, and text tools. ScrapingAnt publishes official JavaScript and Python clients, plus GitHub Actions, Make, and n8n integrations.

ScrapingAnt also sells standalone residential and datacenter proxy bandwidth. String does not sell a raw proxy product. String's narrower access surface adapts each fetch behind one endpoint, with search, sitemap crawling, a remote browser over CDP, and MCP beside it.

Success rate: String 97.0%, ScrapingAnt 30.7%

The benchmark sent 15 providers the same 99 URLs five times each. Most targets are protected retail, travel, news, real-estate, and social pages.

Provider Successful requests Success rate Latency score
String 480/495 97.0% 9.98s
Scrapingdog 269/495 54.3% 12.51s
Browserbase 209/495 42.2% 14.19s
ZenRows 170/495 34.3% 17.60s
ScrapingAnt 152/495 30.7% 16.08s
ScrapingBee 147/495 29.7% 16.97s
Accuracy against latency. Accuracy is the percent of requests that returned verified content; latency is the failure-aware mean per-target p75, in seconds. Web Data Frontier Benchmark · 99 targets · 495 requests per provider · August 11, 2026. Live leaderboard

ScrapingAnt ranked 14th for success and ninth on the failure-aware latency score. Its raw mean attempt was 2.57 seconds, second fastest in the field. Those measurements are not contradictory. ScrapingAnt returned or failed quickly, while the latency score charges a complete miss the target's successful-provider p75, or 90 seconds when nobody succeeded. A fast block does not finish the data job.

The 66.3-point success gap should be read with the configuration caveat above. It measures ScrapingAnt's residential, non-browser path. It does not measure every combination ScrapingAnt sells.

ScrapingAnt wins Skyscanner

ScrapingAnt returned verified Skyscanner content on all five attempts while String returned none. That is a decisive target win. For a workload centered on Skyscanner, this result matters more than the aggregate score.

ScrapingAnt was also perfect on Ticketmaster, Kayak, Instacart, Facebook, Bloomberg, Airbnb, Rightmove, YouTube, GitHub, arXiv, Bing, and nine other targets. Its strongest industry groups were social media at 67.5%, developer and research at 66.7%, and travel at 44.4%.

Against named anti-bot groups, ScrapingAnt reached 60.0% on the benchmark's Fastly target and 48.9% across PerimeterX. Its proprietary or other group reached 67.7%. These are useful pockets even though the aggregate result was low.

The measured coverage gap is 58 targets

Outcome across 99 sites String ScrapingAnt
Passed all 5 attempts 92 20
Passed 1 to 4 attempts 5 19
Passed none 2 60
Passed at least once 97 39

Of ScrapingAnt's 60 shutouts, String passed 54 on all five attempts and five on four attempts. Both providers failed Temu. The five partial String results were Mouser, Neiman Marcus, Coupang, Allegro, and Booking.com.

The anti-bot columns show where the gap formed. ScrapingAnt passed 6.7% of Cloudflare requests against String's 100%, 8.4% of DataDome against 97.9%, 16.0% of Akamai against 98.0%, and 13.3% of Kasada against 100%. Its closer result was PerimeterX at 48.9% against String's 88.9%.

ScrapingAnt had 19 partial targets, including Instagram, X, Pinterest, Walmart, Vinted, and TradingView at 80%. Retrying helped those sites. It did not change the 60 targets that missed every attempt.

Pricing: decode the browser and proxy multipliers

ScrapingAnt's current plans include 10,000 free credits per month, then 100,000 for $19, 500,000 for $49, 3 million for $249, and 8 million for $599. No card is required for the free allowance. Failed requests cost zero, and unused credits do not roll over.

Request path Credits per success $49 Startup capacity Startup cost per 1,000 successes
Datacenter, no browser 1 500,000 $0.10
Datacenter, browser + JS 10 50,000 $0.98
Residential, no browser, benchmark mode 25 20,000 $2.45
Residential, browser + JS 125 4,000 $12.25

String charges a monthly plan plus successful-request usage. Starter is $20 per month, then $0.40 per 1,000 standard fetches or $4 per 1,000 premium fetches. Growth is $100, then $0.20 or $2. Browser paths cost more. Blocks are free and credits roll over.

The honest comparison depends on the path. ScrapingAnt's tested residential mode costs $2.45 per 1,000 successes on Startup, below String Starter premium at $4 and slightly above String Growth premium at $2 before String's monthly plan fee. ScrapingAnt's untested browser-plus-residential path costs $12.25 per 1,000 on the same plan. String's standard path is cheaper, but a hard target may require premium or browser work.

ScrapingAnt can also be cheaper at higher commitments. The $249 Business plan makes the tested 25-credit path about $2.08 per 1,000 successes; the $599 Business Pro plan makes it about $1.87. Those prices buy successful responses, not coverage: on this run ScrapingAnt delivered 152 pages for every 480 String delivered.

Chrome controls, extraction, proxies, and MCP: ScrapingAnt wins breadth

ScrapingAnt exposes more knobs on a single scrape. Its browser documentation covers real Chrome rendering, custom JavaScript, and selector waits. The request can also carry cookies, headers, a country, and a proxy type. ScrapingAnt says every plan has no concurrency cap and can send 1,000 parallel requests through an auto-scaling Chrome cluster.

For downstream data work, the Markdown and extraction APIs return LLM-ready text or JSON described in natural language. The hosted MCP server gives agents three direct page-reading tools. Official clients and workflow integrations reduce setup work, while standalone proxies support teams that do not want a managed scrape response.

String wins the measured retrieval layer. ScrapingAnt wins when the purchase also needs raw proxy bandwidth, explicit browser controls, first-party AI extraction, broad workflow integrations, or uncapped parallel submission.

Which one should you pick?

  • Choose String when the core requirement is measured protected-page coverage. It returned at least one usable page on 97 of 99 targets; ScrapingAnt did so on 39.
  • Choose ScrapingAnt for Skyscanner based on this run, and test the exact URL before generalizing.
  • Choose String when completion time across failures matters. Its latency score was 9.98 seconds against 16.08.
  • Choose ScrapingAnt when quick raw attempts and uncapped parallel submission matter, while remembering that a fast failed response is not a delivered page.
  • Choose ScrapingAnt when you need standalone proxies, explicit Chrome controls, Markdown, AI extraction, official clients, workflow integrations, or hosted MCP.
  • Compare the exact request path. ScrapingAnt moves from 1 to 125 credits as browser and proxy choices change.
  • Test both with the open benchmark or a smaller target subset before committing spend.

FAQ

Is ScrapingAnt better than String?

String was better on the measured fetch task: 97.0% success against 30.7%, with a 9.98-second latency score against 16.08. ScrapingAnt was better on Skyscanner, raw-attempt speed, explicit controls, proxy products, and extraction breadth.

Is ScrapingAnt cheaper than String?

Sometimes. The tested residential, non-browser path costs $2.45 per 1,000 successful pages on ScrapingAnt Startup. That is below String Starter premium at $4 and above String Growth premium at $2, before String's monthly fee. ScrapingAnt browser plus residential costs $12.25 per 1,000 on Startup. Standard paths are much cheaper for both.

Does ScrapingAnt charge for failed requests?

No. ScrapingAnt's pricing page says failed requests cost zero. String also bills only requests that return content.

What ScrapingAnt configuration did the benchmark use?

The public adapter used the /v2/general endpoint with residential proxies and browser: false. That returns raw page HTML and costs 25 credits for each successful response.

Did the benchmark test ScrapingAnt's strongest browser mode?

No. It did not test browser rendering with residential proxies, a 125-credit path. It also did not use custom JavaScript, selector waits, cookies, or location targeting. The 30.7% result applies to the published adapter, not every possible configuration.

Does ScrapingAnt bypass Cloudflare?

Sometimes, but not reliably in this run. ScrapingAnt passed 6.7% across 15 Cloudflare targets. It did better on PerimeterX at 48.9% and on the single Fastly target at 60.0%.

Does ScrapingAnt have an MCP server?

Yes. ScrapingAnt documents a hosted MCP server with tools for HTML, Markdown, and plain text. It uses the same account credits as the API.

How can I verify the benchmark numbers?

Run the open-source benchmark with your own keys. The results JSON, target markers, and provider adapters are public. Start with your target subset because a full run makes thousands of billable calls.

Web Scraping API Pricing in 2026: 13 Providers ComparedUpdated August 31, 2026String vs Bright Data (2026): 99 sites comparedUpdated August 31, 2026String vs Context.dev (2026): 99 protected sitesUpdated August 31, 2026
Get your API key →Explore the Web Access API
© 2026 StringEU and UK GDPR Article 27 representative — appointment verified by EuverifyBuilt in New York City 🗽 🍎