Next.js 16: what it means for your website
Next.js 16 has arrived with significant changes under the hood. Here's what's different, what it means for existing sites, and why I'm adopting it for new projects.

Next.js 16 dropped last month, and it's a significant release. Not in the flashy, everything-is-different way that the App Router was in Next.js 13, but in the sense that the foundations have been reworked in ways that make real differences to performance and developer experience. I've been testing it since the beta and have already started using it on new projects.
What's changed
The biggest change is the move to React 19 as the default. React 19 brings form actions, the use() hook, and improved server component support. Form handling in particular is much cleaner, you can write server-side form handlers that work without client-side JavaScript, with progressive enhancement built in. For marketing sites with contact forms, this means faster, more reliable form submissions with less code.
The compiler has been overhauled. The Turbopack bundler, which was experimental in Next.js 14 and 15, is now the default for development and production builds. Build times on our larger projects dropped by 40-60%. Hot module replacement in development is noticeably faster. This doesn't affect the end user directly, but it makes development significantly more pleasant, which translates to faster delivery.
Caching behaviour has been simplified. Next.js 15 introduced some confusing changes to how pages and data were cached by default. Next.js 16 takes a more explicit approach, you opt into caching rather than having to opt out. This is a welcome change. The implicit caching in earlier versions caused bugs that were difficult to diagnose, particularly around stale data on dynamic pages.
What it means for existing sites
If your site is on Next.js 14 or 15, the upgrade to 16 is worth doing but not urgent. The migration is relatively smooth, Vercel provides codemods for most of the breaking changes. The main work is around the caching changes (updating any code that relied on the old default caching behaviour) and testing that everything works with React 19.
If your site is on Next.js 13 or earlier, the jump to 16 is larger and should be treated as a project rather than a quick upgrade. The App Router has matured significantly since 13, and the patterns have stabilised, but migrating from the Pages Router still requires meaningful refactoring.
If your site isn't on Next.js at all, this release doesn't change our recommendation. Next.js remains the best choice for content-driven websites that need strong performance, good SEO, and a modern developer experience. But it's not the right tool for everything, a simple brochure site with five pages doesn't need a React framework.
Why I've adopted it
I'm using Next.js 16 on all new projects from now. The faster builds alone justify the switch, but the improvements to form handling, the more predictable caching, and the React 19 features make the overall developer experience genuinely better. I'm also in the middle of rebuilding my own site on Next.js 16, which has given us a chance to pressure-test the new features before putting them in front of client projects.
Should you upgrade?
If you're on Next.js 15, yes, plan it into your next sprint. If you're on 14 or earlier, consider it as part of your next significant piece of development work. If you're not sure what version you're on, or whether an upgrade makes sense for your specific situation, I can take a look and advise.
Drop me a line at [email protected] and I'll give you an honest assessment.

Chris Ryan
Managing Director
17+ years in full-stack web development, most of it leading teams agency-side across e-commerce, CMS platforms, and bespoke applications. Specialises in infrastructure, system integration, and data privacy, with hands-on experience as a Data Protection Officer. Founded Innatus Digital in 2020 to offer the kind of honest, technically-led partnership that he felt was missing from the agency world.