Guide
Duplicate without user-selected canonical, or Google choosing for you.
This status means Google found two or more URLs it considers the same page, looked for a canonical tag telling it which one counts, found none, and picked one itself. Unlike most Search Console statuses this one is worth acting on, because the page Google picks is frequently not the page you would have picked.
How this differs from the status people confuse it with
There are two canonical statuses in Search Console and they mean opposite things about your site. Getting them the wrong way round leads to fixing the one that was already fine.
- Alternate page with proper canonical tag. You declared a canonical and Google honoured it. The decision was yours and it was respected. Usually nothing to do, as covered in that guide.
- Duplicate without user-selected canonical. You declared nothing, so Google chose. The decision was taken out of your hands.
Why it matters
Google's choice is based on signals like internal links, sitemap inclusion and URL tidiness. Those often favour the wrong version: a parameter URL that happens to be linked more, or an HTTP variant, or a print view. Your ranking then attaches to a URL you did not intend and would not promote.
Find out which URL Google actually chose
Before changing anything, learn what Google decided. The URL Inspection tool in Search Console reports the "Google-selected canonical" against your "user-declared canonical". When the first has a value and the second says none, this status is what you get.
If Google's pick matches what you would have chosen, the fix is simply to say so explicitly. If it does not, you have found something that is costing you.
# does this URL declare a canonical at all?
curl -s https://example.com/page/ | grep -i 'rel="canonical"'
# compare the variants Google might be treating as duplicates
curl -sI https://example.com/page | grep -i '^HTTP\|^location'
curl -sI https://example.com/page/ | grep -i '^HTTP\|^location' Where the duplicate URLs come from
Parameters and tracking
?utm_source=, ?ref=, session identifiers and sort orders all create URLs serving
identical content. A single campaign link shared widely can generate more inbound signal to the parameter URL
than the clean one has, which is exactly how Google ends up choosing it.
Trailing slashes, protocols and cases
/page and /page/, http and https, www and
apex, /Page and /page. Each pair is two URLs to a crawler unless one redirects to
the other. These are the cheapest duplicates to eliminate and the most commonly left in place.
Faceted navigation
Filter and sort combinations on a store or directory generate near-identical pages at scale. This is where the status appears in the thousands rather than the dozens, and where the answer is architectural rather than a tag on each page. Covered as part of ecommerce SEO.
Near-identical locale pages
UK and US English versions of the same page are duplicates by any reasonable measure. The correct answer here is not a canonical between them, it is hreflang declaring them as alternates for different audiences. A canonical would suppress one market entirely.
The fix, in order
- Decide which URL should own the content. Usually the clean, linkable, parameter-free version. Write it down before you touch anything.
- Add a self-referencing canonical to every page. Every URL should declare its own preferred version, including the chosen one. Pages without any canonical are how this status happens in the first place.
- Redirect what should not exist. Protocol, www and trailing-slash variants should 301 to the chosen form rather than merely canonicalise to it.
- Make internal links point at the canonical version. If your own navigation links the parameter URL, you are voting against your own canonical.
- Use hreflang, not canonical, between locales. They are alternates, not duplicates.
- For faceted URLs, stop generating and linking them rather than tagging millions of them.
The mistake to avoid
Do not reach for noindex here. It looks like it solves the problem because the duplicates
disappear from the report, but a noindexed page passes nothing on and, if Google had selected that URL as the
canonical, you can suppress the content entirely. Canonical consolidates. Noindex removes. They are not
interchangeable and using the second where you meant the first is one of the more expensive mistakes in this
area.
The goal is not an empty report. It is that every URL on the site has an opinion about which version counts, and that the opinion is yours.
Keep reading
If this is your problem
Book me
Google picking the wrong URL?
Send us two URLs you think are competing. We will tell you which one Google has selected, whether it is the one you wanted, and what to change so the decision comes back to you.