vercel/next.js · error · Error

getStaticPaths with "fallback: blocking" cannot be used…

Error message

getStaticPaths with "fallback: blocking" 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: 'blocking'. Blocking fallback defers rendering to runtime requests, which contradicts a fully static export that has no runtime server, so the combination is rejected.

Solutions

  1. Change fallback to false or true-compatible config, or remove output: export.
Defensive patterns

Strategy: validation

When it happens

Trigger: getStaticPaths uses fallback: blocking with output: export.

Common situations: fallback: 'blocking' 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/12ca81cb9578fbc2. Report an issue: GitHub.

Appendix: source

Thrown at packages/next/src/server/dev/next-dev-server.ts:817

            if (!prerenderedRoutes) {
              throw new Error(
                `Page "${page}" is missing exported function "generateStaticParams()", which is required with "output: export" config. See more info here: https://nextjs.org/docs/messages/generate-static-params`
              )
            }

            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,
        }

View on GitHub (pinned to 996f957c06)