Meta Robots Tags in Nuxt · Nuxt SEO

[NuxtSEO](https://nuxtseo.com/ "Home")

- [Modules](https://nuxtseo.com/docs/nuxt-seo/getting-started/introduction)
- [Tools](https://nuxtseo.com/tools)
- [Pro](https://nuxtseo.com/pro)
- [Learn SEO](https://nuxtseo.com/learn-seo/nuxt) [Releases](https://nuxtseo.com/releases)

[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

[SEO Checklist](https://nuxtseo.com/learn-seo/checklist) [Pre-Launch Warmup](https://nuxtseo.com/learn-seo/pre-launch-warmup) [Backlinks & Authority](https://nuxtseo.com/learn-seo/backlinks)

[Mastering Meta](https://nuxtseo.com/learn-seo/nuxt/mastering-meta)

- [Titles](https://nuxtseo.com/learn-seo/nuxt/mastering-meta/titles)
- [Meta Description](https://nuxtseo.com/learn-seo/nuxt/mastering-meta/descriptions)
- [Image Alt Text](https://nuxtseo.com/learn-seo/nuxt/mastering-meta/alt-text)
- [Social Sharing](https://nuxtseo.com/learn-seo/nuxt/mastering-meta/open-graph)
- [Rich Results](https://nuxtseo.com/learn-seo/nuxt/mastering-meta/rich-results)
- [Schema.org](https://nuxtseo.com/learn-seo/nuxt/mastering-meta/schema-org)
- [Twitter Cards](https://nuxtseo.com/learn-seo/nuxt/mastering-meta/twitter-cards)

[ Controlling Crawlers](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers)

- [Robots Txt](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/robots-txt)
- [Sitemaps](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/sitemaps)
- [Robot Meta Tag](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/meta-tags)
- [Canonical Link Tag](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/canonical-urls)
- [HTTP Redirects](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/redirects)
- [Duplicate Content](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/duplicate-content)
- [llms.txt](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/llms-txt)

[ Routes & Rendering](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering)

- [URL Structure](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/url-structure)
- [Pagination](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/pagination)
- [Trailing Slashes](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/trailing-slashes)
- [Query Parameters](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/query-parameters)
- [Hreflang & i18n](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/i18n)
- [404 Pages](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/404-pages)
- [Dynamic Routes](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/dynamic-routes)
- [Internal Linking](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/internal-linking)
- [Programmatic SEO](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/programmatic-seo)
- [Rendering Modes](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/rendering)
- [Security](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/security)

[ Launch & Listen](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen)

- [Getting Indexed](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen/going-live)
- [Google Search Console](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen/search-console)
- [Core Web Vitals](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen/core-web-vitals)
- [Indexing Issues](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen/indexing-issues)
- [SEO Monitoring](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen/seo-monitoring)
- [Site Migration](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen/site-migration)
- [IndexNow](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen/indexnow)
- [Debugging](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen/debugging)
- [AI Search Optimization](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen/ai-optimized-content)

1. [Learn SEO for Nuxt](https://nuxtseo.com/learn-seo)
2.
3. [Controlling Crawlers](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers)
4.
5. [Meta Tags](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/meta-tags)

# Meta Robots Tags in Nuxt

Control page-level indexing with meta robots tags. Block search results pages, manage pagination, and prevent duplicate content in Nuxt apps.

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

What you'll learn

- `noindex` prevents indexing, `nofollow` stops link equity flow through that page
- In 2026, use `data-nosnippet` to block specific content from AI Overviews
- Use X-Robots-Tag HTTP header for non-HTML files (PDFs, images)
- Must be server-rendered. client-only meta tags may be missed by crawlers

Meta robots tags give page-level control over search engine indexing and AI content extraction. In 2026, these tags have become more granular, allowing you to opt-out of specific AI-driven features like AI Overviews without delisting your page from search.

Use them to block filtered pages from indexing, prevent duplicate content issues on pagination, or control snippet appearance. For non-HTML files (PDFs, images) use [X-Robots-Tag HTTP headers](https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag#xrobotstag) instead. For site-wide rules stick with [robots.txt](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/robots-txt).

## [Setup](#setup)

Add the robots meta tag using `useSeoMeta()` in your Nuxt pages. Nuxt server-renders these tags automatically. crawlers see them in the initial HTML response.

Block Indexing

```
useSeoMeta({
  robots: 'noindex, follow'
})
```

Control Snippets

```
useSeoMeta({
  robots: 'index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1'
})
```

## [How Meta Robots Tags Work](#how-meta-robots-tags-work)

The robots meta tag goes in your page's `<head>` and tells crawlers what to do with that specific page ([Google's documentation](https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag)):

```
<meta name="robots" content="index, follow">
```

Without a robots meta tag, crawlers assume `index, follow` by default ([MDN reference](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/meta/name/robots)).

### [Common Directives](#common-directives)

- `noindex`: Exclude from search results
- `nofollow`: Don't follow links on this page
- `noarchive`: Prevent cached copies
- `nosnippet`: No description snippet in results and **blocks content from AI Overviews**
- `max-snippet:[number]`: Limit snippet to N characters
- `max-image-preview:[setting]`: Control image preview size (none, standard, large)
- `max-video-preview:[number]`: Limit video preview to N seconds

### [Granular Control: data-nosnippet](#granular-control-data-nosnippet)

In 2026, use the `data-nosnippet` HTML attribute to control which parts of your page search engines use in snippets or AI models extract.

app.vue

```
<p>This content can be used in search snippets.</p>
<div data-nosnippet>
  This content will NEVER appear in a search snippet or AI Overview.
</div>
```

This is particularly useful for:

- Avoiding spoilers in review sites
- Protecting sensitive data that must be public but not "snip-able"
- Managing how AI summarizers "see" your page structure

### [Critical Requirements](#critical-requirements)

Must be server-side rendered. Google can execute JavaScript but does so in a [second rendering wave](https://medium.com/@emironic/server-side-rendering-ssr-vs-client-side-rendering-csr-why-it-matters-more-than-ever-for-ai-4dbf65142abc), which can delay or prevent proper indexing. Nuxt's SSR puts the tag in the HTML response immediately.

If you block the page in robots.txt, crawlers [never see the meta tag](https://developers.google.com/search/docs/crawling-indexing/block-indexing). Don't combine robots.txt blocking with noindex. the noindex won't work.

Target specific crawlers by replacing `robots` with a user agent token like `googlebot`. More specific tags override general ones.

## [Noindex Follow vs Noindex Nofollow](#noindex-follow-vs-noindex-nofollow)

Use `noindex, follow` when you want to block indexing but preserve link equity flow. The page won't rank, but links on it still count ([Wolf of SEO guide](https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag)).

Use `noindex, nofollow` for pages with no valuable links. login forms, checkout steps, truly private content.

Noindex Follow - Preserve Links

```
// Filter pages, thank you pages, test pages
useSeoMeta({
  robots: 'noindex, follow'
})
```

Noindex Nofollow - Block Everything

```
// Login pages, admin sections
useSeoMeta({
  robots: 'noindex, nofollow'
})
```

Note that `follow` doesn't force crawling. it allows it. Pages may still be crawled less over time if they remain noindexed.

## [Common Use Cases](#common-use-cases)

### [Search Results and Filtered Pages](#search-results-and-filtered-pages)

Internal search results and filter combinations create [duplicate content](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/duplicate-content). [Google recommends](https://developers.google.com/search/docs/specialty/ecommerce/pagination-and-incremental-page-loading) blocking these with noindex or robots.txt:

pages/search.vue

```
useSeoMeta({
  robots: 'noindex, follow'
})
```

pages/products/[category].vue

```
const { query } = useRoute()

useSeoMeta({
  robots: Object.keys(query).length > 0 ? 'noindex, follow' : 'index, follow'
})
```

Combine with [canonical tags](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/canonical-urls) pointing to the main category page. but don't use both noindex and canonical on the same page (sends [conflicting signals](https://www.oncrawl.com/technical-seo/use-robots-txt-meta-robots-canonical-tags-correctly/)).

### [Pagination](#pagination)

Google no longer uses `rel="next"` and `rel="prev"` tags ([Google documentation](https://developers.google.com/search/docs/specialty/ecommerce/pagination-and-incremental-page-loading)). Instead, link to next/previous pages with regular `<a>` tags and let Google discover the sequence naturally. See the [Pagination SEO guide](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/pagination) for implementation details.

You don't need to noindex pagination pages. Google treats them as part of the sequence. Only noindex if the paginated content is duplicate or low-value.

### [User-Generated Content](#user-generated-content)

Limit snippet length and prevent caching for dynamic user profiles:

pages/user/[id]/profile.vue

```
useSeoMeta({
  robots: 'index, follow, noarchive, max-snippet:50'
})
```

## [X-Robots-Tag for Non-HTML Files](#x-robots-tag-for-non-html-files)

The meta robots tag only works in HTML. For PDFs, images, videos, or other files, use the [X-Robots-Tag HTTP header](https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag#xrobotstag) instead ([MDN reference](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/X-Robots-Tag)):

```
X-Robots-Tag: noindex, nofollow
```

X-Robots-Tag supports the same directives as the meta tag. It's also useful for bulk operations. you can apply it to entire directories or file patterns via server configuration.

Don't use both meta robots and X-Robots-Tag on the same resource. easy to create [conflicting instructions](https://www.semrush.com/blog/robots-meta/).

## [Verification](#verification)

Use [Google Search Console's URL Inspection tool](https://support.google.com/webmasters/answer/9012289) to verify your robots meta tag:

1. Enter the URL
2. Check "Indexing allowed?" status
3. View the rendered HTML to confirm tag appears

If a noindexed page still appears in search results, it hasn't been recrawled yet. Depending on the page's importance, [it can take months](https://developers.google.com/search/docs/crawling-indexing/block-indexing) for Google to revisit and apply the directive. Request a recrawl via the URL Inspection tool.

Monitor "Excluded by 'noindex' tag" reports in [Search Console](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen/search-console). Sudden spikes indicate accidental noindexing of important pages.

[The 2026 SEO Checklist for Nuxt & Vue Pre-launch setup, post-launch verification, and ongoing monitoring. Interactive checklist with links to every guide.](https://nuxtseo.com/learn-seo/checklist) [Haven't launched yet? Start with the Pre-Launch Warmup](https://nuxtseo.com/learn-seo/pre-launch-warmup)

---

[Sitemaps Generate sitemaps for Nuxt with the @nuxtjs/sitemap module or server routes for dynamic content.](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/sitemaps) [Canonical Link Tag Canonical URLs tell search engines which version of a page to index when duplicate content exists. Here's how to set them up in Nuxt.](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers/canonical-urls)

On this page

- [Setup](#setup)
- [How Meta Robots Tags Work](#how-meta-robots-tags-work)
- [Noindex Follow vs Noindex Nofollow](#noindex-follow-vs-noindex-nofollow)
- [Common Use Cases](#common-use-cases)
- [X-Robots-Tag for Non-HTML Files](#x-robots-tag-for-non-html-files)
- [Verification](#verification)

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

### [NuxtSEO](https://nuxtseo.com/ "Home")

- [Getting Started](https://nuxtseo.com/docs/nuxt-seo/getting-started/introduction)
- [MCP](https://nuxtseo.com/docs/nuxt-seo/guides/mcp)

Modules

- [Robots](https://nuxtseo.com/docs/robots/getting-started/introduction)
- [Sitemap](https://nuxtseo.com/docs/sitemap/getting-started/introduction)
- [OG Image](https://nuxtseo.com/docs/og-image/getting-started/introduction)
- [Schema.org](https://nuxtseo.com/docs/schema-org/getting-started/introduction)
- [Link Checker](https://nuxtseo.com/docs/link-checker/getting-started/introduction)
- [SEO Utils](https://nuxtseo.com/docs/seo-utils/getting-started/introduction)
- [Site Config](https://nuxtseo.com/docs/site-config/getting-started/introduction)
- [Skew Protection](https://nuxtseo.com/docs/skew-protection/getting-started/introduction)
- [AI Ready](https://nuxtseo.com/docs/ai-ready/getting-started/introduction)

### [NuxtSEO Pro](https://nuxtseo.com/pro "Home")

- [Getting Started](https://nuxtseo.com/pro)
- [Dashboard](https://nuxtseo.com/pro/dashboard)
- [Pro MCP](https://nuxtseo.com/docs/nuxt-seo-pro/mcp/installation)

### [Learn SEO](https://nuxtseo.com/learn-seo "Learn SEO")

Nuxt

- [Mastering Meta](https://nuxtseo.com/learn-seo/nuxt/mastering-meta)
- [Controlling Crawlers](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers)
- [Launch & Listen](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen)
- [Routes & Rendering](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering)
- [Staying Secure](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/security)

Vue

- [Vue SEO Guide](https://nuxtseo.com/learn-seo/vue)
- [Mastering Meta](https://nuxtseo.com/learn-seo/vue/mastering-meta)
- [Controlling Crawlers](https://nuxtseo.com/learn-seo/vue/controlling-crawlers)
- [SPA SEO](https://nuxtseo.com/learn-seo/vue/spa)
- [SSR Frameworks](https://nuxtseo.com/learn-seo/vue/ssr-frameworks)
- [SEO Checklist](https://nuxtseo.com/learn-seo/checklist)
- [Pre-Launch Warmup](https://nuxtseo.com/learn-seo/pre-launch-warmup)
- [Backlinks & Authority](https://nuxtseo.com/learn-seo/backlinks)

### [Tools](https://nuxtseo.com/tools "SEO Tools")

- [Social Share Debugger](https://nuxtseo.com/tools/social-share-debugger)
- [Robots.txt Generator](https://nuxtseo.com/tools/robots-txt-generator)
- [Meta Tag Checker](https://nuxtseo.com/tools/meta-tag-checker)
- [HTML to Markdown](https://nuxtseo.com/tools/html-to-markdown)
- [XML Sitemap Validator](https://nuxtseo.com/tools/xml-sitemap-validator)
- [Schema.org Validator](https://nuxtseo.com/tools/schema-validator)
- [Keyword Research Pro](https://nuxtseo.com/tools/keyword-research)
- [SERP Analyzer Pro](https://nuxtseo.com/tools/serp-analyzer)
- [Domain Rankings Pro](https://nuxtseo.com/tools/domain-rankings)

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