Performance: Metadata API for SEO
MEDIUM IMPACT
This affects the page load speed and SEO by controlling how metadata is rendered and delivered to browsers and search engines.
import { Metadata } from 'next'; export const metadata: Metadata = { title: 'Static or dynamic title', description: 'Page description for SEO', }; export default function Page() { return <main>Page content</main>; }
export default function Page() { return ( <> <Head> <title>{dynamicTitle}</title> <meta name="description" content={dynamicDescription} /> </Head> <main>Page content</main> </> ) }
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Client-side <Head> injection | Adds extra DOM nodes after initial load | Triggers reflow on metadata injection | Increases paint cost due to delayed metadata | [X] Bad |
| Next.js Metadata API server-side | Metadata included in initial DOM | No extra reflows for metadata | Minimal paint cost, metadata ready on first paint | [OK] Good |