Getting Your Nuxt Site Indexed · Nuxt SEO

-
-
-
-

[1.4K](https://github.com/harlan-zw/nuxt-seo)

[Nuxt SEO on GitHub](https://github.com/harlan-zw/nuxt-seo)

Learn SEO

Master search optimization

Nuxt

 Vue

-
-
-
-
-
-
-

-
-
-
-
-
-
-

-
-
-
-
-
-
-
-
-
-
-

-
-
-
-
-
-
-
-
-

1.
2.
3.
4.
5.

# Getting Your Nuxt Site Indexed

How to get your Nuxt site crawled, indexed, and cited in AI Overviews for the first time.

[![Harlan Wilton](https://avatars.githubusercontent.com/u/5326365?v=4)Harlan Wilton](https://x.com/harlan-zw)6 mins read Published Oct 25, 2024 Updated Jan 29, 2026

Deployed your Nuxt site to production? In 2026, you have three goals: get Google to crawl it, get Google to index it, and get LLMs to cite it. If you haven't launched yet, start with the

 to build authority before day one. For a quick reference of every step, see the

.
## [SSR by Default](#ssr-by-default)

Nuxt renders pages on the server by default, which means Google and AI crawlers see fully-rendered HTML immediately. No JavaScript execution delays.

This gives you faster, more reliable indexing compared to client-side SPAs. Your meta tags, content, and

 (which AI engines rely on) are all present in the initial HTML response.

**If you need client-side rendering for specific routes:**

- Use `ssr: false` in
- Pre-render pages at build time with `prerender: true`
- Set meta tags during SSR to ensure they're always present

For authenticated pages or dashboards where SSR isn't needed, configure it per-route:

```
export default defineNuxtConfig({
  routeRules: {
    '/dashboard/**': { ssr: false },
    '/blog/**': { prerender: true }
  }
})
```

## [Canonical URL Configuration](#canonical-url-configuration)

Multiple domains or subdomains pointing to your site? Only one version should be indexed and cited. This also prevents

 issues that split your ranking signals.

Example: `www.example.com` and `example.com` both serve your app, but only `example.com` should appear in Google.

**Solutions:**

1. **Server-level redirect** (preferred): 301 redirect all non-canonical URLs
2. **Canonical tags**: Tell Google which version is authoritative

```
const route = useRoute()

useHead({
  link: [
    { rel: 'canonical', href: \`https://example.com${route.path}\` }
  ]
})
```

If you're using the

 you can use the `redirectToCanonicalSiteUrl` option to automatically redirect non-canonical URLs.

See

 for implementation details.

## [Set Up Google Search Console](#set-up-google-search-console)

You need

 to monitor indexing and AI visibility. Ideally, set this up weeks before launch as part of your

. If you haven't yet:

1. Visit [search.google.com/search-console](https://search.google.com/search-console)
2. Add your property (Domain property recommended)
3. Verify ownership via DNS (best for catching all subdomains)
4. Submit your at **Indexing > Sitemaps**

Monitor the **Performance** report for **AI Mode** data to see how often you're appearing in AI Overviews.

## [Request Indexing](#request-indexing)

After sitemap submission, request indexing for important pages:

**Manual method:**

1. Open [URL Inspection](https://support.google.com/webmasters/answer/9012289) in Search Console
2. Enter your URL
3. Click **Request Indexing**

You get [~10 requests per day](https://support.google.com/webmasters/answer/9012289). Use them for homepage and critical pages.

**Bulk method:** Use [RequestIndexing](https://requestindexing.com/) by @harlan_zw to submit multiple URLs automatically.

**Instant notification (Bing/Yandex):**

 notifies search engines immediately when content changes. This is critical for getting new content into Bing's AI chat features.

## [Core Web Vitals Check](#core-web-vitals-check)

[Google uses Core Web Vitals](https://developers.google.com/search/docs/appearance/core-web-vitals) as a ranking signal. In 2026, **INP (Interaction to Next Paint)** is a primary focus for responsiveness.

| Metric | Good | Poor |
| --- | --- | --- |
| LCP (Largest Contentful Paint) | ≤2.5s | >4s |
| INP (Interaction to Next Paint) | ≤200ms | >500ms |
| CLS (Cumulative Layout Shift) | ≤0.1 | >0.25 |

Use [PageSpeed Insights](https://pagespeed.web.dev/) or Lighthouse to test. Don't chase perfect scores. Fix red flags and move on.

See

 for optimization techniques.

## [Lighthouse SEO & AI Audit](#lighthouse-seo-ai-audit)

Run Lighthouse on your key pages. Focus on **SEO** and **Accessibility**. Also, check for AI-readiness:

- Structured data (JSON-LD) correctly implemented
- Clear, semantically meaningful headings (H1-H6)
- Descriptive for all images
- or [nuxt-llms](https://github.com/harlan-zw/nuxt-llms) configured
- structure reviewed (no orphan pages)

Use [Unlighthouse](https://unlighthouse.dev/) to audit your entire site in bulk.

## [Build Initial Authority](#build-initial-authority)

New sites have zero authority. Google and LLMs are skeptical of them. The best approach is to start building authority weeks before launch with the

, which covers domain warmup, content seeding, and early backlink strategies. For ongoing link building after launch, see

.
## [Common Nuxt-Specific Issues](#common-nuxt-specific-issues)

For a complete troubleshooting workflow, see the

.

**Meta tags not updating on navigation:**

- Use reactive values in `useSeoMeta()` or `useHead()`
- Verify tags appear in **View Page Source** (not DevTools)
- Check guides

**Slow Interaction to Next Paint (INP):**

- Avoid long-running tasks on the main thread
- Use `scheduler.yield()` or `scheduler.postTask()` for heavy computations
- Check for INP fixes

**Pages "Crawled - currently not indexed":**

- Content may be too thin or lack unique value
- AI crawlers may have crawled but Google decided not to show in Web or AI results
- See

## [After Launch](#after-launch)

1. Check weekly for errors
2. Monitor **AI Mode** impressions to track citation growth
3. Monitor in field data (RUM)
4. Keep publishing content and building authority

## [Automate with Nuxt SEO](#automate-with-nuxt-seo)

For automatic

 generation,

, OG images, and schema.org:

---

On this page

- [SSR by Default](#ssr-by-default)
- [Canonical URL Configuration](#canonical-url-configuration)
- [Set Up Google Search Console](#set-up-google-search-console)
- [Request Indexing](#request-indexing)
- [Core Web Vitals Check](#core-web-vitals-check)
- [Lighthouse SEO & AI Audit](#lighthouse-seo-ai-audit)
- [Build Initial Authority](#build-initial-authority)
- [Common Nuxt-Specific Issues](#common-nuxt-specific-issues)
- [After Launch](#after-launch)
- [Automate with Nuxt SEO](#automate-with-nuxt-seo)

[GitHub](https://github.com/harlan-zw/nuxt-seo) [ Discord](https://discord.com/invite/275MBUBvgP)

###

-
-

Modules

-
-
-
-
-
-
-
-
-

###

-
-
-

###

Nuxt

-
-
-
-
-

Vue

-
-
-
-
-
-
-
-

###

-
-
-
-
-
-
-
-
-
-

Copyright © 2023-2026 Harlan Wilton - [MIT License](https://github.com/harlan-zw/nuxt-seo/blob/main/license) · [mdream](https://mdream.dev)