.gif?w=1600&q=70&auto=format%2Ccompress&fit=max)

There's growing demand to test models in more complex environments and on increasingly difficult tasks. One kind of test is temporal: with the benefit of hindsight, check whether a model could have found a solution that hadn't been published yet, or could have predicted what happened next.
Today we're launching Exa Snapshot, a capability that unlocks this type of testing, powered by over 400 billion webpage snapshots spanning 2 decades. Given a date, Exa returns results from the web as it was at that point in time.
Let's say you're training an agent with reinforcement learning (RL) on tasks and answers written in June.
If the training run takes place in September, some of the solutions may already be on the web: in a paper, a GitHub pull request, or a blog post. Agents with search tools will find and submit the answer, and it's difficult to differentiate between a genuinely solved task and one copied from the web. Graders may even favor the second agent because copying requires less effort.
With Snapshot, you can set snapshotAsOf to a date in May. Search no longer returns the solutions, and researchers can trust that an agent with the correct answer solved it fairly.
A similar problem shows up in finance. A backtest checks how a prediction model would have performed on a given day using only information available as of that day.
Quantitative researchers will often solve for this with point-in-time datasets that track stock price and other fundamentals - but nothing like this exists for the web. Trading signals derived from web page insights would take months of careful data collection to test.
With Snapshot, backtesting on a versioned web can be conducted immediately.
You can use Snapshot by setting snapshotAsOf in our /search and /contents API endpoints (see the docs). As a reminder, this is still a research preview with ongoing development.
from exa_py import Exa
exa = Exa()
result = exa.search(
"latest stable Python release notes",
num_results=3,
contents={
"snapshot_as_of": "2026-05-01T00:00:00Z",
"highlights": True,
},
)
for r in result.results:
print(r.title, r.url)from exa_py import Exa
exa = Exa()
result = exa.get_contents(
["https://docs.python.org/3/whatsnew/changelog.html"],
snapshot_as_of="2026-05-01T00:00:00Z",
text=True,
)
print(result.results[0].text[:300])For full index coverage, rate limits, ZDR, and more, reach out to our team.
Try it out in the dashboard by setting a Snapshot date, or read the docs to get started.