404 after redeploy with same commit

Current:
When redeploying the same commit, same branch (fixed-main), and same settings,
the first deployment (GQXrmdUud) works perfectly,
but after clicking redeploy (2AXCfpGiv), all pages return 404 errors.

Interestingly, after the redeploy, the header and sidebar UI are still visible,
but the main page content is completely broken and returns 404.

Expected:
Redeploying the same commit and settings should behave exactly the same as the original successful deployment,
with all pages and content working normally.


:one: Deploy fixed-main branch (commit ID: 3e77daa) → works as expected
:two: Click Redeploy on the same branch and commit → 404 errors on all pages
:three: As an experiment, created a brand-new Next.js project → deployed under the same account → same 404 issue after redeploy


  • Project name: ggonggong
  • Working deployment ID: GQXrmdUud
  • Broken redeployment ID: 2AXCfpGiv
  • Framework: Next.js (13.5.11, App Router)
  • Vercel account: Free plan (no usage overages)
  • Issue occurs on both custom domain and Vercel default domain

Has anyone experienced something similar, or does anyone know what could cause this?
Any advice or guidance would be greatly appreciated!

Thank you!
Uploading: image.png…
Uploading: 20250528_131926.png…

There’s another community post with 404 debugging tips that might be helpful. Please give these solutions a try and let us know how it goes.

A human should be around soon to offer more advice. But you can also get helpful information quickly by asking v0.

Hi @ggonggong, welcome to the Vercel Community!

I’m sorry that you’re facing this issue. Have you tried reverting to the previous build? Did that solve the issue?

In the meantime, let me dig in further to see what could be causing this.

I’ve tried rolling back to the previous build and also attempted everything I could personally, but unfortunately the issue still persists.
Could you help investigate further or let me know if there are any other areas we should look into?
Your support would be greatly appreciated.

Hi @ggonggong, I see. This is quite weird. I’m here to work it through with you.

Can you check if any of the underlying services (Auth, database, CMS) changed between these changes?

Did you introduce any routing changes using Vercel redirects/rewrites?

Have you tried clearing the Data cache?

New deployments have a fresh Edge cache, but I’d still urge you to check your cache-control headers to ensure we’re not caching bad responses by mistake.

Hi, thanks so much for staying with me on this!

I’ve double-checked, and:

  • There were no changes to the underlying services (Auth, database, CMS) between these builds.
  • I didn’t introduce any new routing changes using Vercel redirects or rewrites.
  • I’ve also tried purging the data cache, but unfortunately, the issue still persists.

I’ll also review the cache-control headers as you suggested, to make sure no bad responses are being cached.
Please let me know if there’s anything else you think I should look into!

Thanks again for your continued help.

1 Like

Yes. Keep me posted. If you can share more information about your project as in how the requests flow through the app will help us find where the issue could be.

If you can share your public repo or a minimal reproducible example. That will let us all work together from the same code to figure out what’s going wrong.

Thank you to everyone who took the time to read and consider this issue.

Here’s what I’ve tried so far:
:white_check_mark: Creating a fresh production deployment instead of using the redeploy button
:white_check_mark: Enabling “Ignore Build Cache” to force a clean build
:white_check_mark: Clearing browser cache and testing from multiple networks
:white_check_mark: Reviewing all build and runtime logs (no errors or warnings found)
:white_check_mark: Testing a minimal barebone Next.js project under the same account (same issue)
:white_check_mark: Testing both under the Vercel default domain and a custom domain

Importantly, the issue is not that every redeploy causes 404 errors, but that after a single specific redeploy triggered this 404 issue, the problem has persisted and has not been resolved since.
The first deployment worked perfectly, but after redeploying the same commit, branch, and settings, all pages started returning 404 errors, and the issue has remained ever since.

At this point, I believe this is no longer a problem on my side (code or configuration), but rather something related to the Vercel platform — possibly involving internal caching, CDN behavior, or deployment ID–level handling.

I think this needs investigation from the Vercel team to understand why deploying the same commit has resulted in persistent 404 errors after a certain redeploy.

Any help or guidance from the Vercel team would be greatly appreciated!
Thank you again.

Hi @ggonggong, I see. Can you try creating a new Vercel project for the same repo and see if that works? It’ll then be sure that the issue is outside of the codebase.

Hi Anshuman, thanks for the suggestion!
I’ve actually already tried creating a completely new Vercel project from the same repo, with identical environment variables and settings, but unfortunately the same 404 issue still occurs there.

I see. Let me share this with our team. I’ll keep you posted when we have updates.

Hi @ggonggong, our team couldn’t find any issues at first glance. Can you share the deployment ID for the first time it happened? I feel that without looking at the code, this will take longer.

I see now the app has a server component error instead of 404. Were you able to make some progress on this?