
Humans barely notice search latency under 500ms — but AI agents are different.
A deep-research agent can make dozens of search calls in a single task. An extra 200 ms on each call can add up to several or even more than ten seconds of waiting. In voice and real-time chat scenarios, a pause of more than one second can disrupt the conversational experience.
At Ateve, we treat latency as a metric that must be measured with a unified, reproducible method — not a slogan that “we're fast”. This article explains how we measure latency, why we measure it this way, and where the boundaries of every figure are.
The biggest risk in comparing latency across providers is not measuring it inaccurately, but measuring it unfairly or in a way that cannot be reproduced. We follow four principles:
Before the real load test, we warm up the connections with a small number of queries (connection pool, DNS, TLS handshake):
We break “latency” into several separately attributable metrics, rather than reporting one vague “response time”:
| Metrics | Definition | Note |
|---|---|---|
| E2E latency | Client-side end-to-end: from request initiation to fully parsed response | The latency users actually feel |
| searchTime | The search time returned by the server | The search engine's own compute time |
| Non-searchTime | E2E − searchTime | Path costs: network, DNS, TLS, gateway, SDK parsing, etc. |
| queue delay | Scheduled send time vs. actual send time | Detects backlog in local scheduling |
| P50 / P90 / P95 / P99 | Latency percentiles | The official statistical convention — avoids the mean hiding the tail |
| Success rate / 429 / timeout | Request outcomes | Judges whether load exceeds capacity |
| Top-10 shortfall | Fraction of responses not returning a full Top-10 | A latency-comparability check (unequal workloads would contaminate the latency comparison) |
Why split E2E and searchTime? Because “client-side end-to-end” includes the local network path, while “server-side searchTime” is closer to the search engine's own speed. Reporting both separately is the only way to be honest (E2E is what users actually experience) without unfairly blaming the engine (searchTime is the part the product actually controls).
| Metrics | P50 | P90 | P95 |
|---|---|---|---|
| Ateve | 102.0 ms | 128 ms | 155.2 ms |
| Exa | 528.7 ms | 678.6 ms | 709.7 ms |
| Tavily | 1,745.31 ms | 3,251.32 ms | 3,869.52 ms |
| Brave | 1,323.17 ms | 2,255.18 ms | 2,661.27 ms |
A credible latency report has to say clearly where this measurement is taken:
We state this explicitly: local results are not equivalent to data-center results. They cannot be converted from one to the other through simple subtraction. Official comparison results are based on reruns in the same environment, during the same time window, and under the same load for all four providers.
This article presents the methodological framework for our latency evaluation. Search speed changes continuously with index updates, network paths, and load levels, so we will continue measuring and publishing results across different environments and concurrency levels.
We believe that publishing how a metric was measured alongside the number itself is more trustworthy than reporting a P50 figure in isolation.