Alternate page with proper canonical tag: what Search Console means

You saw Alternate page with proper canonical tag in the Page indexing report. That means this URL points its canonical to another URL and Google agreed. The page is out of the index on purpose, unless you set the wrong canonical.

By , founder of Porteur · Updated 13 September 2026 · Markdown

What this status means, in plain English

Search Console shows Alternate page with proper canonical tag for URLs that declare a different canonical, and Google accepts it. Google will not index this URL. It will index the canonical URL instead.

Example: /pricing?ref=twitter has <link rel="canonical" href="https://yourproduct.com/pricing"/>. Google agrees that /pricing is the canonical. /pricing?ref=twitter shows as alternate, not indexed. /pricing is indexed.

When this status is fine

  • Tracking or marketing parameters, like /features?utm_source=newsletter.
  • Print, share, preview, or test variants you do not want indexed.
  • Filtered or sorted catalog variants that should fold into the main list.
  • Trailing slash or uppercase variants you want normalised to one URL.
  • Both http and https, or both www and non www, but you want one canonical.
  • Session IDs or duplicate paths in programme generated pages.

A fixed page in this case shows the clean URL as the canonical, returns 200, and the alternates all point to it with rel=canonical. Your internal links also use the clean URL.

When it signals a mistake

You set a canonical to a different page that is not a true duplicate. Google agreed, so the page you want is excluded. You lose the chance to rank that content.

SymptomExampleWhy it is wrongWhat to do
Wrong page ranks/guides/getting-started canonicalises to /guides/overviewThey serve different intents, now only /guides/overview can rankRemove the canonical, or point each to itself
All locales fold into one/en/pricing canonicalises to /pricingLanguage or region pages are not duplicatesUse hreflang across self-canonical pages, one per locale
Paginated lists fold to page 1/blog/page/2 canonicalises to /blog/Page 2 is not a duplicate, users need itUse rel=next/prev is deprecated, leave each page self-canonical
Canonical to non-existent URL/features canonicalises to /feature/feature 404s or redirects, signal is brokenCanonicalise to the final, indexable URL
Cross-type canonical/blog/post canonicalises to /featuresA post is not a feature pageSelf-canonicalise each, add internal links if you want consolidation
Canonical to a noindex/pricing canonicalises to /pricing?view=table with noindexNoindex blocks the chosen canonicalRemove noindex on the canonical or change the canonical target

If you see traffic fall for the alternate, it is expected. Search Console ties impressions and clicks to indexed pages. Traffic should accrue to the canonical instead.

How to confirm the canonical Google chose

  1. Open URL Inspection

    In Search Console, enter the alternate URL in Inspect any URL.

  2. Check User-declared vs Google-selected canonical

    Expand Coverage. You will see the canonical you set, and the canonical Google chose. For this status, they match.

  3. Inspect the canonical URL

    Click View crawled page or Inspect the canonical URL. Confirm it returns 200, is indexable, and has the content you expect to rank.

  4. Fetch the HTML

    Use View tested page, then HTML, and find the <link rel="canonical" ...>. Confirm it is absolute, the correct URL, and appears once.

  5. Verify signals agree

    Check internal links, sitemaps, hreflang, http headers, and redirects all point to the same canonical URL.

Also check the canonical URL in your browser with curl -I or your dev tools. Confirm 200 OK, not a redirect loop, and Cache-Control is not blocking crawlers.

Fixing a wrong canonical in common setups

Your goal is simple: each unique page that should rank declares itself as canonical, and its alternates point to it. Here is how to change it in practice.

  • Static site or custom app: set a single <link rel="canonical" href="https://yourproduct.com/path"/> per indexable page. Remove duplicates. Use absolute URLs.
  • WordPress: in the editor, set the canonical in your SEO plugin per post or page. For Yoast, Rank Math, or AIOSEO, find Advanced or Canonical URL and set it to the page’s own URL. Remove any global rule that points posts to a hub.
  • Shopify: avoid theme code that forces collection or product canonicals to the first variant or to the collection. Each product page should self-canonicalise unless you consolidate variants.
  • Headless CMS: render a canonical field from content, default to the resolved, final URL. Do not canonicalise to a URL that redirects.
  • Pagination: leave /blog/page/2, /page/3 and so on self-canonical. Keep rel="prev" and rel="next" out, as of 2026 Google ignores them. Provide clear internal links.
  • Faceted navigation: add noindex to throwaway combinations, keep indexable facets self-canonical, and link to them. Use parameter handling only if you must.
  • UTM and tracking: never canonicalise to the URL with parameters. Always canonicalise to the clean URL without the UTM.
  • International sites: each language page self-canonicalises. Use hreflang across equivalents. Do not canonicalise /en/ to /.
  • HTTP and www: redirect to your primary host, and make the final URL the canonical.

Example fix: /guides/getting-started incorrectly canonicalises to /guides/. Change the canonical in your template to /guides/getting-started. Update internal links to point to /guides/getting-started. Remove any auto canonical rule for guides to the hub page. On recrawl, Google should index /guides/getting-started.

Edge cases that trip small sites

  • Home duplicates: / and /index.html. Canonicalise to /. Redirect /index.html to /.
  • Case and slash: /Pricing versus /pricing, with and without trailing slash. Pick one version, redirect, and canonicalise to it.
  • Canonical to a redirected URL: point canonicals to the final URL, not the pre redirect version.
  • Sitemap mismatches: sitemap lists /pricing/, page canonical is /pricing. Make sitemap and page match.
  • Infinite scroll: page 2 reachable only via JS, canonical to page 1. Add real links to paginated pages, and self-canonical each.
  • AMP: if you still serve AMP, amp page canonicals to the canonical web page, and the web page links to its amphtml. Do not cross canonicals between unrelated pages.
  • Canonical in HTTP header and HTML: keep one truth. Prefer the HTML link tag for simplicity.
  • Duplicate titles and H1s: canonicals used to paper over thin, near duplicates. Fix the content or merge the pages.

How to validate the fix in Search Console

  1. Request a recrawl

    In URL Inspection, click Test live URL on the fixed page. If indexable, click Request indexing.

  2. Watch the canonical fields

    After Google recrawls, Inspect the URL again. User-declared canonical should be the page itself. Google-selected canonical should match it.

  3. Check the Page indexing report

    The URL should move out of Alternate page with proper canonical tag. The canonical URL may show as Indexed, not submitted in sitemap or another relevant status.

  4. Confirm performance moves

    Open Performance. Filter to the fixed page. Over the next 28 days, impressions and clicks should accrue to the page that is now indexed.

Impressions are counted when a link to your page appears on a results page a user loaded. CTR is clicks divided by impressions. Position is the highest link’s position per results page. Average position is the mean over impressions. The report holds up to 16 months, and the default compares the last 28 days against the 28 before. Bear this in mind as you judge the change.

How this affects the Performance report

Alternate pages do not collect impressions or clicks. Their canonical does. If you filtered by the alternate URL before, your totals will look lower. That is normal. Use the canonical URL.

The query dimension omits rare and anonymised queries. So a table of queries rarely sums to the page or site total. If you see a flat line for an alternate page and a rise for its canonical partner, the fix worked. Check the canonical page’s queries for intent fit and edit the title and description if needed.

If average position worsens after consolidation, it might be because a weaker page became the canonical. Compare the two pages’ content and links. Merge the better content into the canonical and redirect the other to it if needed.

A quick checklist before you ship

  • Each indexable page self-canonicalises to its final, 200 URL.
  • All alternates point canonical to the main URL, not to each other.
  • Noindex is not combined with a cross canonical.
  • Canonical URLs in HTML are absolute, appear once, and match the sitemap.
  • Internal links point to the canonical, not to tracked or filtered variants.
  • Avoid canonicalising across different intents, types, or languages.
  • Parameter and pagination pages that should be indexed self-canonicalise and are linked.

Questions

Sources

Check my site, free

Not sure which pages should be canonical, and which should fold in, for your site, today? Paste a URL to run the free check and see three concrete fixes.

  • Free check, no card
  • Read-only, your own accounts
  • Readable by your agent

Read next