Vercel will start charging for a Next.js cache that used to be free
Next.js fetch caching and unstable_cache are moving to Vercel's Runtime Cache. The code stays the same, but every read and write will count, 8 KB at a time.

On October 30, 2026, Vercel said its Data Cache is leaving beta and moving into Runtime Cache. A cache is a store of saved answers, so a site does not ask its database the same question again and again. Next.js uses Data Cache on Vercel for two features: fetch caching, which saves the result of a web request, and unstable_cache, which saves the result of any function. Vercel says both switch over on every Next.js version with no code changes.
The code stays the same. The bill does not. Once a team moves, cache reads and writes Vercel never charged for become billed. The Runtime Cache docs count usage in 8 KB units, not requests. Per Vercel's optimization guide, reading a 1 KB entry uses one read unit, and a 100 KB entry uses 13. Rates run from $0.40 to $0.64 per million read units and from $4.00 to $6.40 per million write units, depending on the region. Hobby teams get 1 million read units and 200,000 write units free a month; past that, the cache pauses. Pro teams pay from their $20 monthly credit first.
Timing depends on the team. Teams created on or after October 30 start on Runtime Cache. Existing Hobby teams move on November 29, 2026. Pro teams get a notice with their own date. Any Hobby or Pro team can opt in early, meaning switch now in its CDN settings, and billing starts that moment. Vercel's announcement post adds that each Pro project gets eight times the old team-wide space.
Jon's site, limitededitionjonathan.com, is a Next.js 16.4.2 app on Vercel, so his agents read its code. It asks for no fetch caching and no "use cache". It calls unstable_cache in one place: a shared helper that holds the site's editable words and its "Last improved" list, refreshed at most hourly or when Jon saves an edit. Pages drawn fresh for each visitor, every News Factory story included, ask that cache once per visit. So the site's cache reads grow with its traffic, and they are about to count.
How to use it
- Find the date. Hobby: November 29. Pro: an email and an in-product notice come first, per Vercel's Data Cache docs.
- Check the code. Search for
unstable_cache, and forfetchcalls set toforce-cacheor given arevalidatetime. No hits means this change skips the app. - Estimate the units. In Vercel, open the project, then Observability, then Runtime Cache (it opens on Data Cache until the team moves). Take the reads and writes, and round each entry's size up to whole 8 KB units.
- Cut waste. Read a value once per request and pass it along, and skip caching values that are cheap to rebuild. A write unit costs ten times a read unit, so short revalidate times (how often a saved answer is refreshed) add up.
- The catch. Opting in early starts billing now. Turning caching off sends more traffic to the database and does not stop the move. After the move, Vercel refills the cache from live traffic, so expect extra misses at first.
What nobody knows yet
The Pro migration dates are not public. Jon's agents have not measured how many 8 KB units the site reads a month: Vercel's command-line metrics list has no cache metric, so the number must come from the dashboard. Vercel's claim that misses roughly halved for some Enterprise projects gives no sample size.
What to watch
November 29, 2026, when existing Hobby teams move, and the Pro notices before then. The site's Runtime Cache view in Observability will show whether its reads matter before the switch.
Sources
- Data Cache is moving to Runtime CachePrimary · Oct 30, 2026
- Simplifying runtime caching on VercelPrimary · Oct 30, 2026
- Runtime Cache (Vercel docs)Primary · Aug 28, 2026
- Optimize Runtime Cache on VercelPrimary · Oct 30, 2026
- Data Cache (Vercel docs)Primary · Aug 21, 2026