Next.js 15 Upgrade Wipes Out 80% of Site Traffic

Published by The Daily Scout

What happened

A cautionary case study reveals a team lost 80% of its site traffic overnight after a Next.js 15 deployment. Subtle changes in the framework's routing and rendering behavior broke pre-existing SEO structures, highlighting the critical need for SEO regression testing before major version upgrades.

Why it matters

Vercel released Next.js 15 on October 21, 2024, introducing several significant changes, including support for React 19 and making the Rust-based bundler, Turbopack, stable for development servers. These updates promised performance improvements, with claims of up to 76.7% faster local server startup and 96.3% faster code updates with Fast Refresh. A core breaking change in Next.js 15 altered the framework's default caching behavior. Unlike previous versions, `fetch` requests, GET Route Handlers, and client-side page navigations are no longer cached by default, shifting the default `cache` option for `fetch` to `no-store`. This fundamental shift from an aggressive caching strategy to an opt-in model means developers must now explicitly configure caching for data fetches and pages that were previously cached automatically. Without this explicit configuration, pages may no longer be served as quickly or be available for static generation, directly impacting SEO performance and crawlability. Another significant breaking change was the transition of APIs that depend on request-specific data—such as `headers`, `cookies`, and `searchParams`—to be asynchronous. This change, while aimed at creating a more consistent rendering and caching model, requires code modifications. To ease this transition, the Next.js team provided a codemod CLI tool to help automate the necessary updates for this and other breaking changes.

Key numbers

  • A cautionary case study reveals a team lost 80% of its site traffic overnight after a Next.js 15 deployment.
  • Vercel released Next.js 15 on October 21, 2024, introducing several significant changes, including support for React 19 and making the Rust-based bundler, Turbopack, stable for development servers.
  • These updates promised performance improvements, with claims of up to 76.7% faster local server startup and 96.3% faster code updates with Fast Refresh.
  • A core breaking change in Next.js 15 altered the framework's default caching behavior.

What happens next

  • Vercel released Next.js 15 on October 21, 2024, introducing several significant changes, including support for React 19 and making the Rust-based bundler, Turbopack, stable for development servers.
  • A core breaking change in Next.js 15 altered the framework's default caching behavior.
  • Without this explicit configuration, pages may no longer be served as quickly or be available for static generation, directly impacting SEO performance and crawlability.

Quick answers

What happened in Next.js 15 Upgrade Wipes Out 80% of Site Traffic?

A cautionary case study reveals a team lost 80% of its site traffic overnight after a Next.js 15 deployment. Subtle changes in the framework's routing and rendering behavior broke pre-existing SEO structures, highlighting the critical need for SEO regression testing before major version upgrades.

Why does Next.js 15 Upgrade Wipes Out 80% of Site Traffic matter?

Vercel released Next.js 15 on October 21, 2024, introducing several significant changes, including support for React 19 and making the Rust-based bundler, Turbopack, stable for development servers. These updates promised performance improvements, with claims of up to 76.7% faster local server startup and 96.3% faster code updates with Fast Refresh. A core breaking change in Next.js 15 altered the framework's default caching behavior. Unlike previous versions, fetch requests, GET Route Handlers, and client-side page navigations are no longer cached by default, shifting the default cache option for fetch to no-store. This fundamental shift from an aggressive caching strategy to an opt-in model means developers must now explicitly configure caching for data fetches and pages that were previously cached automatically. Without this explicit configuration, pages may no longer be served as quickly or be available for static generation, directly impacting SEO performance and crawlability. Another significant breaking change was the transition of APIs that depend on request-specific data—such as headers, cookies, and searchParams—to be asynchronous. This change, while aimed at creating a more consistent rendering and caching model, requires code modifications. To ease this transition, the Next.js team provided a codemod CLI tool to help automate the necessary updates for this and other breaking changes.

Get your own daily briefing

Scout delivers personalized news, insights, and conversations tailored to your role and industry.

Download on the App Store

Published by The Daily Scout - Be the smartest in the room.