Skip to content
Home / Migrations / Next.js 14Next.js 15

Next.js 14 Next.js 15

easy

Next.js 15 is a minor upgrade from 14. Main change: fetch caching is opt-in (not opt-out), and async request APIs (cookies, headers, params) are now async. Official codemod handles most of it.

Estimated: 1-3h · 5 steps
Progress0%
Step 1: Run the upgrade codemod
npx @next/codemod@canary upgrade latest
Step 2: Await request APIs

cookies(), headers(), params, searchParams are now async. Await them or use React.use().

// Before: const cookieStore = cookies()
// After:
const cookieStore = await cookies()
Step 3: Review fetch caching

fetch() is no longer cached by default in 15. Add cache: 'force-cache' to re-enable, or use unstable_cache/revalidate patterns.

Step 4: Update next.config.js

Some config options renamed or deprecated. The codemod handles most changes. Check release notes for custom server setups.

Step 5: Test thoroughly
npm run build
Build passes, data fetching behaves correctly in production mode

What this migration involves

Moving from Next.js 14 to Next.js 15 is rated easy and takes about 1-3h on a typical project. The guide breaks it into 5 steps, 3 of which ship with runnable commands and 1 with a verification check.

FAQ

How long does migrating from Next.js 14 to Next.js 15 take?

Around 1-3h for a typical project — 5 steps, difficulty rated easy, 3 of them with copy-paste commands.

Is moving from Next.js 14 to Next.js 15 reversible?

No reverse guide is tracked yet, so treat this as a one-way move and keep a full export of your Next.js 14 data before you start.

What does Next.js 15 cost compared to Next.js 14?

Pricing for both tools is contact-based or not tracked yet.