---
title: "Most Token-Efficient Search API for Research Agents, Independently Benchmarked | Openbenchmarks"
description: "Which web search API costs the fewest LLM tokens per research task? Median task tokens per configuration on multi-hop company search, beside F1. Open source."
url: https://openbenchmarks.com/multi-turn-company-search/most-token-efficient-search-api
---

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

[← multi-turn company search](https://openbenchmarks.com/multi-turn-company-search) 

[benchmarks](https://openbenchmarks.com/) / [web-search](https://openbenchmarks.com/web-search) / [multi-turn company search](https://openbenchmarks.com/multi-turn-company-search) / most token efficient search API 

45 questions · multi-hop · 20 configurations · updated 26 Sept 2026

# Most token-efficient web search API for research agents

**What the benchmark found.** SERP (serp) used the fewest tokens per task search-only, a median of 10,890 tokens at 0.4% F1\. The F1 leader, Parallel basic (parallel-basic), used 303,467 tokens at 46.5%.

**What this page compares.** Every search result the agent reads is model context. This page sorts the board by median task tokens, the total the agent consumed to finish a question, with F1 beside it.

**How to read it.** Fewer tokens is better only at equal task quality. A provider that returns short snippets and forces more searches can use more tokens end to end than one with longer, more useful results. Sorted by median task tokens, ascending.

**Method in one paragraph.** The same agent, prompt, turn budget and tool schema run against every web search API on 45 questions that each define a company set by three or four constraints. Every returned company is resolved to a canonical identity and compared with a human-reviewed gold set; precision, recall, F1 and exact-set are averaged over three runs per question. The model-only baseline is 0.

[Most accurate](https://openbenchmarks.com/multi-turn-company-search/most-accurate-search-api) · [Fastest](https://openbenchmarks.com/multi-turn-company-search/fastest-search-api) · [Cheapest](https://openbenchmarks.com/multi-turn-company-search/cheapest-search-api) · [Find companies by criteria](https://openbenchmarks.com/multi-turn-company-search/find-companies-by-investor-location-funding) · [Search + fetch](https://openbenchmarks.com/multi-turn-company-search/search-and-fetch-api-for-ai-agents) · [Full benchmark](https://openbenchmarks.com/multi-turn-company-search) 

[open runner + judge Public in openbenchmarks-labs/multi-turn-company-search; dataset openbenchmarks/OB-Company-Websearch. github → ](https://github.com/openbenchmarks-labs/multi-turn-company-search) 

\[01\] search only

## Ranked by median task tokens, fewest first

__Most token-efficient web search API for research agents: search-only__
| Provider | Endpoint & configuration | Precision / 1k tokens | Precision | Median task tokens |
| --- | --- | --- | --- | --- |
| [SERP](https://rapidapi.com/herosAPI/api/google-search74 "Open SERP in a new tab") | GET google-search74.p.rapidapi.com serp | **0.07** | 0.7 ± 1.3 | 10,890 |
| [Brave Search](https://brave.com/search/api/ "Open Brave Search in a new tab") | GET /res/v1/web/search brave | **1.37** | 66.9 ± 8.5 | 49,005 |
| [Firecrawl](https://firecrawl.dev "Open Firecrawl in a new tab") | POST /v2/search firecrawl | **1.53** | 77.3 ± 4.4 | 50,596 |
| [TinyFish](https://www.tinyfish.ai "Open TinyFish in a new tab") | GET api.search.tinyfish.ai tinyfish | **1.27** | 64.7 ± 1.5 | 51,091 |
| [Nimble](https://www.nimbleway.com "Open Nimble in a new tab") | POST /v2/search search\_depth=lite · full\_content=false · focus=general | **1.18** | 62.8 ± 1.9 | 53,219 |
| [Perplexity](https://www.perplexity.ai "Open Perplexity in a new tab") | POST /search search\_context\_size=low | **1.18** | 79.3 ± 5.7 | 66,928 |
| [Nimble](https://www.nimbleway.com "Open Nimble in a new tab") | POST /v2/search search\_depth=standard · full\_content=false · focus=general | **0.64** | 70.3 ± 3.3 | 109,000 |
| [Parallel turbo](https://parallel.ai "Open Parallel turbo in a new tab") | POST /v1/search mode=turbo parallel-turbo | **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 | **0.67** | 79.9 ± 4.6 | 119,953 |
| [Tavily basic](https://tavily.com "Open Tavily basic in a new tab") | POST /search search\_depth=basic tavily-basic | **0.58** | 82.5 ± 1.9 | 142,692 |
| [Exa instant](https://exa.ai "Open Exa instant in a new tab") | POST /search type=instant exa-instant | **0.54** | 82.6 ± 3.8 | 152,622 |
| [Exa deep](https://exa.ai "Open Exa deep in a new tab") | POST /search type=deep exa-deep | **0.54** | 83.2 ± 3.0 | 153,061 |
| [Parallel advanced](https://parallel.ai "Open Parallel advanced in a new tab") | POST /v1/search mode=advanced parallel-advanced | **0.55** | 87.6 ± 3.4 | 159,733 |
| [Tavily advanced](https://tavily.com "Open Tavily advanced in a new tab") | POST /search search\_depth=advanced tavily-advanced | **0.35** | 83.7 ± 4.2 | 237,706 |
| [You](https://you.com "Open You in a new tab") | POST /v1/search extraction\_mode=highlights · knowledge=core | **0.33** | 80.9 ± 1.6 | 244,245 |
| [Linkup standard](https://www.linkup.so "Open Linkup standard in a new tab") | POST /v1/search depth=standard linkup-standard | **0.34** | 84.0 ± 7.9 | 249,382 |
| [Linkup fast](https://www.linkup.so "Open Linkup fast in a new tab") | POST /v1/search depth=fast linkup-fast | **0.32** | 82.8 ± 1.0 | 259,642 |
| [You](https://you.com "Open You in a new tab") | POST /v1/search extraction\_mode=highlights | **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 | **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 |

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.

\[02\] search + fetch

## Same sort, with a page-reading tool enabled

__Most token-efficient web search API for research agents: search + fetch__
| Provider | Endpoint & configuration | Precision / 1k tokens | Precision | Median task tokens |
| --- | --- | --- | --- | --- |
| [SERP](https://rapidapi.com/herosAPI/api/google-search74 "Open SERP in a new tab") | GET google-search74.p.rapidapi.com serp | **0.00** | 0.0 ± 0.0 | 11,051 |
| [TinyFish](https://www.tinyfish.ai "Open TinyFish in a new tab") | GET api.search.tinyfish.ai tinyfish | **1.32** | 70.9 ± 11.3 | 53,654 |
| [Brave Search](https://brave.com/search/api/ "Open Brave Search in a new tab") | GET /res/v1/web/search brave | **1.35** | 73.5 ± 5.8 | 54,482 |
| [Firecrawl](https://firecrawl.dev "Open Firecrawl in a new tab") | POST /v2/search firecrawl | **1.51** | 83.3 ± 0.8 | 55,069 |
| [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\] | **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 | **0.77** | 83.6 ± 4.0 | 108,358 |
| [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\] | **0.62** | 73.2 ± 1.9 | 117,345 |
| [Parallel fast](https://parallel.ai "Open Parallel fast in a new tab") | POST /v1/search mode=fast parallel-fast | **0.69** | 82.3 ± 6.6 | 119,278 |
| [Perplexity](https://www.perplexity.ai "Open Perplexity in a new tab") | POST /search search\_context\_size=high | **0.72** | 87.7 ± 5.9 | 121,239 |
| [Tavily basic](https://tavily.com "Open Tavily basic in a new tab") | POST /search search\_depth=basic tavily-basic | **0.57** | 81.2 ± 5.9 | 141,892 |
| [Exa deep](https://exa.ai "Open Exa deep in a new tab") | POST /search type=deep exa-deep | **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 | **0.58** | 87.6 ± 0.3 | 152,116 |
| [Exa instant](https://exa.ai "Open Exa instant in a new tab") | POST /search type=instant exa-instant | **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 | **0.43** | 89.4 ± 6.0 | 208,974 |
| [You](https://you.com "Open You in a new tab") | POST /v1/search extraction\_mode=highlights | **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 | **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 | **0.31** | 78.2 ± 2.5 | 250,679 |
| [Linkup standard](https://www.linkup.so "Open Linkup standard in a new tab") | POST /v1/search depth=standard linkup-standard | **0.36** | 90.7 ± 2.0 | 254,078 |
| [Parallel basic](https://parallel.ai "Open Parallel basic in a new tab") | POST /v1/search mode=basic parallel-basic | **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 |

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.

\[03\] faq

## Common questions

### Which web search API is most token-efficient for research agents?

SERP (serp) used the fewest tokens per task search-only, a median of 10,890 tokens at 0.4% F1\. The F1 leader, Parallel basic (parallel-basic), used 303,467 tokens at 46.5%.

### Why show F1 next to tokens?

A provider can be token-cheap by returning little; the agent then runs more searches or gives up early, and the company set is incomplete. Token efficiency only counts at comparable task quality, which is why the F1 column stays on this table.

### Are these the search API's tokens or the model's?

The model's. Median task tokens is the total context the fixed agent consumed to finish a question: search results, page fetches where enabled, and its own reasoning. It is the part of the bill that scales with how much a search API returns.

Openbenchmarks [← multi-turn company search](https://openbenchmarks.com/multi-turn-company-search) © 2026 Openbenchmarks
