Stale-while-revalidate serves expired cache data while refreshing in the background. Users get instant responses.
How it works:
Cache entry expires
Serve stale data immediately
Trigger background refresh
Next request gets fresh data
You trade slight staleness for consistent low latency. HTTP Cache-Control header supports this natively: stale-while-revalidate=60. Use this when availability matters more than perfect freshness.