Exa's Dynamic Highlights Cuts Agent Search Tokens by 40% Without Losing Quality
Exa's new search primitive treats tokens as the retrieval unit rather than documents, cutting agent context bloat by an average of 95%.

- Exa released a research preview of Dynamic Highlights, cutting retrieval tokens 95% on average
- A custom model jointly scans all retrieved pages instead of extracting snippets per document
- Single-turn RAG: 40% token efficiency gain plus 3.8% quality improvement at 12k character budget
- Agentic workloads: 30% fewer agent tokens with a 2.1% average quality gain
- Enable it by setting
dynamic: truein the highlights block of Exa's Contents API - Free for up to 10 results per search, then $1 per 1000 pages
Agents have quietly become the biggest consumers of the web, and their appetite for context is starting to hurt. Exa just rolled out a research preview of Dynamic Highlights, a search primitive that rethinks what a search API should return. Rather than pulling entire documents or per-page snippets, it looks at all retrieved pages together and picks only the tokens that actually answer the query.
Exa illustrates the pain with a simple example: if your agent asks for the current mayor of San Francisco, the answer might live in nine tokens on a single webpage, yet most agent search tools will pull 10,000+ tokens across many pages. That bloat drives up LLM spend and pushes context windows toward what Exa calls context rot.
Tokens, not documents, as the unit of retrieval
Standard snippet extraction runs independently on each document. That works fine for one page but produces obvious waste when you fetch ten: the same fact shows up several times, and genuinely useful pages get truncated by a fixed per-document token budget.
Dynamic Highlights flips the model by choosing relevant tokens with awareness of every other returned document. It uses one forward pass rather than many parallel ones, concatenating all retrieved pages into a single unified document. A custom model then shifts the token budget toward the pages that matter and skips the ones that do not.
How the numbers look
Exa ran the system in two settings: single-turn RAG and multi-turn agents. The single-turn results are the cleaner win.
With a 12k character budget, relative to existing highlights, dynamic highlights achieves a 40% average token efficiency gain alongside a 3.8% quality increase. Fewer tokens go to the LLM, and downstream answer quality goes up rather than down.
Agentic evaluations are trickier because agents will simply issue more searches when they cannot find what they need, so any token savings can be eaten by extra calls. Exa reports a 30% reduction in agent token usage with a 2.1% average quality gain using exa-agent auto for browsecomp and widesearch, plus exa-agent medium for their internal datasets.
Turning it on
Activation is a single flag. Add dynamic: true inside the highlights block of a search request, and Exa handles the rest. A minimal call looks like this:
{
"query": "Super Bowl TV ratings 2001 2025",
"type": "auto",
"numResults": 10,
"contents": {
"highlights": { "dynamic": true }
}
}
According to the Contents API guide, highlights ship as one of three content modes alongside full text and LLM-generated summaries. All contents features are available in /search for returned URLs at no extra charge up to 10 results per search, with $1 per 1000 pages afterwards. Dynamic Highlights inherits that pricing model.
Where it fits, and where it doesn't
The clearest wins land in workloads where token bills scale linearly with retrieval:
- RAG pipelines that fan out over many URLs and then stuff results into a single prompt
- Deep research and browse-style agents that chain dozens of searches before answering
- Factual lookups where the answer is small but buried across redundant pages
- Cost-sensitive production agents where reasoning traces already dominate the token budget
It matters less if you are pulling a single document you already know the URL of, or if you need the full page text for downstream analysis. Because this is still a research preview, Exa is upfront that development is ongoing, so expect quality to vary across task types. The agentic charts make that visible: some agents gain more than others, and the improvements are smaller than in the single-turn case.
Reshaping what a search response looks like
The interesting bet here is architectural. Search APIs have historically returned documents because humans read documents. Agents do not, and Exa is one of the first providers to design its retrieval layer around that fact. If token-level, cross-document selection generalizes, the standard shape of a search response for LLMs starts to look less like a ranked list of pages and more like a curated span of tokens assembled on the fly. That is a meaningful change to how the retrieval half of RAG gets built.