---
title: "Best Web Search APIs for AI Agents | LLM Token Efficiency, Independently Benchmarked (2026) | Openbenchmarks"
description: "Best web search API by token efficiency in this benchmark: TinyFish, with 208 accuracy points per 1,000 snippet tokens, 92.0% accuracy and 441 average snippet tokens. Fastest search: Parallel (mode=turbo), 348ms average search time. Cheapest search: TinyFish, $0 per 1,000 queries within plan limits. LLM costs are additional. Compare the best web search APIs for AI agents and RAG from 11 providers, including Exa, Tavily, Brave, Parallel, Firecrawl, by token efficiency, accuracy, speed and cost per 1,000 queries."
url: https://openbenchmarks.com/web-search/most-token-efficient-search-api
---

[](https://openbenchmarks.com/) 

[← web search benchmark](https://openbenchmarks.com/web-search) 

[benchmarks](https://openbenchmarks.com/) / [web-search](https://openbenchmarks.com/web-search) / token-efficient search APIs 

open source code · public sample · held-out scoring set · three agent tasks

# Best Web Search APIs for AI Agents | LLM Token Efficiency Benchmark (2026)

Best web search API by token efficiency in this benchmark: TinyFish, with 208 accuracy points per 1,000 snippet tokens, 92.0% accuracy and 441 average snippet tokens. Fastest search: Parallel (mode=turbo), 348ms average search time. Cheapest search: TinyFish, $0 per 1,000 queries within plan limits. LLM costs are additional. Compare the best web search APIs for AI agents and RAG from 11 providers, including Exa, Tavily, Brave, Parallel, Firecrawl, by token efficiency, accuracy, speed and cost per 1,000 queries.

The main comparison measures how much useful evidence search returns for the context it consumes. Ranked by accuracy per 1,000 snippet tokens across 300 questions and 11 providers; higher is better.

* **Best by token efficiency:** TinyFish, 208 accuracy points per 1,000 snippet tokens, with 92.0% accuracy.
* **Fastest search:** Parallel (mode=turbo), 348ms average search time.
* **Cheapest search:** TinyFish, $0 per 1,000 queries within plan limits. LLM costs are additional.

[**Compare token-efficient search APIs →** ](#lookup) · [Agentic search tokens](#hard-retrieval) · [Deep search tokens](#multi-hop) 

Updated 26 Sept 2026.

\[01\] primary comparison

## Best web search APIs for token efficiency: accuracy, speed and cost

The token-efficiency score is accuracy in percentage points ÷ average snippet tokens × 1,000\. A score can exceed 100 because it is a ratio. Read the separate accuracy percentage and context size alongside it.

__Search API token efficiency: accuracy per 1,000 snippet tokens, highest first__
| Rank | Search API & configuration | Accuracy points / 1,000 tokens | Accuracy | Average snippet tokens | Average search time | Search / 1,000 queries | Official docs |
| --- | --- | --- | --- | --- | --- | --- | --- |
| 1 | TinyFish api.search.tinyfish.aifree · 30 req/min cap | **208** | 92.0% | 441 | 2.62s | [$0](https://www.tinyfish.ai/pricing) Within plan limits | [Official docs ↗](https://docs.tinyfish.ai/search-api) |
| 2 | Perplexity /searchsearch\_context\_size=low | **205** | 97.3% | 476 | 1.38s | [$5.00](https://docs.perplexity.ai/docs/getting-started/pricing) | [Official docs ↗](https://docs.perplexity.ai/api-reference/search-post) |
| 3 | SERP (RapidAPI) google-search74.p.rapidapi.comlimit=10 | **193** | 96.0% | 497 | 751ms | [$3.00](https://rapidapi.com/herosAPI/api/google-search74/pricing) | [Official docs ↗](https://rapidapi.com/herosAPI/api/google-search74) |
| 4 | Firecrawl /v2/search | **141** | 95.3% | 678 | 510ms | [$5.00](https://www.firecrawl.dev/pricing) | [Official docs ↗](https://docs.firecrawl.dev/api-reference/endpoint/search) |
| 5 | Brave Search (count=10) /res/v1/web/searchcount=10 · result\_filter=web | **114** | 93.3% | 817 | 630ms | [$5.00](https://api-dashboard.search.brave.com/documentation/pricing) | [Official docs ↗](https://api-dashboard.search.brave.com/documentation/services/web-search) |
| 6 | Nimble (search\_depth=lite) /v2/searchsearch\_depth=lite · full\_content=false · focus=general | **110** | 94.3% | 860 | 2.46s | [$1.10](https://www.nimbleway.com/pricing) | [Official docs ↗](https://docs.nimbleway.com/api-reference/search/search) |
| 7 | Tavily (search\_depth=basic) /searchsearch\_depth=basic | **53.5** | 87.7% | 1,639 | 1.88s | [$8.00](https://docs.tavily.com/documentation/api-credits) | [Official docs ↗](https://docs.tavily.com/documentation/api-reference/endpoint/search) |
| 8 | Exa (type=fast) /searchtype=fast | **50.0** | 99.3% | 1,987 | 652ms | [$7.00](https://exa.ai/pricing?tab=api) | [Official docs ↗](https://docs.exa.ai/reference/search) |
| 9 | Parallel (mode=fast) /v1/searchmode=fast | **46.8** | 86.0% | 1,839 | 942ms | [$1.00](https://docs.parallel.ai/getting-started/pricing) | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) |
| 10 | Exa (type=instant) /searchtype=instant | **45.9** | 97.7% | 2,128 | 398ms | [$7.00](https://exa.ai/pricing?tab=api) | [Official docs ↗](https://docs.exa.ai/reference/search) |
| 11 | Brave Search (count=10) /res/v1/llm/contextcount=10 | **45.6** | 94.0% | 2,064 | 601ms | [$5.00](https://api-dashboard.search.brave.com/documentation/pricing) | [Official docs ↗](https://api-dashboard.search.brave.com/documentation/services/llm-context) |
| 12 | Tavily (search\_depth=advanced) /searchsearch\_depth=advanced | **42.1** | 93.0% | 2,210 | 4.29s | [$16.00](https://docs.tavily.com/documentation/api-credits) | [Official docs ↗](https://docs.tavily.com/documentation/api-reference/endpoint/search) |
| 13 | Parallel (mode=basic) /v1/searchmode=basic | **40.1** | 93.3% | 2,330 | 1.68s | [$5.00](https://docs.parallel.ai/getting-started/pricing) | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) |
| 14 | Parallel (mode=turbo) /v1/searchmode=turbo | **38.5** | 71.3% | 1,853 | 348ms | [$1.00](https://docs.parallel.ai/getting-started/pricing) | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) |
| 15 | Nimble (search\_depth=standard) /v2/searchsearch\_depth=standard · full\_content=false · focus=general | **34.1** | 93.0% | 2,730 | 861ms | [$5.00](https://www.nimbleway.com/pricing) | [Official docs ↗](https://docs.nimbleway.com/api-reference/search/search) |
| 16 | You (extraction\_mode=highlights) /v1/searchextraction\_mode=highlights · knowledge=core | **32.1** | 92.0% | 2,862 | 889ms | [$5.00](https://you.com/docs/administration/billing) | [Official docs ↗](https://you.com/docs/api-reference/search/v1-search) |
| 17 | Linkup (depth=fast) /v1/searchdepth=fast · outputType=searchResults | **32.0** | 96.7% | 3,022 | 1.57s | [$5.00](https://docs.linkup.so/pages/documentation/platform/pricing) | [Official docs ↗](https://docs.linkup.so/pages/documentation/endpoints/search/overview) |
| 18 | You (extraction\_mode=highlights) /v1/searchextraction\_mode=highlights | **32.0** | 90.7% | 2,837 | 628ms | [$5.00](https://you.com/docs/administration/billing) | [Official docs ↗](https://you.com/docs/api-reference/search/v1-search) |
| 19 | Linkup (depth=standard) /v1/searchdepth=standard · outputType=searchResults | **30.8** | 92.0% | 2,983 | 2.55s | [$5.00](https://docs.linkup.so/pages/documentation/platform/pricing) | [Official docs ↗](https://docs.linkup.so/pages/documentation/endpoints/search/overview) |

[Full search benchmark and scoring methodology →](https://openbenchmarks.com/company-news) 

## How to choose the best web search API for your token budget

Start with answer accuracy per 1,000 tokens, then check the underlying accuracy, returned context size, search speed and API price. A compact response is useful when it preserves the evidence your AI agent or RAG app needs. Use the supporting agentic and deep-search boards for full-agent token usage.

Exa (type=fast) has the highest search accuracy at 99.3% on this board. Token efficiency balances that accuracy with context size. Pick a minimum accuracy target for your application, then compare token efficiency, speed and cost among the qualifying APIs.

Search API pricing per 1,000 queries is separate from LLM token billing. Estimate search requests, input tokens and output tokens using their respective rates; account for model caching and scraping charges where applicable. TinyFish’s recorded free search plan allows 30 requests per minute and 500 per hour. Official pricing links show current plans and limits.

[Best web search APIs for AI →](https://openbenchmarks.com/web-search/best-web-search-api-for-ai) · [Compare APIs for LLM apps and RAG →](https://openbenchmarks.com/web-search/best-web-search-api-for-llm-apps) · [Compare pricing per 1,000 queries →](https://openbenchmarks.com/web-search/cheapest-search-api) 

\[02\] agentic search

## Supporting results: token-efficient APIs for agentic search

Find an answer deep within a unique page, across very similar pages. Ranked by Acc / 1k tokens: grounded task-completion percentage divided by median LLM task tokens, times 1,000\. Higher is better. Tokens include input and output across every agent turn on the same held-out tasks.

[Full agentic search benchmark →](https://openbenchmarks.com/web-search-for-coding-agents) 

Search-only 

__Agentic search · Search-only · Acc / 1k tokens, highest first__
| Rank | Vendor | Endpoint & configuration | Official docs | Acc / 1k tokens | Task completion | Median task tokens |
| --- | --- | --- | --- | --- | --- | --- |
| 1 | [Firecrawl](https://firecrawl.dev "Open Firecrawl in a new tab") | POST /v2/search | [Official docs ↗](https://docs.firecrawl.dev/api-reference/v2-search) | **9.43** | 70.3 ± 1.5 | 7,456 |
| 2 | [Perplexity](https://www.perplexity.ai "Open Perplexity in a new tab") | POST /search search\_context\_size=low | [Official docs ↗](https://docs.perplexity.ai/docs/search/quickstart) | **8.82** | 77.3 ± 2.1 | 8,765 |
| 3 | [TinyFish](https://www.tinyfish.ai "Open TinyFish in a new tab") | GET api.search.tinyfish.ai | [Official docs ↗](https://docs.tinyfish.ai/search-api) | **7.94** | 59.3 ± 1.5 | 7,469 |
| 4 | [Nimble](https://www.nimbleway.com "Open Nimble in a new tab") | POST /v2/search search\_depth=lite · full\_content=false · focus=general | [Official docs ↗](https://docs.nimbleway.com/api-reference/search/search) | **5.36** | 46.7 ± 3.8 | 8,713 |
| 5 | [Parallel fast](https://parallel.ai "Open Parallel fast in a new tab") | POST /v1/search mode=fast | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **5.35** | 66.7 ± 1.5 | 12,460 |
| 6 | [Parallel turbo](https://parallel.ai "Open Parallel turbo in a new tab") | POST /v1/search mode=turbo | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **4.58** | 64.7 ± 2.1 | 14,130 |
| 7 | [Tavily basic](https://tavily.com "Open Tavily basic in a new tab") | POST /search search\_depth=basic | [Official docs ↗](https://docs.tavily.com/documentation/api-reference/endpoint/search) | **3.13** | 51.0 ± 5.3 | 16,299 |
| 8 | [Exa fast](https://exa.ai "Open Exa fast in a new tab") | POST /search type=fast | [Official docs ↗](https://docs.exa.ai/reference/search) | **2.97** | 66.3 ± 1.5 | 22,344 |
| 9 | [Nimble](https://www.nimbleway.com "Open Nimble in a new tab") | POST /v2/search search\_depth=standard · full\_content=false · focus=general | [Official docs ↗](https://docs.nimbleway.com/api-reference/search/search) | **2.85** | 42.3 ± 2.5 | 14,859 |
| 10 | [Exa instant](https://exa.ai "Open Exa instant in a new tab") | POST /search type=instant | [Official docs ↗](https://docs.exa.ai/reference/search) | **2.74** | 61.3 ± 2.9 | 22,423 |
| 11 | [Brave](https://brave.com/search/api/ "Open Brave in a new tab") | POST /res/v1/llm/context | [Official docs ↗](https://api-dashboard.search.brave.com/documentation/services/llm-context) | **2.69** | 38.0 ± 2.6 | 14,103 |
| 12 | [You](https://you.com "Open You in a new tab") | POST /v1/search extraction\_mode=highlights | [Official docs ↗](https://you.com/docs/api-reference/search/v1-search) | **2.03** | 41.3 ± 3.1 | 20,333 |
| 13 | [You](https://you.com "Open You in a new tab") | POST /v1/search extraction\_mode=highlights · knowledge=core | [Official docs ↗](https://you.com/docs/api-reference/search/v1-search) | **1.84** | 38.3 ± 3.2 | 20,786 |
| 14 | [Linkup fast](https://www.linkup.so "Open Linkup fast in a new tab") | POST /v1/search depth=fast | [Official docs ↗](https://docs.linkup.so/api/search) | **1.80** | 43.3 ± 1.1 | 24,057 |

Task completion is mean ± sample SD across three runs of 100 tasks. Acc / 1k tokens = task-completion percentage ÷ median LLM input + output tokens × 1,000; higher is better. Median tokens are pooled across those runs.

Search + scrape 

__Agentic search · Search + scrape · Acc / 1k tokens, highest first__
| Rank | Vendor | Endpoint & configuration | Official docs | Acc / 1k tokens | Task completion | Median task tokens |
| --- | --- | --- | --- | --- | --- | --- |
| 1 | [TinyFish](https://www.tinyfish.ai "Open TinyFish in a new tab") | GET api.search.tinyfish.ai POST api.fetch.tinyfish.ai format=markdown | [Official docs ↗](https://docs.tinyfish.ai/search-api) | **6.15** | 79.0 ± 2.0 | 12,844 |
| 2 | [Firecrawl](https://firecrawl.dev "Open Firecrawl in a new tab") | POST /v2/search POST /v2/scrape | [Official docs ↗](https://docs.firecrawl.dev/api-reference/v2-search) | **4.37** | 76.0 ± 1.0 | 17,379 |
| 3 | [Perplexity](https://www.perplexity.ai "Open Perplexity in a new tab") | POST /search search\_context\_size=high POST /search search\_context\_size=high | [Official docs ↗](https://docs.perplexity.ai/docs/search/quickstart) | **3.87** | 77.7 ± 1.5 | 20,062 |
| 4 | [Nimble](https://www.nimbleway.com "Open Nimble in a new tab") | POST /v2/search search\_depth=lite · full\_content=false · focus=general POST /v2/extract formats=\[markdown\] | [Official docs ↗](https://docs.nimbleway.com/api-reference/search/search) | **3.59** | 60.3 ± 2.5 | 16,828 |
| 5 | [Exa deep](https://exa.ai "Open Exa deep in a new tab") | POST /search type=deep POST /contents | [Official docs ↗](https://docs.exa.ai/reference/search) | **3.51** | 83.0 ± 1.0 | 23,660 |
| 6 | [Exa auto](https://exa.ai "Open Exa auto in a new tab") | POST /search type=auto POST /contents | [Official docs ↗](https://docs.exa.ai/reference/search) | **2.98** | 81.7 ± 1.1 | 27,433 |
| 7 | [Parallel advanced](https://parallel.ai "Open Parallel advanced in a new tab") | POST /v1/search mode=advanced POST /v1/extract | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **2.84** | 77.0 ± 1.0 | 27,092 |
| 8 | [Parallel basic](https://parallel.ai "Open Parallel basic in a new tab") | POST /v1/search mode=basic POST /v1/extract | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **2.32** | 76.0 ± 0.0 | 32,809 |
| 9 | [Tavily advanced](https://tavily.com "Open Tavily advanced in a new tab") | POST /search search\_depth=advanced POST /extract extract\_depth=advanced | [Official docs ↗](https://docs.tavily.com/documentation/api-reference/endpoint/search) | **2.28** | 60.0 ± 2.0 | 26,269 |
| 10 | [Tavily basic](https://tavily.com "Open Tavily basic in a new tab") | POST /search search\_depth=basic POST /extract extract\_depth=basic | [Official docs ↗](https://docs.tavily.com/documentation/api-reference/endpoint/search) | **2.15** | 59.0 ± 1.7 | 27,405 |
| 11 | [Nimble](https://www.nimbleway.com "Open Nimble in a new tab") | POST /v2/search search\_depth=standard · full\_content=false · focus=general POST /v2/extract formats=\[markdown\] | [Official docs ↗](https://docs.nimbleway.com/api-reference/search/search) | **1.57** | 45.0 ± 1.0 | 28,586 |
| 12 | [You](https://you.com "Open You in a new tab") | POST /v1/search extraction\_mode=highlights · knowledge=core POST /v1/contents | [Official docs ↗](https://you.com/docs/api-reference/search/v1-search) | **1.44** | 54.0 ± 2.0 | 37,453 |
| 13 | [You](https://you.com "Open You in a new tab") | POST /v1/search extraction\_mode=highlights POST /v1/contents | [Official docs ↗](https://you.com/docs/api-reference/search/v1-search) | **1.28** | 55.0 ± 1.7 | 42,806 |
| 14 | [Linkup standard](https://www.linkup.so "Open Linkup standard in a new tab") | POST /v1/search depth=standard POST /v1/fetch mode=standard | [Official docs ↗](https://docs.linkup.so/api/search) | **0.84** | 48.3 ± 4.9 | 57,791 |

Task completion is mean ± sample SD across three runs of 100 tasks. Acc / 1k tokens = task-completion percentage ÷ median LLM input + output tokens × 1,000; higher is better. Median tokens are pooled across those runs.

\[03\] deep search

## Supporting results: token-efficient APIs for deep search

Combine evidence from several searches. The agent builds its answer from multiple searches. Ranked by Precision / 1k tokens: precision percentage divided by median LLM task tokens, times 1,000\. Higher is better. Precision measures the share of returned answers that match the reference set. Each provider runs 45 questions 3 times per tool mode.

[Full multi search benchmark →](https://openbenchmarks.com/multi-turn-company-search) 

Search-only 

__Deep search · Search-only · Precision / 1k tokens, highest first__
| Provider | Endpoint & configuration | Official docs | Precision / 1k tokens | Precision | Median task tokens |
| --- | --- | --- | --- | --- | --- |
| [Firecrawl](https://firecrawl.dev "Open Firecrawl in a new tab") | POST /v2/search firecrawl | [Official docs ↗](https://docs.firecrawl.dev/api-reference/endpoint/search) | **1.53** | 77.3 ± 4.4 | 50,596 |
| [Brave Search](https://brave.com/search/api/ "Open Brave Search in a new tab") | GET /res/v1/web/search brave | [Official docs ↗](https://api-dashboard.search.brave.com/documentation/services/web-search) | **1.37** | 66.9 ± 8.5 | 49,005 |
| [TinyFish](https://www.tinyfish.ai "Open TinyFish in a new tab") | GET api.search.tinyfish.ai tinyfish | [Official docs ↗](https://docs.tinyfish.ai/search-api) | **1.27** | 64.7 ± 1.5 | 51,091 |
| [Perplexity](https://www.perplexity.ai "Open Perplexity in a new tab") | POST /search search\_context\_size=low | [Official docs ↗](https://docs.perplexity.ai/api-reference/search-post) | **1.18** | 79.3 ± 5.7 | 66,928 |
| [Nimble](https://www.nimbleway.com "Open Nimble in a new tab") | POST /v2/search search\_depth=lite · full\_content=false · focus=general | [Official docs ↗](https://docs.nimbleway.com/api-reference/search/search) | **1.18** | 62.8 ± 1.9 | 53,219 |
| [Parallel turbo](https://parallel.ai "Open Parallel turbo in a new tab") | POST /v1/search mode=turbo parallel-turbo | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **0.72** | 80.0 ± 5.2 | 110,844 |
| [Parallel fast](https://parallel.ai "Open Parallel fast in a new tab") | POST /v1/search mode=fast parallel-fast | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **0.67** | 79.9 ± 4.6 | 119,953 |
| [Nimble](https://www.nimbleway.com "Open Nimble in a new tab") | POST /v2/search search\_depth=standard · full\_content=false · focus=general | [Official docs ↗](https://docs.nimbleway.com/api-reference/search/search) | **0.64** | 70.3 ± 3.3 | 109,000 |
| [Tavily basic](https://tavily.com "Open Tavily basic in a new tab") | POST /search search\_depth=basic tavily-basic | [Official docs ↗](https://docs.tavily.com/documentation/api-reference/endpoint/search) | **0.58** | 82.5 ± 1.9 | 142,692 |
| [Parallel advanced](https://parallel.ai "Open Parallel advanced in a new tab") | POST /v1/search mode=advanced parallel-advanced | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **0.55** | 87.6 ± 3.4 | 159,733 |
| [Exa deep](https://exa.ai "Open Exa deep in a new tab") | POST /search type=deep exa-deep | [Official docs ↗](https://docs.exa.ai/reference/search) | **0.54** | 83.2 ± 3.0 | 153,061 |
| [Exa instant](https://exa.ai "Open Exa instant in a new tab") | POST /search type=instant exa-instant | [Official docs ↗](https://docs.exa.ai/reference/search) | **0.54** | 82.6 ± 3.8 | 152,622 |
| [Tavily advanced](https://tavily.com "Open Tavily advanced in a new tab") | POST /search search\_depth=advanced tavily-advanced | [Official docs ↗](https://docs.tavily.com/documentation/api-reference/endpoint/search) | **0.35** | 83.7 ± 4.2 | 237,706 |
| [Linkup standard](https://www.linkup.so "Open Linkup standard in a new tab") | POST /v1/search depth=standard linkup-standard | [Official docs ↗](https://docs.linkup.so/pages/documentation/endpoints/search/overview) | **0.34** | 84.0 ± 7.9 | 249,382 |
| [You](https://you.com "Open You in a new tab") | POST /v1/search extraction\_mode=highlights · knowledge=core | [Official docs ↗](https://you.com/docs/api-reference/search/v1-search) | **0.33** | 80.9 ± 1.6 | 244,245 |
| [Linkup fast](https://www.linkup.so "Open Linkup fast in a new tab") | POST /v1/search depth=fast linkup-fast | [Official docs ↗](https://docs.linkup.so/pages/documentation/endpoints/search/overview) | **0.32** | 82.8 ± 1.0 | 259,642 |
| [You](https://you.com "Open You in a new tab") | POST /v1/search extraction\_mode=highlights | [Official docs ↗](https://you.com/docs/api-reference/search/v1-search) | **0.30** | 79.3 ± 4.9 | 264,016 |
| [Parallel basic](https://parallel.ai "Open Parallel basic in a new tab") | POST /v1/search mode=basic parallel-basic | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **0.29** | 88.7 ± 0.9 | 303,467 |
| [Seltz](https://seltz.ai "Open Seltz in a new tab") | POST /v1/search scope=companies seltz-companies | — | **0.08** | 40.0 ± 3.1 | 500,633 |
| [SERP (RapidAPI)](https://rapidapi.com/herosAPI/api/google-search74 "Open SERP (RapidAPI) in a new tab") | GET google-search74.p.rapidapi.com serp | [Official docs ↗](https://rapidapi.com/herosAPI/api/google-search74) | **0.07** | 0.7 ± 1.3 | 10,890 |

Acc / 1k tokens = precision percentage ÷ median task tokens × 1,000; higher is better. Accuracy on this table uses precision: the share of returned answers that match the reference set. Median task tokens sum LLM input and output across every turn, then take the median across all repeats. Missing measurements are shown as —. Precision is mean ± sample SD in percentage points.

Search + scrape 

__Deep search · Search + scrape · Precision / 1k tokens, highest first__
| Provider | Endpoint & configuration | Official docs | Precision / 1k tokens | Precision | Median task tokens |
| --- | --- | --- | --- | --- | --- |
| [Firecrawl](https://firecrawl.dev "Open Firecrawl in a new tab") | POST /v2/search firecrawl | [Official docs ↗](https://docs.firecrawl.dev/api-reference/endpoint/search) | **1.51** | 83.3 ± 0.8 | 55,069 |
| [Brave Search](https://brave.com/search/api/ "Open Brave Search in a new tab") | GET /res/v1/web/search brave | [Official docs ↗](https://api-dashboard.search.brave.com/documentation/services/web-search) | **1.35** | 73.5 ± 5.8 | 54,482 |
| [TinyFish](https://www.tinyfish.ai "Open TinyFish in a new tab") | GET api.search.tinyfish.ai tinyfish | [Official docs ↗](https://docs.tinyfish.ai/search-api) | **1.32** | 70.9 ± 11.3 | 53,654 |
| [Nimble](https://www.nimbleway.com "Open Nimble in a new tab") | POST /v2/search search\_depth=lite · full\_content=false · focus=general · extract formats=\[markdown\] | [Official docs ↗](https://docs.nimbleway.com/api-reference/search/search) | **1.17** | 68.5 ± 4.4 | 58,732 |
| [Parallel turbo](https://parallel.ai "Open Parallel turbo in a new tab") | POST /v1/search mode=turbo parallel-turbo | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **0.77** | 83.6 ± 4.0 | 108,358 |
| [Perplexity](https://www.perplexity.ai "Open Perplexity in a new tab") | POST /search search\_context\_size=high | [Official docs ↗](https://docs.perplexity.ai/api-reference/search-post) | **0.72** | 87.7 ± 5.9 | 121,239 |
| [Parallel fast](https://parallel.ai "Open Parallel fast in a new tab") | POST /v1/search mode=fast parallel-fast | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **0.69** | 82.3 ± 6.6 | 119,278 |
| [Nimble](https://www.nimbleway.com "Open Nimble in a new tab") | POST /v2/search search\_depth=standard · full\_content=false · focus=general · extract formats=\[markdown\] | [Official docs ↗](https://docs.nimbleway.com/api-reference/search/search) | **0.62** | 73.2 ± 1.9 | 117,345 |
| [Exa deep](https://exa.ai "Open Exa deep in a new tab") | POST /search type=deep exa-deep | [Official docs ↗](https://docs.exa.ai/reference/search) | **0.61** | 89.4 ± 1.2 | 147,079 |
| [Parallel advanced](https://parallel.ai "Open Parallel advanced in a new tab") | POST /v1/search mode=advanced parallel-advanced | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **0.58** | 87.6 ± 0.3 | 152,116 |
| [Tavily basic](https://tavily.com "Open Tavily basic in a new tab") | POST /search search\_depth=basic tavily-basic | [Official docs ↗](https://docs.tavily.com/documentation/api-reference/endpoint/search) | **0.57** | 81.2 ± 5.9 | 141,892 |
| [Exa instant](https://exa.ai "Open Exa instant in a new tab") | POST /search type=instant exa-instant | [Official docs ↗](https://docs.exa.ai/reference/search) | **0.55** | 85.9 ± 2.5 | 156,796 |
| [Tavily advanced](https://tavily.com "Open Tavily advanced in a new tab") | POST /search search\_depth=advanced tavily-advanced | [Official docs ↗](https://docs.tavily.com/documentation/api-reference/endpoint/search) | **0.43** | 89.4 ± 6.0 | 208,974 |
| [Linkup standard](https://www.linkup.so "Open Linkup standard in a new tab") | POST /v1/search depth=standard linkup-standard | [Official docs ↗](https://docs.linkup.so/pages/documentation/endpoints/search/overview) | **0.36** | 90.7 ± 2.0 | 254,078 |
| [You](https://you.com "Open You in a new tab") | POST /v1/search extraction\_mode=highlights | [Official docs ↗](https://you.com/docs/api-reference/search/v1-search) | **0.35** | 85.2 ± 2.7 | 241,834 |
| [Linkup fast](https://www.linkup.so "Open Linkup fast in a new tab") | POST /v1/search depth=fast linkup-fast | [Official docs ↗](https://docs.linkup.so/pages/documentation/endpoints/search/overview) | **0.35** | 85.3 ± 3.6 | 246,395 |
| [You](https://you.com "Open You in a new tab") | POST /v1/search extraction\_mode=highlights · knowledge=core | [Official docs ↗](https://you.com/docs/api-reference/search/v1-search) | **0.31** | 78.2 ± 2.5 | 250,679 |
| [Parallel basic](https://parallel.ai "Open Parallel basic in a new tab") | POST /v1/search mode=basic parallel-basic | [Official docs ↗](https://docs.parallel.ai/api-reference/search/search) | **0.27** | 81.3 ± 2.8 | 304,826 |
| [Seltz](https://seltz.ai "Open Seltz in a new tab") | POST /v1/search scope=companies seltz-companies | — | **0.10** | 49.5 ± 2.4 | 502,391 |
| [SERP (RapidAPI)](https://rapidapi.com/herosAPI/api/google-search74 "Open SERP (RapidAPI) in a new tab") | GET google-search74.p.rapidapi.com serp | [Official docs ↗](https://rapidapi.com/herosAPI/api/google-search74) | **0.00** | 0.0 ± 0.0 | 11,051 |

Acc / 1k tokens = precision percentage ÷ median task tokens × 1,000; higher is better. Accuracy on this table uses precision: the share of returned answers that match the reference set. Median task tokens sum LLM input and output across every turn, then take the median across all repeats. Missing measurements are shown as —. Precision is mean ± sample SD in percentage points.

## How we measure web search API token efficiency

Divide accuracy in percentage points by average snippet tokens and multiply by 1,000\. For example, 90% accuracy with 500 tokens gives a score of 180\. That score is a ratio, not 180% accuracy. Snippet tokens estimate title plus excerpt at roughly four characters per token. The search comparison uses the same 300 company-news questions, one request and up to 10 results.

The primary search dataset contains company-news questions covering funding, acquisitions, layoffs, launches and leadership. The answer model and judge stay fixed while the search API changes. Supporting agentic search uses held-out developer documentation tasks; deep search uses company-discovery questions with multiple constraints.

Agentic search ranks task-completion percentage divided by median task tokens, times 1,000\. Deep search ranks precision percentage divided by median task tokens, times 1,000\. These task tokens include LLM input and output across the complete agent run, pooled across repeats. Compare providers within the same workload and tool mode. Search-result context and full-agent LLM tokens use different accounting scopes, so each board has its own ranking.

Open source: [Search benchmark](https://github.com/openbenchmarks-labs/factual-lookup-company-news-search) · [Agentic search benchmark](https://github.com/openbenchmarks-labs/web-search-for-coding-agents) · [Public search dataset sample](https://huggingface.co/datasets/openbenchmarks/OB-News-Websearch) 

\[04\] faq

## Most token-efficient search API: questions and answers

### What is the most token-efficient search API in this benchmark?

TinyFish leads the search-result comparison at 208 accuracy points per 1,000 snippet tokens, with 92.0% accuracy and 441 average snippet tokens across 300 questions. Compare accuracy and context size together when choosing a web search API.

### How do you choose the best web search API for token efficiency?

Start with answer accuracy per 1,000 tokens, then check the underlying accuracy, returned context size, search speed and API price. A compact response is useful when it preserves the evidence your AI agent or RAG app needs. Use the supporting agentic and deep-search boards for full-agent token usage.

### How is accuracy per 1,000 snippet tokens calculated?

Divide accuracy in percentage points by average snippet tokens and multiply by 1,000\. For example, 90% accuracy with 500 tokens gives a score of 180\. That score is a ratio, not 180% accuracy. Snippet tokens estimate title plus excerpt at roughly four characters per token. The search comparison uses the same 300 company-news questions, one request and up to 10 results.

### How are agentic search and deep search tokens measured?

Agentic search ranks task-completion percentage divided by median task tokens, times 1,000\. Deep search ranks precision percentage divided by median task tokens, times 1,000\. These task tokens include LLM input and output across the complete agent run, pooled across repeats. Compare providers within the same workload and tool mode.

### Does the most token-efficient search API also have the highest accuracy?

Exa (type=fast) has the highest search accuracy at 99.3% on this board. Token efficiency balances that accuracy with context size. Pick a minimum accuracy target for your application, then compare token efficiency, speed and cost among the qualifying APIs.

### How do tokens affect search API and RAG costs?

Search API pricing per 1,000 queries is separate from LLM token billing. Estimate search requests, input tokens and output tokens using their respective rates; account for model caching and scraping charges where applicable. TinyFish’s recorded free search plan allows 30 requests per minute and 500 per hour. Official pricing links show current plans and limits.

### Why are search and search + scrape compared separately?

Scraping supplies additional page content and changes the agent’s evidence and token consumption. The supporting comparisons show both modes separately with the same model and task setup within each board.

Openbenchmarks open source code · public sample · held-out scoring set 

[← web search benchmark](https://openbenchmarks.com/web-search) [Exa vs Tavily](https://openbenchmarks.com/web-search/exa-vs-tavily) [Tavily vs Parallel](https://openbenchmarks.com/web-search/tavily-vs-parallel) [Brave Search vs Exa](https://openbenchmarks.com/web-search/brave-vs-exa) [Linkup vs Firecrawl](https://openbenchmarks.com/web-search/linkup-vs-firecrawl) [Parallel vs Exa](https://openbenchmarks.com/web-search/parallel-vs-exa) [Linkup vs Tavily](https://openbenchmarks.com/web-search/linkup-vs-tavily) [Exa vs Perplexity](https://openbenchmarks.com/web-search/exa-vs-perplexity) [Brave Search vs Tavily](https://openbenchmarks.com/web-search/brave-vs-tavily) [Exa vs Firecrawl](https://openbenchmarks.com/web-search/exa-vs-firecrawl) [Brave Search vs Parallel](https://openbenchmarks.com/web-search/brave-vs-parallel) [Perplexity vs Parallel](https://openbenchmarks.com/web-search/perplexity-vs-parallel) [You vs Parallel](https://openbenchmarks.com/web-search/you-com-vs-parallel) [Linkup vs Parallel](https://openbenchmarks.com/web-search/linkup-vs-parallel) [Firecrawl vs Parallel](https://openbenchmarks.com/web-search/firecrawl-vs-parallel) [TinyFish vs Parallel](https://openbenchmarks.com/web-search/tinyfish-vs-parallel) © 2026 Openbenchmarks
