SSG, ISR, SSR, streaming, client-only — each of your routes deserves a different one. Get the mix right and you get a site that ranks and loads in under a second. Get it wrong and no amount of "optimisation" will save you.
| Route type | Right strategy | Why | Wrong choice hurts because |
|---|---|---|---|
| Homepage, /pricing, /about | SSG | Content changes weekly at most | SSR wastes function invocations; ISR is unnecessary complexity |
| Blog / /resources/* | ISR (60–3600s) | Fresh but not real-time; big catalog | SSG rebuilds explode; SSR loses cache |
| Programmatic SEO — 10k+ pages | ISR on-demand | Build finite; long-tail unbounded | SSG timeouts on Vercel builds |
| Dashboard /app/* | Client + streaming | Behind login, personalised | SSG is impossible; full SSR wastes CPU |
| User profile /u/[handle] | SSR + revalidateTag | Public-shareable, per-user | SSG is stale; client-only loses OG image |
| Search results | SSR (no cache) | Depends on live query params | ISR serves someone else's search |
Route-level. Homepage should not ship the checkout code.
Measured from edge to first byte in the P75 region.
On slow 4G, mid-range Android. Not on your MacBook.
Everything above the fold has intrinsic dimensions.
Never block the main thread with sync work over 50ms.
This is not the hard one. If we ship 92, we forgot alt text.
If the site needs Google to see fully-rendered content, or you want per-page metadata that changes based on data, you need SSR/SSG — that means Next.js (or Astro/Remix). If it's all behind a login and users tolerate a spinner, Vite is faster to build and simpler to deploy.
Bring your sitemap and traffic pattern. We'll leave you with an SSG/ISR/SSR map you can build against — even if you don't hire us.
Book the callTell us your goals — we'll recommend the right technology honestly, even if it isn't this one.