Debugging Next.js: Next.js, blank page after calling `res.redirect()`

Join the AI Workshop to learn more about AI and how it can be applied to web development. Next cohort February 1st, 2026

The AI-first Web Development BOOTCAMP cohort starts February 24th, 2026. 10 weeks of intensive training and hands-on projects.


I had an API route and after responding to a form submit, the API called

res.redirect('/')

It worked great locally in development, but when I shipped it to Vercel, the redirect ended up to a blank page. The URL was correct, but it took a refresh to show the content.

Not sure why, but I fixed this by using res.writeHead() instead:

res.writeHead(302, { Location: '/' }).end()

The 302 Found HTTP code is a common way of performing URL redirection.

Lessons in this unit:

0: Introduction
1: Blank page after router.push() in Next.js?
2: How to fix the error `PrismaClient is unable to be run in the browser` in Next.js
3: ▶︎ Next.js, blank page after calling `res.redirect()`
4: Next.js, how to fix the error `Constructor requires 'new' operator`
5: Next.js, fix the `module not found` error
6: How to fix the `can't resolve module` error in Next.js
7: How to fix error serializing Date object JSON in Next.js
8: How to fix the `unable to resolve dependency tree` PostCSS and Tailwind issue in Next.js
9: Fix “Module not found: Can't resolve encoding” in Next.js
10: How to fix Your custom PostCSS configuration must export a `plugins` key.
11: Next.js, what to do when the state of a component is not refreshed when navigating
12: Revalidation and ISR gotcha on Vercel
13: How to fix the `Already 10 Prisma Clients are actively running` error