Skip to main content
New to Exa? Try the Coding Agent Quickstart to get started in under a minute.

With Exa, we can already search the web using LLMs. By default, we serve cached content to bias for the fastest response possible. If you need fresher content, use the maxAgeHours parameter to control how old cached content can be before we fetch a live version.

maxAgeHours

maxAgeHours sets the maximum acceptable age (in hours) for cached content. If the cached version is older than this threshold, Exa will livecrawl the page to get fresh content.

When LiveCrawl Isn’t Necessary

Cached data is sufficient for many queries, especially for historical topics like “What were the major causes of World War II?” or educational content such as “How does photosynthesis work?” These subjects rarely change, so reliable cached results can provide accurate information quickly.

Examples

Company News

Set maxAgeHours to a low value to ensure you get fresh content. Pair with livecrawlTimeout to prevent long-running calls from hanging:

Production Applications

For production apps, set maxAgeHours to match how frequently your target content changes. Pair with livecrawlTimeout for reliability:
This will serve cached content if it’s less than 24 hours old, and livecrawl otherwise. If the livecrawl fails or times out, it falls back to cached content, making it ideal for production applications.

Deprecated: livecrawl options

The livecrawl string parameter ("always", "preferred", "fallback", "never") is deprecated in favor of maxAgeHours. If you are maintaining older integrations, migrate them to maxAgeHours. "preferred" has no direct equivalent since it always livecrawls regardless of cache age. Use a low maxAgeHours value (e.g. 1) for similar behavior.
Last modified on July 22, 2026