The crawling and indexing guide in this section covers noindex and nofollow, the two best-known meta robots directives. They're only two of a longer list that allows much finer control over how (or whether) each page shows up in search results, including directives specifically designed to limit how much content appears in the snippet, something that has gained practical relevance with the rise of AI-generated summaries that quote longer excerpts than a classic snippet.
The base syntax: one or several comma-separated values
Every directive in this guide is declared the same way as noindex: in the <meta name="robots" content="..."> tag in the <head>, or in the X-Robots-Tag HTTP header for non-HTML resources. Several directives can be combined, comma-separated, in the same value, and a directive can also be targeted at one specific crawler instead of all of them, by replacing robots with that user-agent's name (for example googlebot) so only that crawler applies it.
none: the shortcut almost nobody uses, but that exists
The none directive is exactly equivalent to declaring noindex, nofollow together; it's a syntax shortcut, not a directive with different behavior. Its practical value is marginal (writing out both explicit directives is just as valid and more readable for anyone reviewing the code later), but it's worth recognizing when auditing someone else's site, because it has exactly the same restrictive effect as the full combination, and mistaking it for a simple noindex leads to underestimating that it's also cutting off crawl flow to that page's links.
<!-- Exact equivalents -->
<meta name="robots" content="none">
<meta name="robots" content="noindex, nofollow">
noarchive: control over the cached copy, now more symbolic than practical
noarchive asks Google not to store or show a cached copy of the page. For years it had a direct visible effect: the "Cached" link that used to appear next to each search result, useful when a site went down temporarily and the user wanted to reach the last indexed version anyway. Google removed that cached link from search results across the board, so noarchive's original visible effect has practically disappeared for the average user. It's still worth documenting for two reasons: it remains part of the official spec and some other engines or third-party tools may still respect it, and it communicates a clear intent (don't archive this content) that could become practically relevant again if Google or another search engine reintroduces some kind of historical copy or citation mechanism.
nosnippet: no text fragment, no preview, nothing shown beyond title and URL
nosnippet tells Google not to show any descriptive text fragment, nor any video or image preview, under that page's result in search: only the title and URL will appear, with no preview of the content at all. It's a drastic directive rarely worth applying to normal content (it directly reduces CTR, since the snippet is what helps a user decide whether that page answers their search), but it has legitimate use cases: pages whose content changes so fast that any cached fragment would go stale almost immediately, or licensed content where showing any fragment at all, however short, is already a contractual problem with the content provider.
<meta name="robots" content="nosnippet">
max-snippet, max-image-preview and max-video-preview: the fine-grained control that replaced all-or-nothing
Before these three directives existed, the only way to limit the snippet was nosnippet, an all-or-nothing switch. Google introduced a group of directives that let you set a numeric limit instead of removing the snippet entirely, giving much finer control, especially relevant today because AI-generated summaries in search can quote considerably longer fragments than a traditional one- or two-line snippet if not explicitly limited:
<meta name="robots" content="max-snippet:150, max-image-preview:large, max-video-preview:30">
max-snippet sets the maximum number of text characters that can be shown as a fragment (0 means no text fragment at all, similar to nosnippet but only for text; -1 means no explicit limit, leaving it to Google). max-image-preview controls the maximum thumbnail size that can be shown, with three possible values: none (no image), standard (default size) or large (a large thumbnail, needed for example for an article to be eligible for certain featured visual formats). max-video-preview sets, in seconds, the maximum duration of an animated video preview, with 0 for a single static image as a thumbnail and -1 for no limit.
Why max-snippet matters more now than a few years ago
When the snippet was effectively limited by the visual space of a traditional search result (one or two lines of text), the incentive to explicitly configure max-snippet was low: the practical limit was already imposed by the interface's own design. With the rise of AI-generated summaries that can quote and synthesize considerably longer fragments of a page inside a conversational answer, a site that depends on direct traffic to its own page (for example, partially paywalled content, or content whose business model is the visit itself) has a real reason to set a low max-snippet, limiting how much content can be reused outside the page itself without resorting to nosnippet's all-or-nothing.
When meta robots and X-Robots-Tag contradict each other: what wins
On sites with configurations inherited from different eras, it's common to find a page with one directive in the HTML's <meta name="robots"> tag and a different directive in that same resource's X-Robots-Tag HTTP header. The resolution rule isn't that one source has fixed priority over the other: Google combines every directive found, from any valid source, and applies the most restrictive one when they directly conflict. An index in the HTML combined with a noindex in the HTTP header resolves as noindex, not as a tie or a preference for one source over the other: when in doubt, the directive that most limits the page's visibility always wins.
# HTTP header says noindex...
Header set X-Robots-Tag "noindex"
<!-- ...even if the HTML says index, the final result is noindex -->
<meta name="robots" content="index">
Frequently asked questions
Is there any point using noarchive today now that Google no longer shows the "Cached" link?
The direct, visible benefit to the user has disappeared along with that link, but the directive is still part of the spec and may still be respected by other engines or tools, so keeping it doesn't hurt and communicates an intent that could regain relevance if some search engine's behavior changes.
Is max-snippet:0 the same as nosnippet?
Very similar but not identical: max-snippet:0 removes the text fragment but doesn't necessarily affect image or video previews, which are controlled by their own independent directives; nosnippet removes every kind of preview at once.
Can I apply max-snippet only to Googlebot and leave other search engines unlimited?
Yes, by replacing robots with googlebot in the tag or header name; every search engine that respects these directives reads them under its own user-agent name in addition to the generic robots, allowing different rules per engine if needed.
Does using nosnippet or a very low max-snippet reduce CTR?
Almost always yes, since the text fragment is one of the signals that most helps a user decide whether the result answers their search before clicking; it's worth reserving these directives for cases with a concrete business reason, not applying them by default to the whole site.