Nuxt SEO v5 modules (robots, sitemap, og-image, schema-org, link-checker, seo-utils, site-config). Use when implementing SEO, robots.txt, sitemaps, Schema.org, or meta tags in Nuxt apps.
Status: Production Ready | Dependencies: Nuxt >=3.0.0
Use this skill when building SEO-optimized Nuxt applications with any combination of the 8 official Nuxt SEO modules plus standalone modules.
# Recommended (v5)
npx nuxt module add @nuxtjs/seo
export default defineNuxtConfig({
modules: ['@nuxtjs/seo'],
site: {
url: 'https://example.com',
name: 'My Awesome Site',
description: 'Building amazing web experiences',
defaultLocale: 'en'
}
})
CRITICAL (v5 Breaking Change):
site.name is NO LONGER auto-inferred from package.json — set it explicitlysite.url to production URL (required for sitemaps and canonical URLs)defaultLocale if using i18nVisit these URLs to verify:
/robots.txt - Robots file/sitemap.xml - Sitemap/__robots__/debug-production.json - Debug (v5)/__sitemap__/debug-production.json - Debug (v5)npx nuxt module add @nuxtjs/robots
npx nuxt module add @nuxtjs/sitemap
npx nuxt module add nuxt-og-image
| Module | Version | Purpose |
|---|---|---|
| @nuxtjs/seo | v5.1.0 | Primary SEO module (installs all 8 as bundle) |
| @nuxtjs/robots | v6.0.6 | Manages robots.txt and bot detection |
| @nuxtjs/sitemap | v8.0.11 | Generates XML sitemaps with advanced features |
| nuxt-og-image | v6.3.1 | Creates Open Graph images via Vue templates |
| nuxt-schema-org | v6.0.4 | Builds Schema.org structured data graphs |
| nuxt-link-checker | v5.0.6 | Finds and fixes broken links with ESLint integration |
| nuxt-seo-utils | v8.1.4 | SEO utilities, share links, favicons, inline minification |
| nuxt-site-config | v4.0.7 | Centralized site configuration management |
Standalone (MIT): nuxt-ai-ready (llms.txt), nuxt-skew-protection (version safety)
Pro (Paid): Nuxt SEO Pro — Search Console, Core Web Vitals, MCP server
For detailed module docs: Load references/module-details.md
site.url AND site.name explicitly in nuxt.config.ts (v5: name no longer auto-inferred)getSiteConfig(event) on server side (v5: useSiteConfig(event) removed)defineSitemapSchema() for Content v3 (v5: asSitemapCollection() deprecated)site.url and site.name (breaks sitemaps, canonical URLs, titles)useSiteConfig(event) on server side (v5: use getSiteConfig(event))asSitemapCollection() (v5: use defineSitemapSchema())getSiteIndexable() (v5: use { indexable } = getSiteConfig(event))Error: /sitemap.xml returns 404 | Fix: Set site.url in nuxt.config.ts
Error: /robots.txt not accessible | Fix: Install @nuxtjs/robots and set site.url
Error: /__og-image__/og.png returns error | Fix: Use Satori-compatible CSS or switch to Chromium renderer
Error: Invalid JSON-LD | Fix: Follow official Schema.org types, validate with Google Rich Results Test
Error: 404 on internal links | Fix: Enable nuxt-link-checker with ESLint rules during development
Error: Multiple meta tags with same property | Fix: Let modules handle meta tags automatically
Error: Wrong canonical URL | Fix: Configure site.url and trailingSlash correctly
Error: Sitemap index XML malformed | Fix: Use chunkSize option to split large sitemaps
Error: Staging indexed by Google | Fix: disallow: process.env.NUXT_PUBLIC_ENV === 'staging' ? ['/'] : []
Error: No preview on social media | Fix: Use defineOgImage() on all important pages
Error: Site title/og:site_name missing | Fix: Set site.name in nuxt.config.ts or NUXT_SITE_NAME env var
Ref: https://nuxtseo.com/docs/nuxt-seo/migration-guide/v4-to-v5
Error: useSiteConfig is not a function on server | Fix: Use getSiteConfig(event) on server side
Ref: https://github.com/harlan-zw/nuxt-site-config/releases
Error: asSitemapCollection is not defined | Fix: Use defineSitemapSchema(), defineSchemaOrgSchema(), defineRobotsSchema()
Ref: https://nuxtseo.com/docs/nuxt-seo/migration-guide/v4-to-v5
Error: OG image requests return 403 or signature errors | Fix: Use defineOgImage() properly; don't manually construct OG image URLs
Ref: https://nuxtseo.com/docs/og-image/getting-started/introduction
export default defineNuxtConfig({
modules: ['@nuxtjs/seo'],
site: {
url: process.env.NUXT_PUBLIC_SITE_URL,
name: 'My Site',
defaultLocale: 'en'
},
robots: {
disallow: process.env.NUXT_PUBLIC_ENV === 'staging' ? ['/'] : []
},
sitemap: {
sitemaps: {
blog: { sources: ['/api/__sitemap__/blog'] }
}
}
})
useShareLinks({ title, twitter, utm }) with UTM trackingnpx nuxt-seo-utils icons --source logo.svgimport linkChecker from 'nuxt-link-checker/eslint'definePageMeta({ sitemap: { changefreq: 'daily', priority: 0.8 } })seo: { minify: true }Load reference files based on the user's specific needs:
| Load When | Reference File |
|---|---|
| Upgrading v4→v5, breaking changes | references/v5-migration-guide.md |
| Rendering modes, JSON-LD, canonical URLs, IndexNow | references/seo-guides.md |
| AI optimization, llms.txt, MCP tools | references/pro-modules.md |
| I18n SEO, route rules, link checker rules | references/advanced-seo-guides.md |
| OG image templates, Satori/Chromium, fonts | references/og-image-guide.md |
| Nuxt Content integration, asSeoCollection | references/nuxt-content-integration.md |
| Dynamic sitemaps, multi-sitemaps, chunking | references/sitemap-advanced.md |
| Server-side hooks, Nitro plugins | references/nitro-api-reference.md |
| llms.txt, AI crawlers, content signals | references/ai-seo-tools.md |
| Module capabilities overview | references/modules-overview.md |
| First-time setup, package manager specifics | references/installation-guide.md |
| Composable API docs, parameter lists | references/api-reference.md |
| Blog, e-commerce, multi-language patterns | references/common-patterns.md |
| Specific module configuration | references/module-details.md |
| Production SEO guidelines | references/best-practices.md |
| Error resolution, module conflicts | references/troubleshooting.md |
| Multi-environment, advanced features | references/advanced-configuration.md |
| Agent | Purpose |
|---|---|
seo-auditor.md | Comprehensive SEO audit |
schema-generator.md | Generate Schema.org structured data |
og-image-generator.md | Create custom OG image templates |
link-checker.md | Analyze internal/external links |
sitemap-builder.md | Design optimal sitemap strategies |
| Command | Purpose |
|---|---|
/seo-audit | Run comprehensive SEO audit |
/seo-setup | Quick Nuxt SEO project setup |
/og-preview | Preview OG image generation |
/check-links | Run link checker analysis |
/validate-sitemap | Validate sitemap configuration |
/check-schema | Validate Schema.org implementation |
assets/package-versions.json — Current module versions for verification{
"dependencies": {
"@nuxtjs/seo": "^5.1.0",
"@nuxtjs/robots": "^6.0.6",
"@nuxtjs/sitemap": "^8.0.11",
"nuxt-og-image": "^6.3.1",
"nuxt-schema-org": "^6.0.4",
"nuxt-link-checker": "^5.0.6",
"nuxt-seo-utils": "^8.1.4",
"nuxt-site-config": "^4.0.7"
}
}
Production Ready: All patterns based on official documentation from https://nuxtseo.com/llms-full.txt | Last verified: 2026-04-02