Since clearing Vercel’s cache (via redeploy or purge), trying a different browser, and presumably doing browser cache clears/incognito tests didn’t resolve it, this points away from simple client-side caching and toward a more persistent mismatch or build/deployment issue.
This exact error (TypeError: Cannot read properties of undefined (reading 'call') in webpack-runtime.js or similar webpack chunks) is a well-known Next.js production-only problem. It occurs when Webpack’s module loader encounters an undefined module factory function — almost always due to the browser loading mismatched/out-of-sync JavaScript chunks after a deployment or build change.
Why it survives cache clears & new browsers
- Vercel edge/CDN propagation delays — Even after a redeploy, some chunks might still serve old versions briefly (or for certain regions like TZ/EAT).
- Service workers or PWA remnants — If your app ever had a service worker (even from a template like
create-next-appwith PWA support), it can persist across browsers/devices until fully unregistered. - Build ID / chunk hash mismatch — Next.js generates new hashes on each build. If any client loads a page with old
<script>tags pointing to stale chunks, it fails exactly like this. - Rare but reported: Monorepo setups (
Turborepo/Nx), edge runtime conflicts, or certain webpack optimizations can cause it, but usually it’s still caching-related.
Next troubleshooting & fix steps (escalating order)
-
Force a completely fresh build + deploy with new assets
- Make a trivial change (e.g., add/remove a space in any file, or bump a version in
package.json). - Commit & push → trigger a new Vercel deploy.
- Immediately after deploy succeeds, open your site in incognito/private mode (or a browser you’ve never used for the site).
- If still broken → proceed.
- Make a trivial change (e.g., add/remove a space in any file, or bump a version in
-
Manually purge Vercel cache more aggressively
- In Vercel dashboard → your project → Deployments → find latest → Redeploy (forces fresh assets).
- Or use Vercel’s “Purge Cache” if available in advanced settings.
- Wait 1-2 min, then test in incognito.
-
Fully nuke any service workers (even hidden ones)
Open your site → DevTools (F12) → Application tab:- Service Workers → Unregister everything listed (even if “stopped”).
- Clear site data (check all boxes:
IndexedDB,Cache Storage, etc.). - Do this in both normal and incognito windows.
- Hard reload (
Ctrl+Shift+RorCmd+Shift+R).
Many reports (including recent 2024–2025 GitHub issues) resolve exactly here, even after “clear cache” feels done.
-
Check for edge runtime or monorepo issues
- In
next.config.js, look forexperimental: { runtime: 'edge' }or per-page'edge'runtime exports.
If present → temporarily remove/switch to'nodejs'and redeploy (edge runtime has known webpack mismatches in some setups). - If you’re in a monorepo (
Turborepo/Nx/pnpmworkspace), this error appears more often — try building/deploying the Next.js app standalone to isolate.
- In
-
Inspect the actual loaded chunks
- Open site → DevTools → Network tab → filter by “js” or “webpack”.
- Look at loaded files like
/_next/static/chunks/webpack-*.jsor main chunks. - Compare timestamps/ETags with what Vercel shows in deployment artifacts.
- If they look old → definite stale asset problem.
-
Temporary workaround: Force no-cache on scripts (for testing)
Add this to your custom_document.jsor viaheaders()innext.config.js(not ideal long-term, but confirms if it’s stale JS):
// In next.config.js
module.exports = {
async headers() {
return [
{
source: '/_next/static/(.*)',
headers: [
{ key: 'Cache-Control', value: 'no-store, max-age=0' },
],
},
];
},
};
Redeploy and test.
If after steps 1–3 it’s still happening consistently (even in fresh incognito on multiple devices/networks), share these to narrow it further:
- Your Next.js version (
npx next --versionor frompackage.json) - App Router vs Pages Router?
- Any custom
next.config.js(especially webpack, experimental, or runtime settings)? - Does it fail on initial load, or only after navigation/refresh?
- The full error in browser console (any other lines before/after the require one)?
- Your Vercel project URL (if public) or a minimal repro repo?
In most cases like yours (post-cache-clear persistence), step 3 (service worker nuke) or a forced redeploy with trivial change fixes it within minutes. Let me know what happens after trying those!
Error Log:
⨯ TypeError: Cannot read properties of undefined (reading ‘call’)
at Object.t [as require] (.next/server/webpack-runtime.js:1:190) { digest: ‘1673902388’ }
Uncaught (in promise) Error: func sseError not found at Object.