vercel/next.js · error
Invalid OpenGraph type: ${_exhaustiveCheck}
Error message
Invalid OpenGraph type: ${_exhaustiveCheck} What it means
Exhaustiveness guard in createMetadataElements' switch over OpenGraph og:type values: it throws when ogType holds a value not covered by the known OpenGraph type union — i.e. an unknown/invalid og:type reached metadata rendering that TypeScript's never check would have caught at compile time.
Source
Thrown at packages/next/src/lib/metadata/metadata.tsx:1419
content={String(og.series)}
/>
)
}
break
case 'video.tv_show':
tags.push(
<meta key={i++} property="og:type" content="video.tv_show" />
)
break
case 'video.other':
tags.push(<meta key={i++} property="og:type" content="video.other" />)
break
default:
const _exhaustiveCheck: never = ogType
throw new Error(`Invalid OpenGraph type: ${_exhaustiveCheck}`)
}
}
}
// --- Twitter ---
if (metadata.twitter) {
const tw = metadata.twitter
const { card } = tw
if (card) {
tags.push(<meta key={i++} name="twitter:card" content={card} />)
}
if (tw.site) {
tags.push(<meta key={i++} name="twitter:site" content={tw.site} />)
}
if (tw.siteId) {
tags.push(<meta key={i++} name="twitter:site:id" content={tw.siteId} />)
}View on GitHub (pinned to 0eb3775416)
Solutions
- Use a valid OpenGraph type value in the metadata export.
Defensive patterns
Strategy: validation
When it happens
Trigger: An unrecognized OpenGraph type reaches metadata rendering.
Common situations: Internal invariant: an openGraph type not handled by the metadata renderer.
AI-assisted analysis of vercel/next.js@0eb3775416 (2026-08-19).
Data as JSON: /api/errors/e4c099ada91dc4fd.
Report an issue: GitHub.