Skip to content
svelte-vitals
English
Esc
navigateopen⌘Jpreview
On this page

seo/indexability · Indexability

A route should not be accidentally set to noindex.

Severity: info

What it checks

If a route’s <meta name="robots"> statically resolves to noindex (or none), it is surfaced so you can confirm the de-indexing is intentional. A dynamically-set robots value is not flagged.

Why it matters

A noindex directive removes the page from search results; an accidental noindex on a public route silently deindexes it, which is one of the most damaging SEO mistakes.

How to fix

If this route should be indexed, remove noindex from its robots meta:

<svelte:head>
  <meta name="robots" content="index, follow" />
</svelte:head>

Mode differences

Source analysis (the CLI, the dashboard’s static baseline) composes each route’s <head> from <svelte:head> in the page and its layout chain, followed into repo-local components, plus the known meta components (svelte-meta-tags, svelte-seo) and any you declare in metaComponents. It judges only a literal value; it never examines a dynamic one. Rendered analysis (the Vite plugin’s build pass, a route you visit in the dashboard) reads the shipped <head>, where every value is literal; the build pass covers prerendered routes only. When the two disagree, trust the rendered result.

Disabling

Record existing findings in the suppressions file (npx svelte-vitals --update-suppressions), scope the rule per route or path with overrides, or turn it off:

export default {
  rules: {
    'seo/indexability': 'off'
  }
};