An agent needs web search when its work depends on information outside the conversation. That could be a company's latest announcement, documentation for a new library, or sources for a research brief.
A web search API lets the agent find that information programmatically. The agent sends a query, receives results, and uses them to decide what to do next.
The important difference between providers is what comes back. Some return links and short descriptions. Others return passages from the pages, or let you retrieve their content in the same request. That affects how much work your agent needs to do before it can give a useful answer.
This guide covers seven options, when we would consider each, and what published benchmarks tell us. Documentation and benchmark sources were checked on September 8, 2026. Benchmark figures below are reported by their publishers; we have not independently rerun them.
Which search API should you use?
Start with the kind of work your agent needs to do.
| API | Consider it when you need… | What to evaluate |
|---|---|---|
| Tavily | Search with relevant content and configurable depth | Whether a deeper search improves your answers enough to justify its cost |
| Exa | Source discovery with text or highlights | How well it finds the specific kinds of sources your task needs |
| Brave Search | An independent search index with a dedicated LLM context endpoint | Coverage of your topics and the amount of context returned |
| Parallel | Search expressed as a research objective | Whether the returned excerpts cover the whole objective |
| Firecrawl | Search followed by reading the discovered pages | Extraction quality and the cost of scraping results |
| Serper | Google search results in a structured response | What additional page retrieval your agent needs |
| Perplexity Search | Search results with control over the content budget | Whether the snippets contain enough evidence for your task |
For a first research agent, we would shortlist Tavily, Exa, and Parallel. If you specifically need Google results, start with Serper. If reading the discovered pages is a large part of the job, include Firecrawl in your evaluation. The benchmark results below help explain why we recommend testing a shortlist.
What does an agent need from search?
Consider this request:
Find three alternatives to our current database. Check whether each supports point-in-time recovery, and link to the documentation that explains its limits.
Finding three product names is only the first step. The agent also needs to locate the relevant documentation, read the conditions, and keep each claim connected to its source.
There are three useful things a search tool can return:
- Results: titles, URLs, and snippets that help the agent choose which pages to read.
- Page content: text or excerpts the agent can use as evidence.
- Generated answers: a synthesis produced by the search provider's model.
These serve different purposes. A snippet can help discover a page without containing enough information to support a conclusion. A generated answer may be convenient, but your agent still needs access to the underlying sources if its job includes checking claims.
Before choosing a provider, decide how much of this process you want the search service to handle.
Tavily
A useful starting point for agents that need search and supporting content together.
Tavily returns results with URLs and content. You can control search depth, filter domains, restrict the time range, and request cleaned page content. An optional generated answer is available separately from the results. See the Tavily Search documentation.
That gives a research agent room to adjust its search. A quick lookup and a detailed comparison do not have to use the same settings.
We would start with a basic search and inspect what the agent receives. If the relevant evidence is missing, try a more specific query or a deeper search. Requesting more content by default can leave the model reading material it does not need.
Check before choosing: Tavily charges different credit amounts for different search depths. Compare the cost of completing a task, including follow-up searches, rather than treating every request as equivalent.
Exa
Worth evaluating when finding the right source is a substantial part of the task.
Exa combines search with content retrieval. Its search API supports categories such as research papers, companies, and news, and can return text or highlights from the results. The search reference describes these options.
For example, an agent researching a technical approach may need papers and original engineering write-ups. Categories can help narrow discovery; the agent should still inspect the resulting sources.
Exa also lets you retrieve content from known URLs. That is useful when the agent has already found a page and needs to read more of it.
Check before choosing: compare highlights with fuller text on your own questions. A short passage may answer a simple question, while a comparison involving exceptions or constraints may require more context.
Brave Search
An option for teams that want an independent search index and control over retrieved context.
Brave offers a search API backed by its own index. Its dedicated LLM Context endpoint returns extracted page chunks and source metadata, with controls for the token budget.
This matters if your agent needs readable evidence without a separate page-extraction step for every result. You can set the amount of context to fit the task instead of always returning the largest available response.
Check before choosing: test coverage for the topics and regions your users ask about. An independent index is a useful architectural distinction, but the deciding factor is whether it finds the sources your agent needs.
Parallel
Worth considering when you want to describe what the search should accomplish.
Parallel's Search API accepts a natural-language objective and returns relevant excerpts. Its quickstart also describes access through MCP.
An objective could be: “Find official documentation explaining backup retention and recovery limits for these three databases.” That gives the search request more context about the work than a short keyword query alone.
We would include Parallel when evaluating research workflows with several related information needs.
Check before choosing: break the objective into the questions that must be answered, then inspect whether the returned excerpts cover each one. A broad request can still leave gaps. Your agent needs to recognize those gaps and follow up.
Firecrawl
A natural candidate when search leads directly into reading pages.
Firecrawl can search the web and scrape the results in the same request, including returning Markdown. You can also search first and scrape selected URLs afterward. Both approaches are covered in the Firecrawl Search documentation.
For the database example, the agent could discover relevant documentation and retrieve the pages it needs for the comparison. Keeping those steps together can simplify the workflow.
Check before choosing: try both approaches. Scraping every result may be unnecessary when the agent only needs two pages. Test whether extraction preserves the details you care about, especially tables, limits, and footnotes.
Serper
A candidate when access to Google search results is a requirement.
Serper is a third-party API that exposes Google search results as structured data. Its product page shows the supported search types and example responses.
This is useful when you want the agent to discover pages through Google and then decide which ones to read. It also makes sense to evaluate it for workflows concerned with what appears in search results.
Check before choosing: inspect the search response separately from your page-reading step. Titles and snippets help select sources, but a detailed research task may still require fetching the original pages. Include that work when comparing cost and latency with providers that return extracted content.
Perplexity Search
An option for retrieving sources with an explicit content budget.
Perplexity's Search API returns search results that your own agent can use. Its documentation includes controls for the number of results, the total content budget, and the token limit per page.
Those controls let you experiment with how much evidence to give the model. A factual lookup may need a small response. A comparison may need longer passages from several sources.
Check before choosing: evaluate the Search API itself for this job. The experience of asking a question in the Perplexity app does not establish how well the API's returned sources will work with your agent's model and instructions.
What do the benchmarks say?
A useful benchmark tells you what was tested, when it ran, and what the score measures. These three evaluations cover different parts of a research workflow. Their scores should be read within each table, not combined into an overall ranking.
Factual questions: Parallel's July 2026 evaluation
In Parallel's vendor-run SimpleQA evaluation, run July 10–12, 2026, each question became one search query. Providers received a ten-result setting and roughly 1,000 characters per result; GPT-5.4 synthesized and judged answers.
| Search configuration | Reported answer accuracy | Median search-call latency |
|---|---|---|
| Parallel Search Turbo | 91% | 240 ms |
| Exa Instant | 89.3% | 335 ms |
| Brave Search | 87% | 475 ms |
| SerpAPI | 76.7% | 652 ms |
| Tavily Ultra Fast | 72% | 150 ms |
Latency is client-side p50 from a US-central location, using the best run. It excludes answer generation. The page describes SimpleQA's 4,326-question dataset but does not specify this run's sample size.
Our reading: Parallel and Exa deserve a place on a factual-research shortlist; Tavily's tested mode trades accuracy for faster responses here. This does not establish how Tavily's other modes compare. SerpAPI is a different product from Serper, and these Brave results should not be treated as an evaluation of its LLM Context endpoint.
Coding documentation: Exa's WebCode results
Exa's published WebCode results include a 307-query track measuring web retrieval and answer synthesis over coding documentation.
| Provider | Reported groundedness score |
|---|---|
| Exa | 79.4 |
| Brave | 76.3 |
| Parallel | 75.3 |
| Perplexity | 64.6 |
| Tavily | 61.1 |
Groundedness measures support for the generated answer; it is different from SimpleQA answer accuracy. These are vendor-run results, checked September 8, 2026. The repository summary does not state the run date, so we would not call this a September benchmark.
Our reading: for a coding agent, include tasks that require finding and using actual documentation. Exa leads this reported metric, but the result does not establish a winner for general web research. The benchmark repository provides evaluation code and describes separate extraction, highlights, and retrieval tracks.
Hard research questions: similar accuracy, different behavior
The July 11 preprint Equal Accuracy, Unequal Evidence reports May 17, 2026 runs on 100 SEALQA-HARD questions. It held the GPT-5.4 agent and page-fetch backend fixed while changing search providers.
| Provider | Correct answers out of 100 | Average search calls | Average page-fetch calls |
|---|---|---|---|
| Brave | 25 | 2.29 | 1.02 |
| Tavily | 25 | 2.74 | 1.30 |
| Firecrawl | 26 | 2.51 | 1.28 |
The study did not find a meaningful accuracy difference at this sample size. It used Tavily basic and disabled provider-side page extraction for Tavily and Firecrawl; all page reads used Jina Reader. It therefore does not compare those providers' complete search-and-extraction products. Raw run artifacts are private, limiting independent verification.
Our reading: count the work needed to reach an answer as well as whether it was correct. A search result changes which pages the agent reads and whether it searches again. These older runs illustrate that behavior, rather than rank today's APIs.
We did not find a directly comparable result covering all seven APIs in the sources above. A missing provider is unmeasured here, not a lower-ranked option.
Tavily vs Exa vs Brave Search: Which Should You Choose?
If these three are on your shortlist, start with the part of the research process you need the most help with. Our starting points would be:
- Tavily for a general research agent. Start here when you want search results and supporting content together, with controls for search depth and freshness. Check whether deeper searches improve the final answer enough to justify their extra credits.
- Exa for source discovery. Start here when the hard part is finding relevant papers, company information, or technical sources. Categories and returned highlights give you useful controls. Check whether those highlights contain enough evidence or whether the agent needs fuller page text.
- Brave Search for an independent index and a defined context budget. Start here when those are requirements for your application. Its LLM Context endpoint returns page chunks with token-budget controls. Check source coverage on your actual topics and regions before committing to it.
These are recommendations for where to begin, not an overall ranking. The published benchmarks above compare particular modes and endpoints; they do not establish a winner across every configuration. In particular, the reported Brave web-search results should not be treated as measurements of its LLM Context endpoint.
Pick the closest fit, then test one alternative on the same questions. Compare whether the agent finds the right evidence, cites it correctly, and completes the task at an acceptable cost and latency. The evaluation below gives you a small starting set.
How to compare them on your own tasks
Choose two or three providers and give them the same small set of real questions. Keep the model and research instructions consistent so you can see what changes when the search tool changes.
Include questions that exercise different parts of the job:
| Task | What a useful result looks like |
|---|---|
| Find a recently announced feature | The original announcement, with a date |
| Explain a configuration option | Documentation for the relevant version |
| Compare three products | Evidence for each comparison, including limitations |
| Find a niche technical source | A relevant paper, repository, or original write-up |
| Investigate an uncertain claim | Evidence that supports or contradicts it, or an explicit gap |
Read the sources behind the final answers. A plausible answer with a link is not enough: the linked page needs to support the claim.
Record whether the agent completed the task, how many searches and page reads it needed, the elapsed time, and the total cost. Include the model tokens used to read results. A cheaper search request can become an expensive workflow if the agent needs several retries or receives excessive content.
Also inspect a few failures. Did search miss the page, did extraction lose a relevant table, or did the model overlook evidence that was already there? Those problems need different fixes. Our guide to choosing a model covers the model side of that decision.
To connect search to a wider workflow, see our MCP server shortlist and browser automation comparison. They cover access to connected services and the next step when an agent needs to interact with a page.
Give the agent a research process
Once you have a search tool, explain how you want the agent to use it. For a research brief, that could be:
Prefer original sources. Read the relevant pages before making a claim. Keep a source URL for each finding. Check publication dates when freshness matters. If the evidence is incomplete or conflicting, say what remains unresolved.
In Dexto, you can put reusable research instructions in a skill and configure an agent for that work. Connections provide access to services and their tools.
The search API supplies information. The surrounding agent harness gives the agent the instructions, tools, and working context to use it. Start with one research task you can judge well, choose a provider that finds the evidence it needs, and improve the process from there.