vercel/next.js · error · Error

The router state header was too large.

Error message

The router state header was too large.

What it means

parseAndValidateFlightRouterState rejects router-state headers larger than ~40KB (20 bytes × ~2000 segment states) to prevent a malicious or buggy client from sending a gigantic header that would make resolving deeply nested parallel-route states slow.

Source

Thrown at packages/next/src/server/app-render/parse-and-validate-flight-router-state.tsx:32

export function parseAndValidateFlightRouterState(
  stateHeader: string | string[] | undefined
): FlightRouterState | undefined {
  if (typeof stateHeader === 'undefined') {
    return undefined
  }
  if (Array.isArray(stateHeader)) {
    throw new Error(
      'Multiple router state headers were sent. This is not allowed.'
    )
  }

  // We limit the size of the router state header to ~40kb. This is to prevent
  // a malicious user from sending a very large header and slowing down the
  // resolving of the router state.
  // This is around 2,000 nested or parallel route segment states:
  // '{"children":["",{}]}'.length === 20.
  if (stateHeader.length > 20 * 2000) {
    throw new Error('The router state header was too large.')
  }

  try {
    const state = JSON.parse(decodeURIComponent(stateHeader))
    assert(state, flightRouterStateSchema)
    return state
  } catch {
    throw new Error('The router state header was sent but could not be parsed.')
  }
}

View on GitHub (pinned to 0eb3775416)

Solutions

  1. The router state tree header exceeded the allowed size; reduce client state (e.g. fewer parallel routes / large search params) or avoid forwarding huge state headers.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at packages/next/src/server/app-render/parse-and-validate-flight-router-state.tsx:32 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of vercel/next.js@0eb3775416 (2026-08-19). Data as JSON: /api/errors/79aa7cb978ed1efe. Report an issue: GitHub.