gatsbyjs/gatsby · error

Timeout

Timeout

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 8b06340921)

Solutions

  1. Increase options.schema.timeout (milliseconds) in gatsby-config.js.
  2. Lower options.schema.perPage below 100 so each request is cheaper.
  3. Verify the WordPress URL is correct and the server has enough resources to answer GraphQL requests.

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: Occurs when a WPGraphQL request exceeds the configured schema timeout. Verify the URL, increase options.schema.timeout, or lower options.schema.perPage to reduce per-request work on the WordPress server.

Understand the failure class


AI-assisted analysis of gatsbyjs/gatsby@8b06340921 (2026-08-13). Data as JSON: /api/errors/b6f5b77d3da57c00. Report an issue: GitHub.