gatsbyjs/gatsby · error

111006

111006

Error message

It took too long for ${url} to respond (longer than ${timeout / 1000} seconds).

Either your URL is wrong, you need to increase server resources, or you need to decrease the amount of resources each request takes.

You can configure how much resources each request takes by lowering your `options.schema.perPage` value from the default of 100 nodes per request.
Alternatively you can increase the request timeout by setting a value in milliseconds to `options.schema.timeout`, the current setting is ${timeout}.

${genericError({ url })}

What it means

Error "It took too long for ${url} to respond (longer than ${timeout / 1000} seconds). Either your URL is wrong, you need to increase server resources, or you need to decrease the amount of resources each request takes. You can configure how much resources each request takes by lowering your `options.schema.perPage` value from the default of 100 nodes per request. Alternatively you can increase the request timeout by setting a value in milliseconds to `options.schema.timeout`, the current setting is ${timeout}. ${genericError({ url })}" thrown in gatsbyjs/gatsby.

Source

Thrown at packages/gatsby-source-wordpress/src/utils/fetch-graphql.ts:337

  query,
  response,
  errorContext,
  isFirstRequest,
  headers,
}: IHandleFetchErrors): Promise<void> => {
  await handleErrors({
    panicOnError: false,
    reporter,
    variables,
    pluginOptions,
    query,
    errorContext,
    responseJSON: null,
  })

  if (e.message.includes(`timeout of ${timeout}ms exceeded`)) {
    reporter.error(e.message)
    reporter.panic({
      id: CODES.Timeout,
      context: {
        sourceMessage: formatLogMessage(
          `It took too long for ${url} to respond (longer than ${
            timeout / 1000
          } seconds).\n\nEither your URL is wrong, you need to increase server resources, or you need to decrease the amount of resources each request takes.\n\nYou can configure how much resources each request takes by lowering your \`options.schema.perPage\` value from the default of 100 nodes per request.\nAlternatively you can increase the request timeout by setting a value in milliseconds to \`options.schema.timeout\`, the current setting is ${timeout}.\n\n${genericError(
            { url }
          )}`,
          { useVerboseStyle: true }
        ),
      },
    })
    return
  }

  if (errorIs500ish(e) && !e.message.includes(`500`)) {
    if (`message` in e) {
      console.error(formatLogMessage(new Error(e.message).stack))

View on GitHub (pinned to e85d62f177)

Solutions

  1. Increase options.schema.timeout in gatsby-config.js (milliseconds)
  2. Lower options.schema.perPage below the default of 100 so each request is smaller
  3. Verify the WordPress/WPGraphQL URL is correct and reachable
  4. Increase server resources (PHP workers, memory, DB) so responses complete faster
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at packages/gatsby-source-wordpress/src/utils/fetch-graphql.ts:337 when the library encounters an invalid state.

Common situations: See trigger scenarios.

Understand the failure class


AI-assisted analysis of gatsbyjs/gatsby@e85d62f177 (2026-08-26). Data as JSON: /api/errors/720bdf3f198c1b60. Report an issue: GitHub.