`generateMetadata` lets you create per-route SEO metadata (title/description/open graph) based on params or fetched data. It runs on the server, so you can generate correct metadata for dynamic routes (e.g., a product page) without duplicating logic.
Expanding on the short answer — what usually matters in practice:
A tiny example (an explanation template):
// Example: discuss trade-offs for "what-is-`generatemetadata`-in-next.js-and-when-i"
function explain() {
// Start from the core idea:
// `generateMetadata` lets you create per-route SEO metadata (title/description/open graph) b
}