Skip to content

SEO001 · Title presence

Severity: critical

Every route must resolve a non-empty <title> (own or inherited through the layout chain). A dynamic title (<title>{data.title}</title>) is the correct SvelteKit pattern and passes — only a genuinely missing or empty title is flagged.

A unique, non-empty <title> is the single strongest on-page SEO signal and the text shown in search results and browser tabs.

Add a <title> inside <svelte:head> (a dynamic title is fine), or set it via your meta component:

<svelte:head>
<title>{data.title}</title>
</svelte:head>