Sitemap

Member-only story

Why Is My Next.js Page Not Updating? A Complete Guide to Caching & Revalidation

5 min readOct 3, 2026

--

Press enter or click to view image in full size

Every full-stack Next.js developer eventually hits the same wall: you trigger a database update, redirect back to your dashboard, and the old data is still sitting right there.

You refresh the browser. Nothing changes. You open devtools, disable cache, and reload. Still the old data. In frustration, you run rm -rf .next on your local machine, restart the dev server, and suddenly the update appears—only to break the moment you deploy to a production edge environment.

Next.js is built around aggressive caching defaults designed to make web apps blazing fast. But when your mental model of the framework’s caching layers doesn’t match how the runtime actually behaves, that speed turns into a debugging headache.

To take back control of your application’s state, you have to dissect the four distinct caching layers in Next.js and understand exactly how, when, and where to invalidate them.

The Four Caching Layers (And Where Your Data Gets Stuck)

Next.js does not have a single “cache.” It orchestrates four independent mechanisms:

[ User Action / Navigation ]
│
▼
1. Router Cache (Client Memory)
│ (Cache Miss)…

--

--