Incremental Static Regeneration (ISR)

A cached static page that Next.js rebuilds after it goes stale, so content updates without rendering every visit.

rebuild static pages without redeployingstatic page that refreshes every five minutesI edited the CMS and the site still shows the old textstale page updates in the backgroundNext.js revalidateincremental static regenrationSSG but the content changesdo I really have to redeploy to fix a typo

What it is

Incremental Static Regeneration is Next.js's middle ground between a frozen static build and rendering on every request. A page is generated as static output and cached, then becomes eligible for regeneration after a revalidation interval. Visitors keep getting the cached page while Next.js produces and stores a newer version.

Use it for catalogs, articles, and other public pages that need CDN-fast responses but can be a few minutes behind the source. In the App Router, 'export const revalidate = 300' sets a five-minute interval, while revalidatePath and revalidateTag let a CMS webhook invalidate content after an edit.

The interval is not a cron schedule. It says when cached output may become stale; traffic or an explicit invalidation triggers the refresh. A failed regeneration leaves the last successful page in place, which is resilient but can hide a broken data source. Monitor regeneration errors, and use on-demand invalidation when editors expect a publish button to take effect right away.

Ask AI for it

Implement this catalog with Next.js App Router ISR: prerender known product paths with generateStaticParams, set 'export const revalidate = 300' on each product route, and tag the product fetch with next.tags. Add a signed CMS webhook route that calls revalidateTag for the changed product, keep the last successful page available when regeneration fails, and log every failed refresh.

You might have meant

static site generationstale while revalidatecache invalidation purgecache control cache ttlserver side rendering