Dmytro Morar
Next.js

Rendering Modes

App Router uses RSC by default, and SSR/SSG/ISR are controlled by cache and data rules.

RSC

  • Default: server renders UI without hydration.
  • Best for stable content and heavy server logic.
  • Supports streaming via Suspense.

SSR

  • Renders on every request, no cache.
  • Use for personalization or frequently changing data.
  • Triggered by dynamic params, cache: "no-store", or dynamic = "force-dynamic".

SSG

  • Build-time render; cached HTML + RSC payload.
  • Best for marketing, docs, blogs.

ISR

  • Background revalidation after revalidate window.
  • Configure with export const revalidate = N.

Quick guide

  • RSC default, SSR for user-specific data, SSG for static pages, ISR for semi-dynamic.

On this page