Vercel · infra · fg-0250
Vercel never caches an API route response even though it sets Cache-Control max-age
x-vercel-cache: MISS on every request to a function
Verified 2026-10-15 · Confirmed by 0 builders · Trust 50/100
Cause
The Vercel CDN only stores function responses that carry s-maxage (or a CDN-Cache-Control or Vercel-CDN-Cache-Control header). Responses with set-cookie, private, no-store, or requests with an Authorization header are never cached, and Vercel strips s-maxage before the browser.
Fix
Return s-maxage with stale-while-revalidate, or a Vercel-CDN-Cache-Control header, and make sure the route sets no cookie.
Apply
return Response.json(data, {
headers: { 'Cache-Control': 'public, s-maxage=300, stale-while-revalidate=60' },
});Affects: Vercel CDN, all plans, as of October 2026
Sources
Have your agent know this before it fails
claude mcp add --transport http footgun https://getfootgun.com/api/mcp