vercel/next.js · error · Error
getStaticPaths with "fallback: true" cannot be used with…
Error message
getStaticPaths with "fallback: true" cannot be used with "output: export". See more info here: https://nextjs.org/docs/advanced-features/static-html-export
What it means
Thrown in the dev server's getStaticPaths handling for pages-router routes: with output: 'export', the page's getStaticPaths returned fallback: true. A fallback page renders shells at build time and fills them on demand at runtime, which a static export cannot do, so the combination is rejected.
Solutions
- Change fallback to false or 'blocking'-free config, or remove output: export.
Defensive patterns
Strategy: validation
When it happens
Trigger: getStaticPaths uses fallback: true with output: export.
Common situations: fallback: true cannot be statically exported; remove it or drop output: export.
AI-assisted analysis of vercel/next.js@996f957c06 (2026-08-19).
Data as JSON: /api/errors/bbf89ec16b8b77ab.
Report an issue: GitHub.
Appendix: source
Thrown at packages/next/src/server/dev/next-dev-server.ts:821
}
if (
!prerenderedRoutes.some((item) => item.pathname === urlPathname)
) {
throw new Error(
`Page "${page}" is missing param "${pathname}" in "generateStaticParams()", which is required with "output: export" config.`
)
}
}
}
if (!isAppPath && this.nextConfig.output === 'export') {
if (fallback === FallbackMode.BLOCKING_STATIC_RENDER) {
throw new Error(
'getStaticPaths with "fallback: blocking" cannot be used with "output: export". See more info here: https://nextjs.org/docs/advanced-features/static-html-export'
)
} else if (fallback === FallbackMode.PRERENDER) {
throw new Error(
'getStaticPaths with "fallback: true" cannot be used with "output: export". See more info here: https://nextjs.org/docs/advanced-features/static-html-export'
)
}
}
const value: {
staticPaths: string[] | undefined
prerenderedRoutes: PrerenderedRoute[] | undefined
fallbackMode: FallbackMode | undefined
} = {
staticPaths: prerenderedRoutes?.map((route) => route.pathname),
prerenderedRoutes,
fallbackMode: fallback,
}
if (
res.value?.fallbackMode !== undefined &&
// This matches the hasGenerateStaticParams logic we do during build.View on GitHub (pinned to 996f957c06)