Skip to content

Rule · SEO

JavaScript changes canonical, robots, title or description after load

seo/head-js-mutationerrorvoid seoupdated

Why it matters

Google may skip rendering when raw HTML says noindex, and it compares raw vs rendered canonicals; non-rendering AI crawlers only ever see the raw values. Changed canonical/robots is an error, changed title/description a warning.

How to fix it

Render head metadata on the server (metadata/generateMetadata) and don't set document.title or canonical links from client effects.

References

void seo reports 60 rules in this category. What search engines need from the raw response: status codes, titles and descriptions in <head>, self-referencing canonicals, one h1, crawlable links, Open Graph, icons, robots.txt and a sitemap with real dates.