Noindex Tag Generator
Say what the page is and what you want to happen to it, and get the mechanism that actually does that — with the snippet for your stack.
Read this first. A URL that is disallowed in robots.txt is never fetched, so its noindex is never read. Blocking and noindexing the same page at the same time is the reason pages sit in the index for years with "No information is available for this page" under them. Pick one: to remove a page from search, leave it crawlable and let the crawler see the noindex.
Nothing you type here is uploaded, stored or sent anywhere. It all runs in your browser.
Four mechanisms, four different jobs
- noindex removes a page from search results and leaves it crawlable. It is the only mechanism that reliably takes a page out of the index and keeps it out. The page has to be fetchable for it to work.
- robots.txt Disallow stops the fetch. It does not stop indexing: a URL with links pointing at it can be indexed on the strength of those links alone, with no description, because the crawler was never allowed to look. Use it to save crawl budget on things like faceted navigation, not to hide pages.
- rel=canonical consolidates. It moves the signals from a duplicate onto the version you want ranked. Noindexing a duplicate instead throws those signals away, which is why "noindex the duplicates" is the wrong instinct on an e-commerce site.
- 410 Gone (or 404) is for pages that no longer exist. 410 is the more definitive of the two and tends to be processed slightly faster, but both get there. Neither needs a noindex, and putting a noindex on a page that already 404s does nothing, because the body of an error page is not read for directives.
Why a blocked page keeps showing up
Here is the sequence that traps people. You noindex a page. Weeks later it is still in the index, so you also block it in robots.txt to be thorough. Google now cannot fetch the page, so it cannot see the noindex, so the URL stays — now permanently, because the instruction that would remove it is behind a door you just locked. The fix is to unblock the URL, confirm the noindex is being served, and wait for a recrawl. On a low-traffic page that can take weeks; the Removals tool buys you six months while it happens.
X-Robots-Tag, for everything that has no head
A PDF, a spreadsheet, a raw image, a JSON file — none of them can carry a meta tag, and all of them can be indexed. The HTTP header does the same job from the server: X-Robots-Tag: noindex. It also scales better than a meta tag for whole directories, and it is the only option when you cannot edit the file itself. If you deploy behind a CDN, set it at the origin and check it survives — a header stripped by a proxy is a directive nobody ever sees.
Verify, do not assume
Whichever mechanism you use, confirm the crawler receives it rather than that you shipped it. Fetch the URL with curl -I and read the headers, use the URL Inspection tool in Search Console and look at the crawled HTML rather than the rendered page, and check that a JavaScript-injected noindex is actually in the served markup. A noindex added by client-side script is a coin flip. For the full set of directives — nosnippet, max-snippet, noarchive, unavailable_after and the per-crawler variants — use the meta robots generator; this page is only about the decision and the one directive that follows from it.
Questions people ask
How long does it take for a noindex to remove a page?
As long as it takes Google to recrawl the URL, which is days for a page that gets traffic and can be months for one that does not. There is no way to speed the crawl itself up, but you can request the URL be reprocessed in Search Console, and use the Removals tool for a temporary hide while the permanent mechanism catches up.
Should I use noindex or robots.txt?
Noindex when the page must not appear in results. Robots.txt when the page may appear but is not worth crawling — infinite filter combinations, internal search results, calendars. Never both on the same URL: the block prevents the noindex from ever being read.
Does noindex, nofollow pass any value?
No, and that is usually not what you want. noindex, follow keeps the crawler moving through the links on the page while the page itself drops out of results. Adding nofollow as well turns the page into a dead end. Over a long enough period Google tends to treat a long-term noindexed page as nofollow anyway, which is an argument for not relying on a noindexed page as a permanent part of your internal linking.
How do I keep a staging site out of Google?
HTTP authentication or an IP allowlist. Not robots.txt, which advertises the paths to anyone who reads it, and not noindex, which depends on the crawler behaving. If staging is reachable without a password, it will be found, and it will be indexed.
Is a noindex meta tag added by JavaScript reliable?
No. It depends on Google rendering the page, which happens on a separate and slower pass, and on nothing going wrong in that render. If a directive matters, serve it in the HTML response or in an HTTP header.
Related tools
Fewer pages, better links
Most sites that need a noindex sweep need a link strategy more. Cutting the index down helps; giving the survivors authority is what moves them.