Scrape benchmark: which web scraping API gets an agent the right answer
Read one page and pull out exact fields: prices, versions, install commands. 8 providers ran the same 60 tasks with the same model and prompt. Each task allowed 2 calls, 60 seconds and $0.10.
Context.dev finished the most scrape tasks, but its lead over Linkup, Firecrawl and TinyFish (90%) is too small to rule out chance. TinyFish cost the least per finished task, 0.43¢. With no tool at all, the model alone passed none.
How a scrape task runs
Tasks done every answer correct, checked by script, with the cost of each finished task
None of the gaps between providers is big enough to rule out chance on 60 tasks, since tasks from the same site are counted as one group.
Cost per finished task all API and model spend, failures included, divided by tasks done
Time per finished task median, lower is better
Raw output, no model does the API's own output contain every answer? Cost is the API alone
Tuned settings each provider's best documented settings, frozen before the run
Spider refused our test site because its filter flags the workers.dev domain; it scraped all 10 PyPI pages correctly. Firecrawl's tuned run hit its free plan's 10 requests a minute, which is why it scores lower than its default.
Every provider the numbers behind the charts
| Provider | Tasks done | 95% interval | Cost per finished task | Median time |
|---|---|---|---|---|
| Context.dev | 55 of 60 (92%) | 90%–100% | 0.72¢ | 3.7 s |
| Linkup | 54 of 60 (90%) | 90%–90% | 0.60¢ | 3.4 s |
| Firecrawl | 54 of 60 (90%) | 90%–90% | 1.22¢ | 3.3 s |
| TinyFish | 54 of 60 (90%) | 80%–92% | 0.43¢ | 3.5 s |
| Scrapfly | 53 of 60 (88%) | 80%–90% | 0.61¢ | 5.0 s |
| Jina | 52 of 60 (87%) | 60%–92% | 0.57¢ | 3.8 s |
| Browserbase | 49 of 60 (82%) | 78%–100% | 1.12¢ | 3.3 s |
| Spider | 12 of 60 (20%) | 4%–100% | 2.48¢ | 4.6 s |
Scrape has only two site clusters: 50 pages on our own test site and 10 project pages on PyPI. With so few clusters, the narrow intervals here shouldn't be read as certainty.
Firecrawl had the shortest median time per finished task, 3.3 s. Not tested: Exa, Tavily, Bright Data and Perplexity.
Head to head pairs that both ran scrape
Other tracks
How every task is graded, and when a gap counts, is on the methodology page.