Key takeaways
- Canonical vs redirect is a consolidation decision: do you want Google to index this URL (canonical) or replace it (301/308)
- Use this practical decision tree, real scenarios, and GSC validation steps to avoid duplication, crawl waste, and ranking splits
Table of Contents
Most “duplicate without user-selected canonical” problems are self-inflicted.
Not because you need more SEO tricks, but because you have not made a clear consolidation decision:
- Redirect: “this URL is not the one — replace it”
- Canonical: “this URL can exist — but treat that URL as the primary”
If you want the bigger indexing map first, start here:
TL;DR (decision tree)
Use a 301/308 redirect when:
- the page moved permanently
- you want users and crawlers to land on the new URL
- the old URL should stop competing (old slug, old category, http→https, www→non-www)
Use a rel=canonical when:
- both URLs must exist (filters, tracking params, print views, variants)
- you want one page indexed, but you cannot (or should not) redirect the alternates
- the alternate URLs are primarily for UX, not for search
Rule of thumb:
- If you want the old URL to disappear: redirect.
- If you want the old URL to exist but not be indexed as primary: canonical.
What a redirect does (in practice)
A redirect is a routing decision:
- users get sent to the destination
- crawlers learn the old URL is not the final location
- signals tend to consolidate over time (not instantly)
Common redirect use cases:
- URL changes during a redesign
- consolidating duplicate slugs
- removing trailing slash vs non-trailing slash (pick one)
- http→https and www→non-www
If you have redirect chains/loops, fix those first:
What a canonical does (in practice)
A canonical is a hint about indexing preference:
- users still stay on the current URL
- crawlers may index the canonical instead of the current URL
- it reduces ranking splits by consolidating signals toward one “primary” URL
Canonical use cases:
- URL parameters that do not change meaning (UTM, sorting)
- filtered pages that you do not want indexed (facets)
- duplicate content due to multiple paths (e.g.
/blog/postand/resources/post)
Relevant GSC statuses:
Canonical vs redirect: common scenarios (what to do)
Scenario 1: You changed the slug (old URL should be replaced)
Do: redirect old → new.
- Use 301 (or 308) for permanent changes.
- Update internal links and sitemap to point to the new URL.
Don’t: leave both 200 with a canonical unless you have a UX reason to keep the old URL accessible.
Scenario 2: Tracking parameters (UTM, ref, etc.)
Do: keep the URL accessible (200), but canonical to the clean version.
Also:
- avoid generating internal links with UTMs
- ensure the clean URL is in the sitemap
Scenario 3: Sort / pagination parameters (same products, different order)
Usually:
- canonical to the base list (if the content is substantially the same)
- keep parameter pages crawlable only if they serve a real search intent
Scenario 4: Faceted navigation (filters change the set of items)
This is where sites create crawl debt.
If filters create near-infinite combinations, do one of:
- canonical filtered URLs to the base category, and keep the filtered pages out of index
- or intentionally pick a small set of “indexable facets” (real demand) and make them stable landing pages
Scenario 5: Product variants (color/size) or near-duplicates
Decide based on intent:
- if variants deserve separate search intent (e.g. “red nike air max”) you may keep separate URLs
- if not, canonical variants to the main product
The key is consistency: one primary URL per “thing”.
Implementation checklist (avoid common failure modes)
Redirect checklist
- prefer one-hop redirects (no chains)
- avoid loops
- keep destination 200 and indexable
- update internal links to the final URL
Canonical checklist
- canonical points to a 200 page (not 404/5xx)
- canonical points to an indexable page (no
noindex) - use an absolute URL (safer)
- avoid cross-domain canonicals unless you truly mean “this content belongs there”
- keep canonical consistent with sitemap + internal links
If you canonical to a page that itself redirects or is blocked, you can end up in confusing GSC states.
How to validate (Google Search Console)
Use URL Inspection on:
- the “alternate” URL (parameter/duplicate)
- the intended canonical
Confirm:
- User-declared canonical matches your intent
- Google-selected canonical matches your intent (this is the real outcome)
Then validate in Coverage/Indexing reports by monitoring:
- duplicates and alternates declining over time
- crawl stats stabilizing
- impressions consolidating to the canonical URL
If you want the full indexing mental model:
FAQ
Can I canonical to a redirected URL?
Avoid it. Canonicals should generally point to the final 200 page. If you need a redirect, redirect directly to the final destination and canonical there.
Should I canonical from a non-www to www (or http to https)?
No — those should be redirects. Canonicals are not a transport/security preference signal.
Why does Google ignore my canonical?
Usually one of:
- content is not actually equivalent (Google picks a different canonical)
- internal links and sitemap disagree with your canonical choice
- canonical points to a non-indexable page
If you’re seeing “duplicate without user-selected canonical”, start here:
Next in SEO & Search
Up next:
GSC Indexing Statuses Explained: What They Mean and How to Fix Them (2026)A practical map of Google Search Console indexing statuses (Coverage): what each status means, the most common root causes (canonicals, duplicates, robots, redirects, soft 404s), and the fastest way to validate fixes.