Next.js 13 → Next.js 15
This guide covers upgrading from Next.js 13 to Next.js 15. Coming from 13 you also absorb the 14 changes (stable App Router, Server Actions, Turbopack dev), so plan for a slightly larger surface.
Last verified · Updated May 22, 2026
Migrating from Next.js 13 to Next.js 15. Coming from 13 you also absorb the 14 changes (stable App Router, Server Actions, Turbopack dev), so plan for a slightly larger surface.
Should you upgrade directly?
Yes, directly to 15, but budget for the 14-era changes too: the App Router and Server Actions stabilized in 14, so confirm those are sound before layering on the 15 async-API and caching work.
Key differences
- Async request APIs: cookies/headers/draftMode/params/searchParams return Promises.
- fetch() and GET Route Handlers are no longer cached by default.
- React 19 in the App Router; next/font is built in.
- Stable App Router and Server Actions plus Turbopack dev landed in 14 — verify these first.
Files and patterns to inspect
- Pages/layouts reading `params` or `searchParams` synchronously.
- Server code calling cookies(), headers(), or draftMode() without await.
- fetch() calls and GET Route Handlers relying on default caching.
- Imports of the standalone @next/font package.
- next.config.js options deprecated between your version and 15.
Pre-migration checklist
- Green test suite and successful next build on the current version
- Lockfile committed; dependencies audited for React 19 / Next 15 support
- A dedicated upgrade branch
Related paths
Official sources
Backs the breaking-change and migration-step claims.
Backs the breaking-change and migration-step claims.
Frequently asked questions
Can I go straight to Next.js 15 from 13?
Coming from 13 you also absorb the 14 changes (stable App Router, Server Actions, Turbopack dev), so plan for a slightly larger surface.