scrapingbench

Questions, answered from the data

Short answers from the latest run. Where the data can't separate providers, the answer says so.

What is the best web scraping API for AI agents?

On 60 scrape tasks with the same model and limits, tasks done were: Context.dev 92%; Linkup, Firecrawl and TinyFish 90%; Scrapfly 88%; Jina 87%; Browserbase 82%; Spider 20%. None of these gaps is big enough to rule out chance, so the data doesn't name one best provider. Spider's 20% is because it refused our test site's workers.dev domain; it scraped all 10 PyPI pages correctly. Bright Data, which also sells scraping, was not tested. TinyFish cost the least per finished task, 0.43¢.

Scrape results

What is the best search API for AI agents?

On 60 search tasks with the same model and limits, tasks done were: Firecrawl 85%; Linkup 83%; Context.dev 75%; TinyFish 73%; Browserbase 38%. The only gap big enough to rule out chance: Browserbase finished 47 points fewer tasks than Firecrawl. The rest can't be told apart yet. Exa, Tavily and Perplexity, which also sell search APIs, were not tested. TinyFish cost the least per finished task, 1.31¢.

Search results

Which API is best for crawling a website?

On 10 crawl tasks with the same model and limits, tasks done were: Scrapfly 70%; Context.dev 60%; Firecrawl 50%. None of these gaps is big enough to rule out chance, so the data doesn't name one best provider. Crawl has only 10 tasks, so its intervals are wide. Scrapfly cost the least per finished task, 2.88¢.

Crawl results

Which API is best for listing every URL on a site?

On 15 map tasks with the same model and limits, tasks done were: Context.dev 47%; Firecrawl 40%. None of these gaps is big enough to rule out chance, so the data doesn't name one best provider. Map tasks ran mostly on a site built fresh for this run, so they test cold sites that no provider had indexed. Context.dev cost the least per finished task, 1.84¢.

Map results

Which web data API is cheapest per finished task?

Cost per finished task counts all API and model spend, failures included, divided by tasks done. The cheapest on each track: scrape: TinyFish at 0.43¢; search: TinyFish at 1.31¢; map: Context.dev at 1.84¢; crawl: Scrapfly at 2.88¢. Everything ran on free plans, so these are list-price equivalents, not invoices.

Every provider's cost

Is Firecrawl or Context.dev better for AI agents?

On scrape, Firecrawl finished 90% and Context.dev 92%. Context.dev led this track, but its gap to Firecrawl is too small to rule out chance. On search, Firecrawl finished 85% and Context.dev 75%. Firecrawl led this track, but its gap to Context.dev is too small to rule out chance. On map, Firecrawl finished 40% and Context.dev 47%. Context.dev led this track, but its gap to Firecrawl is too small to rule out chance. On crawl, Firecrawl finished 50% and Context.dev 60%. Neither gap to the track's leader cleared chance, and the benchmark doesn't test these two against each other, so this 10-point gap isn't a result either can claim. Firecrawl's interval runs 0%–68% and Context.dev's interval runs 0%–82%, because whole sites are resampled and this track has few of them.

Firecrawl vs Context.dev

Why did Spider score so low?

Spider's malicious-URL filter flags the workers.dev domain our test site runs on, so it refused those pages. It scraped all 10 PyPI pages correctly. The score is a domain compatibility finding, not a measure of how well it scrapes sites it accepts.

Spider's results

Were Exa, Tavily, Bright Data and Perplexity tested?

No. There were no keys for Exa, Tavily, Bright Data and Perplexity, so this benchmark has no numbers for them.

Why isn't Parallel in the results?

Parallel was tested on search, but its customer terms require written consent to publish benchmark results, so its results are left out of the site and the repo.

How are the tasks graded?

Every task is pass or fail, and a script decides it. Claude Haiku 5.5 uses the provider as its only tool and answers in JSON; the script compares every field with an answer key and passes the task only if every field matches, the run stayed inside its limits and nothing errored. No model grades anything.

Methodology

What do the 95% intervals mean?

Tasks from the same site aren't independent, so the intervals come from a bootstrap that resamples whole sites 10,000 times. Each provider is compared with its track's leader on the same tasks, and a gap counts only when its interval excludes zero.

When a gap counts

Which model ran the tasks?

Claude Haiku 5.5 at temperature 0, with the same prompt and limits for every provider. The model and its settings are part of what's measured, so these are not pure vendor scores.

When was this run, and can I reuse the data?

The results are from run wb-20261017-final on October 17, 2026, all from one server on free plans. Tasks, grader, harness and every result row are MIT licensed on GitHub at https://github.com/opencoredev/scraping-bench.

GitHub