Two tools, two different jobs
These two instructions are often confused because both affect which pages appear in search results. They do very different things.
- Noindex says: do not keep this page in your index.
- Canonical says: this page is similar to another one, and the other one is the version I prefer.
One removes a page from consideration. The other points to a better version of the same thing.
Noindex
A noindex instruction asks search engines not to include a page in their index. It can be set in two ways:
- A meta tag in the page’s head section, such as
<meta name="robots" content="noindex">. - An HTTP response header, which is useful for files that are not web pages, such as PDFs.
After the page is crawled and the instruction is read, the page is generally dropped from results. This takes time, because the search engine has to revisit the page.
When noindex is a good choice
Noindex suits pages that must exist for visitors but add nothing in search results:
- Thank-you and confirmation pages.
- Internal search results.
- Account, cart and login pages.
- Thin archive pages, such as tag listings with little value.
- Drafts and test content that is online for review.
Things to remember
- The crawler must be able to fetch the page to see the tag. If a page is blocked in the robots file, the noindex tag cannot be read, and the address may remain known. Choose one approach deliberately.
- Noindex is not security. The page is still public to anyone with the address. Use a login for private material.
- Links on a noindexed page may be followed less over time, so do not rely on such a page to pass visibility to others.
- It is easy to leave in place by accident. A site setting that discourages search engines, switched on during development, is a classic cause of a whole site disappearing from results.
Canonical tags
A canonical tag is a line in the page’s head section that names the preferred address for that content:
<link rel="canonical" href="https://www.example.com/shoes/">
Imagine the same shoe listing reachable at /shoes/, /shoes/?sort=price and /shoes/?ref=newsletter. Each of the variants can carry a canonical tag pointing to /shoes/. This tells search engines that the variants are duplicates, and that signals should be combined at the preferred address.
When canonical is a good choice
- Parameter versions of the same page, such as sort orders and tracking tags.
- Pages reachable at several addresses that you cannot redirect.
- Syndicated content, where the original should be treated as the main version.
- Print or alternative views.
Things to remember
- It is a hint, not a command. Search engines may pick a different address if other signals, such as redirects, internal links and the sitemap, disagree with your tag.
- Point to one clean, working address. A canonical that points to a redirecting, missing or blocked page is a mistake.
- Use full addresses, including the correct protocol and host, rather than short relative paths, which are easy to get wrong.
- Pages that carry a self-referencing canonical, pointing to themselves, are normal and a good habit.
- Do not combine it carelessly with other instructions. A page that says noindex and also names another page as canonical sends mixed signals.
- Do not point many different pages to one address just to concentrate value. The pages should be genuinely near-identical, or the tag is likely to be ignored.
Choosing between them
| Situation | Better choice |
|---|---|
| Same content at several addresses, all useful to visitors | Canonical to the preferred address |
| Same content, and the extra addresses are not needed at all | Redirect them to the preferred address |
| A page visitors need but search results do not | Noindex |
| A page that should be gone for good | Remove it and return a gone or not-found status |
| Very similar pages that really serve different purposes | Neither: make them distinct or merge them |
The redirect row is worth underlining. If a duplicate address has no reason to stay reachable, a permanent redirect is generally a stronger and clearer signal than a canonical hint.
How to check what a page says
- View the page source and search for
canonicalandnoindexin the head section. - Check the response headers if you suspect a header-based instruction.
- Use the inspection feature in your search tools to see which address the search engine chose as canonical. If it differs from yours, look for conflicting signals.
- Crawl the whole site and list pages with noindex, and pages whose canonical points elsewhere. Look for important pages in either list.
- Review these lists after every redesign, migration or plugin change.
A common sequence of mistakes
A site is built on a staging copy with noindex switched on. The copy goes live and the setting stays. Weeks later, traffic falls, and someone adds canonical tags everywhere pointing at the home page in a hurry to “fix” duplicates. Now search engines are being told both to ignore pages and that all pages are copies of the home page. Untangling this means removing the unwanted tags, giving each page a correct self-referencing canonical, and then waiting for pages to be recrawled. Outcomes cannot be guaranteed, but clean and consistent instructions give search engines the best chance of reading your intent correctly.