gatsbyjs/gatsby · error
The icon(${icon}) you provided to 'gatsby-plugin-manifest' i
Error message
The icon(${icon}) you provided to 'gatsby-plugin-manifest' is not square.
The icons we generate will be square and for the best results we recommend you provide a square icon.
What it means
Error "The icon(${icon}) you provided to 'gatsby-plugin-manifest' is not square. The icons we generate will be square and for the best results we recommend you provide a square icon. " thrown in gatsbyjs/gatsby.
Source
Thrown at packages/gatsby-plugin-manifest/src/gatsby-node.js:200
}
})
// Only auto-generate icons if a src icon is defined.
if (typeof icon !== `undefined`) {
// Check if the icon exists
if (!doesIconExist(icon)) {
throw new Error(
`icon (${icon}) does not exist as defined in gatsby-config.js. Make sure the file exists relative to the root of the site.`
)
}
const sharp = await getSharpInstance()
const sharpIcon = sharp(icon)
const metadata = await sharpIcon.metadata()
if (metadata.width !== metadata.height) {
reporter.warn(
`The icon(${icon}) you provided to 'gatsby-plugin-manifest' is not square.\n` +
`The icons we generate will be square and for the best results we recommend you provide a square icon.\n`
)
}
// add cache busting
const cacheMode =
typeof pluginOptions.cache_busting_mode !== `undefined`
? pluginOptions.cache_busting_mode
: `query`
const iconDigest = createContentDigest(fs.readFileSync(icon))
/**
* Given an array of icon configs, generate the various output sizes from
* the source icon image.
*/
async function processIconSet(iconSet) {View on GitHub (pinned to e85d62f177)
Solutions
- Provide a square source icon (width equal to height) so generated icons are not distorted
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at packages/gatsby-plugin-manifest/src/gatsby-node.js:200 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/f96cfec391467362.
Report an issue: GitHub.