With Exa, we can already search the web using LLMs. However, by default, we cache all of our links to bias for the fastest response possible. You may be interested in the live version of the page, which our
livecrawl parameter can help with.
LiveCrawl Options
Here are all livecrawl options and their behaviors:| Option | Crawl Behavior | Cache Fallback | Best For |
|---|---|---|---|
"always" | Always crawls | Never falls back | Real-time data (news, stock prices, live events) |
"preferred" | Always crawls | Falls back on crawl failure | Production apps needing fresh content with reliability |
"fallback" | Only if no cache | Uses cache first | Balanced speed and freshness |
"never" | Never crawls | Always uses cache | Maximum speed, historical/static content |
Recommended default
Best practice: Start withlivecrawl: "preferred"and setlivecrawlTimeout(for example10000–15000ms). This combination aggressively tries to fetch fresh content, falls back to cached data if the live crawl fails or times out, and prevents long-running calls from hanging. Reservelivecrawl: "always"for the rare cases where you’d rather return an error than fall back to cached 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
Using"preferred" with an explicit timeout ensures you get the freshest content while still returning cached data if Apple’s homepage can’t be crawled quickly. Switch to "always" only if you truly prefer the call to fail rather than receive cached content:
Shell
Shell
Production Applications
Using"preferred" provides fresh content with fallback reliability. This is ideal for production applications:

