You set a canonical tag, submitted the right URL in your sitemap, and Google still indexed something else: the http version, a URL with ?utm_source on the end, an old blog post, or worse, a page on someone else’s domain. In Search Console it shows up as “Duplicate, Google chose different canonical than user”.
The reason is simple, even if the fix sometimes isn’t. A canonical tag is a hint, not an order. Google weighs it alongside redirects, internal links, sitemaps, hreflang, HTTPS and the content itself, then picks the URL it thinks best represents the group. When your signals disagree with each other, Google stops trusting the tag. The fix is to find the conflict and remove it.
The fastest way to fix this technical SEO issue is to find that conflict is to look closely at which URL Google chose. Each type of wrong URL points to a different cause.
- Confirm the Problem in Search Console
- Read the Clue: Which URL Did Google Pick?
- Fix 1: Protocol, www and Trailing Slash Twins
- Fix 2: Parameter and Tracking URLs
- Fix 3: Near-Duplicate Pages on Your Own Site
- Fix 4: Language and Regional Versions
- Fix 5: When Google Picks Another Website
- Fix 6: The Tag Looks Right but Google Disagrees
- Line Up Every Canonical Signal
- Mistakes That Make It Worse
- After the Fix: Speed Up Re-Evaluation
- When You Should Let Google Win
- FAQs
Confirm the Problem in Search Console
- Open Indexing > Pages and look for Duplicate, Google chose different canonical than user. These are pages where your declared canonical was overruled.
- Also check Duplicate without user-selected canonical. These pages have no canonical at all, so Google chose one for you.
- Paste an affected URL into URL Inspection and compare User-declared canonical with Google-selected canonical under Page indexing.
- Ignore Alternate page with proper canonical tag. That status means Google agreed with you, which is what you want.
If you are juggling several indexing statuses at once, our broader guide on fixing Google indexing issues covers the others.
Read the Clue: Which URL Did Google Pick?
Table 1: Wrong URL Types and Their Usual Causes
| What Google Picked | Example | Most Likely Cause |
|---|---|---|
| Protocol or host variant | http://example.com/page or example.com/Page/ | Missing or broken redirects, HTTPS problems, mixed internal links |
| Parameter URL | /shoes?color=red or ?utm_source=newsletter | Internal links, ads or sitemaps pointing to parameter versions |
| A similar page on your site | An older post or a category page | Near-duplicate content that Google sees as the same page |
| Another language or region | /en-gb/page instead of /en-us/page | Same content in several locales without hreflang |
| Another domain | A syndication partner or scraper site | Syndicated or copied content, a hack, or a server misconfiguration |
| Pagination or print version | /page/2/ or /print/ | Templates linking to these versions, or canonicals pointing to page 1 |
| Nothing looks wrong | Your tag seems correct | JavaScript changing the canonical, conflicting HTTP header, or a tag outside the head |
Fix 1: Protocol, www and Trailing Slash Twins
These are the easiest to fix and the most common. Pick one version of every URL (HTTPS, with or without www, with or without a trailing slash) and make every other version 301 redirect to it. Google treats permanent redirects as a strong canonical signal, according to its canonical documentation.
# Apache (.htaccess): force HTTPS and non-www
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]
# Nginx: send www and http to https://example.com
server {
listen 80;
server_name example.com www.example.com;
return 301 https://example.com$request_uri;
}
- Check your SSL certificate covers every hostname you use. Google says an invalid certificate, HTTPS pages that redirect through HTTP, or HTTPS pages that load insecure scripts can push it toward the HTTP version.
- Remove http URLs from your sitemap and hreflang tags.
- Search your templates and database for hard-coded http:// or www links and update them.
Fix 2: Parameter and Tracking URLs
If Google chose a URL with parameters, something on the web is linking to it more often than to your clean URL. Common culprits are faceted navigation, sort links, email tracking, affiliate links and paid ads with tagged landing pages.
<!-- On every variant, point to the clean URL -->
<link rel="canonical" href="https://example.com/shoes/" />
- Make internal links point to the clean URL, not filtered or tagged versions.
- Keep parameter URLs out of your XML sitemap.
- Use absolute canonical URLs, and only one canonical tag per page.
- Don’t use robots.txt to hide parameter URLs as a canonical fix. Google can still index blocked URLs without seeing their canonical tag.
Fix 3: Near-Duplicate Pages on Your Own Site
When Google picks a different page on your site, it has decided the two pages are the same thing. Often it is right: two blog posts on the same topic, a product page and its variant, or a location page that only swaps the city name.
Table 2: Decide Whether to Merge or Differentiate
| Situation | Best Fix |
|---|---|
| Two pages answer the same question | Merge them into one stronger page and 301 redirect the weaker URL |
| Both pages need to exist but look alike | Rewrite one so its content, title and purpose are clearly different |
| Product variants (size, color) | Canonical the variants to the main product, or give each variant unique content if it deserves to rank |
| City or service-area pages | Add genuinely local details: projects, reviews, staff, directions, pricing |
| Category page chosen over a post | Strengthen internal links to the post and reduce duplicated excerpts on the category page |
Google’s canonicalization troubleshooting guide notes that pages split out of a duplicate cluster faster when the difference is clear and significant, and that the re-evaluation can take up to two weeks.
Fix 4: Language and Regional Versions
Sites that publish nearly identical pages for the US, UK and Australia often see Google choose one regional page for all of them. Hreflang tells Google they are alternates for different audiences rather than duplicates.
<link rel="canonical" href="https://example.com/en-us/pricing/" />
<link rel="alternate" hreflang="en-us" href="https://example.com/en-us/pricing/" />
<link rel="alternate" hreflang="en-gb" href="https://example.com/en-gb/pricing/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/pricing/" />
- Each regional page should canonical to itself, not to the main language version.
- Hreflang must be reciprocal. Every page in the set lists every other page.
- Localize more than spelling where you can: currency, prices, phone numbers and examples.
Fix 5: When Google Picks Another Website
Table 3: Cross-Domain Canonical Problems
| Cause | What to Do |
|---|---|
| Syndication partner republished your article | Ask the partner to noindex their copy. Google says a cross-domain canonical is often less reliable for syndication. |
| Scraper or copycat site | Ask the host to remove it, and file a DMCA request with Google if it infringes your copyright |
| Hacked site with injected redirects or canonicals | Clean the hack, check for injected tags or redirects, and request a review in Search Console if flagged |
| Server serving another domain’s content | Fix the virtual host or CDN configuration with your hosting provider |
Fix 6: The Tag Looks Right but Google Disagrees
Sometimes the source code shows the correct canonical, but Google sees something else. Check what Google actually receives:
- Rendered HTML. In URL Inspection, run a live test and view the tested page’s HTML. If JavaScript rewrites the canonical, Google may see a different URL. Put the canonical in the server HTML and don’t change it with JavaScript.
- HTTP headers. A Link header with rel=”canonical” can conflict with the HTML tag. Google recommends picking one method.
- Tag placement. A canonical inside the body is ignored. It must sit in the head, and an unclosed tag or script error can push it out of the head.
- Plugins fighting each other. Two SEO plugins, or a theme and a plugin, can output two different canonicals.
# Check for a canonical in the HTTP headers
curl -sI https://example.com/page/ | grep -i "link:"
# Count canonical tags in the delivered HTML
curl -s https://example.com/page/ | grep -io '<link[^>]*rel="canonical"[^>]*>'
Tools listed in our guide to JavaScript SEO testing tools help compare source and rendered HTML at scale, and these SEO meta tag checkers can confirm a single canonical per page.
Line Up Every Canonical Signal
Google combines many signals. The more of them point at the same URL, the more likely your choice wins.
Table 4: Canonical Signal Checklist
| Signal | Strength | What Correct Looks Like |
|---|---|---|
| 301 or 308 redirect | Strong | Every duplicate URL redirects in one hop to the preferred URL |
| rel=”canonical” | Strong | One absolute, self-referencing tag in the head of the preferred page; duplicates point to it |
| Internal links | Supporting | Menus, breadcrumbs, related posts and body links use the preferred URL |
| XML sitemap | Weak | Lists only preferred, indexable URLs that return 200 |
| Hreflang | Supporting | Reciprocal annotations between preferred URLs only |
| HTTPS | Supporting | Valid certificate, no HTTP redirects, no insecure scripts |
| Content | Decisive for near-duplicates | Each indexable page is clearly different from the others |
Mistakes That Make It Worse
- Using noindex to choose a canonical. Google advises against it. Noindex removes the page from Search rather than consolidating signals.
- Using the URL Removals tool. It hides every version of the URL, including the one you want.
- Canonical chains. Page A points to B, which points to C. Point everything straight at the final URL.
- Canonicals to redirected or 404 URLs. The target must return a 200 status.
- Canonicalizing paginated pages to page 1. Products or posts on later pages may stop being discovered. Let each page in a series canonical to itself.
- Different canonicals in different places. A sitemap URL that doesn’t match the canonical tag sends mixed signals.
After the Fix: Speed Up Re-Evaluation
- Use Request Indexing in URL Inspection for your most important URLs. It has a quota, so save it for pages that matter.
- Resubmit your sitemap so Google sees the updated list of preferred URLs.
- Validate the fix in the Page indexing report and monitor it over the following weeks.
- Expect a delay. Google says pages can stay clustered for up to two weeks after content fixes.
If Google is slow to recrawl in general, these tips on making Google index your site faster can help, and our technical SEO guide covers the wider crawl and site structure work behind it.
When You Should Let Google Win
Google is not always wrong. If it chose a URL that users prefer, such as the cleaner URL, the page with better content, or the HTTPS version you forgot to redirect, the simplest fix is to adopt Google’s choice: update your canonical tag, sitemap and internal links to match it. The goal is one consistent URL, and it doesn’t have to be the one you started with.
FAQs
Why Does Google Ignore My Canonical Tag?
Because it is a hint. If redirects, internal links, sitemaps, hreflang or the page content point to a different URL, Google may decide another version better represents the duplicate group.
How Long Does It Take Google to Accept a Canonical Fix?
It depends on crawl frequency, but Google says pages may stay in a duplicate cluster for up to two weeks after content issues are fixed. Large sites can take longer for every URL to be reprocessed.
Is “Duplicate, Google Chose Different Canonical Than User” Bad?
Only if Google picked a URL you don’t want in search. If its choice is a clean, correct URL, the report is informational and you can align your signals with Google’s choice.
Can I Use a Canonical Tag Across Different Domains?
Yes, cross-domain canonicals are supported, but Google may not follow them if the content differs. For syndicated articles, asking partners to noindex their copy is usually more reliable.
Should Every Page Have a Self-Referencing Canonical?
Yes. Google recommends a self-referential canonical on preferred pages, which protects them from parameter and tracking URL duplicates.