gatsbyjs/gatsby · error
Warning: there are unknown plugin options for "${plugin.reso
Error message
Warning: there are unknown plugin options for "${plugin.resolve}", configured by ${configDir}: ${validationWarnings}\nPlease open an issue at https://ghub.io/${plugin.resolve} if you believe this option is valid. What it means
Error "Warning: there are unknown plugin options for "${plugin.resolve}", configured by ${configDir}: ${validationWarnings}\nPlease open an issue at https://ghub.io/${plugin.resolve} if you believe this option is valid." thrown in gatsbyjs/gatsby.
Source
Thrown at packages/gatsby/src/bootstrap/load-plugins/validate.ts:352
// do not have subplugins. We add plugins to the schema if it does not exist already
// to make sure they pass validation.
optionsSchema = optionsSchema.append({
plugins: Joi.array().length(0),
})
}
const { value, warning } = await validateOptionsSchema(
optionsSchema,
(plugin.options as IPluginInfoOptions) || {}
)
plugin.options = value
// Handle unknown key warnings
const validationWarnings = warning?.details
if (validationWarnings?.length > 0) {
reporter.warn(
stripIndent(`
Warning: there are unknown plugin options for "${plugin.resolve}"${
configDir ? `, configured by ${configDir}` : ``
}: ${validationWarnings
.map(error => error.path.join(`.`))
.join(`, `)}
Please open an issue at https://ghub.io/${
plugin.resolve
} if you believe this option is valid.
`)
)
// We do not increment errors++ here as we do not want to process.exit if there are only warnings
}
// Validate subplugins if they weren't handled already
if (!subPluginPaths.has(`plugins`) && plugin.options?.plugins) {
const { errors: subErrors, plugins: subPlugins } =
await validatePluginsOptions(View on GitHub (pinned to e85d62f177)
Solutions
- Check gatsby-config.js for the named plugin and fix/remove the unrecognized option keys listed in the warning
- Consult the plugin's README for the correct option names (often a rename or typo)
- If the option is genuinely supported, update the plugin so its pluginOptionsSchema includes it, or open an issue at the linked repo
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at packages/gatsby/src/bootstrap/load-plugins/validate.ts:352 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of gatsbyjs/gatsby@e85d62f177 (2026-08-26).
Data as JSON: /api/errors/9b80bd802b259ccf.
Report an issue: GitHub.