Free 15-min triage

Next.js on Vercel

Your Next.js app works locally and breaks on Vercel

Your app runs cleanly under next dev and falls over on Vercel. That is not bad luck: development and production are two different programs. Locally, every page renders on demand, every query resolves in a millisecond and everything shares one Node process. Deployed, your routes are frozen at build time or split across serverless functions and runtimes with real latency between them. The six failures below account for most broken Next.js deploys, each with the mechanism behind it.

Fixed £4,500 · 3 days · pass-or-refund · next slot w/c 3 August

What actually breaks

How to see what production sees

Most of this surfaces the moment you stop trusting next dev. Run next build and read the route table: it marks every route static or dynamic, and a static marker next to a page that should show live data is the first break found in thirty seconds. Run next start and click through with the network tab open; the payload shows exactly what crossed the server boundary. On Vercel, the function logs record region, duration and terminations for every invocation, and the x-vercel-cache header on each response tells you which cache answered. None of this needs new code. It needs someone to read what the build and the platform are already reporting, then make each rendering and caching decision deliberate.

What “done” looks like

We agree one of these in writing before you pay anything. If it passes, the sprint passed. If it doesn't, you get a full refund and keep the work.

Pass-or-refund guarantee

We agree the acceptance test before any work starts. If it doesn't pass within three working days, you get a full refund and keep every change I've committed. The risk is mine, not yours.

Get a yes/no on your blocker · free, 15 min