vercel/next.js · error · StaticGenBailoutError
Page with `dynamic = "force-dynamic"` couldn't be exported.
Error message
Page with `dynamic = "force-dynamic"` couldn't be exported. `output: "export"` requires all pages be renderable statically because there is no runtime server to dynamically render routes in this output format. Learn more: https://nextjs.org/docs/app/building-your-application/deploying/static-exports
What it means
Error "Page with `dynamic = "force-dynamic"` couldn't be exported. `output: "export"` requires all pages be renderable statically because there is no runtime server to dynamically render routes in this output format. Learn more: https://nextjs.org/docs/app/building-your-application/deploying/static-exports" thrown in vercel/next.js.
Source
Thrown at packages/next/src/server/app-render/create-component-tree.tsx:314
const [Unauthorized, unauthorizedStyles] =
authInterrupts && unauthorized
? await createComponentStylesAndScripts({
ctx,
filePath: unauthorized[1],
getComponent: unauthorized[0],
injectedCSS: injectedCSSWithCurrentLayout,
injectedJS: injectedJSWithCurrentLayout,
})
: []
let dynamic = layoutOrPageMod?.dynamic
if (nextConfigOutput === 'export') {
if (!dynamic || dynamic === 'auto') {
dynamic = 'error'
} else if (dynamic === 'force-dynamic') {
// force-dynamic is always incompatible with 'export'. We must interrupt the build
throw new StaticGenBailoutError(
`Page with \`dynamic = "force-dynamic"\` couldn't be exported. \`output: "export"\` requires all pages be renderable statically because there is no runtime server to dynamically render routes in this output format. Learn more: https://nextjs.org/docs/app/building-your-application/deploying/static-exports`
)
}
}
if (typeof dynamic === 'string') {
// the nested most config wins so we only force-static
// if it's configured above any parent that configured
// otherwise
if (dynamic === 'error') {
workStore.dynamicShouldError = true
} else if (dynamic === 'force-dynamic') {
workStore.forceDynamic = true
if (isPrerendering) {
const err = new DynamicServerError(
`Page with \`dynamic = "force-dynamic"\` won't be rendered statically.`
)View on GitHub (pinned to 43273a1d21)
Solutions
- Remove `export const dynamic = "force-dynamic"` from pages when using `output: "export"`.
- Remove `output: "export"` if you need dynamic rendering, or make the page statically renderable.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at packages/next/src/server/app-render/create-component-tree.tsx:314 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of vercel/next.js@43273a1d21 (2026-08-19).
Data as JSON: /api/errors/865e08c886defb39.
Report an issue: GitHub.