GSC status

How to fix “duplicate without user-selected canonical”

Google crawled more than one URL with substantially the same content and you did not tell it which one is canonical — missing tag, conflicting tags, or a tag Google ignored. It picked a winner. The URL in this bucket is the loser.

What this status actually means

Google-selected vs user-declared

URL Inspection shows both. On this status the user-declared canonical is missing, points at this URL while a duplicate exists, or disagrees with itself across copies. Google-selected canonical is the address that made it into the index.

Our diagnose check

When we fetch a tracked URL, we read rel=canonical and compare it to the submitted address. If they differ, the next action is: fix the tag, or submit the canonical URL instead — submitting this address will not index it.

Cause → check → fix

These checks are the canonical branch of our per-URL diagnose logic — not a generic “add a canonical tag” paragraph. We do not publish recovery rates; they go stale and they imply a promise nobody can keep.

Cause Check Fix
No rel=canonical, or several copies each claiming to be canonical View-source the URL you submitted and every near-copy (http/https, www, trailing slash, parameters). Note whether a rel=canonical exists and whether every copy names the same href. Put one self-referencing canonical on the URL you want indexed. Remove or 301 the extras. Then submit that URL, not the duplicates.
HTTP and HTTPS, or www and non-www, serving the same body URL Inspection → Google-selected canonical. Compare scheme and host to the URL you submitted. Our diagnose path normalises both sides before comparing; a scheme mismatch is enough to fail. Pick one host and scheme. 301 the rest. Self-canonical the survivor.
Session, sort, or printer URLs duplicating a clean URL In the Pages report, open an affected example. If the inspected URL has parameters and Google-selected canonical is the clean path, you are submitting the wrong address. Stop submitting parameter variants. Canonical them to the clean URL (or noindex them if they must stay reachable).
Theme and plugin emitting two different canonical hrefs Fetch the page once and read the first canonical href in the HTML. Diagnose uses that href. If it is not the submitted URL, you will never index this address. Leave a single canonical in the rendered HTML, matching the URL you want in the index. Re-inspect after the tag is consistent.

The fix, in order

1

Read Google-selected canonical

Search Console → URL Inspection on the excluded URL. That is the address Google stored. Everything else is a duplicate in its view.
2

Make the live tag match that URL — or change which URL should win

If Google picked the right one, self-canonical it and 301 the rest. If it picked the wrong one, fix the tags and redirects so the URL you want is the only candidate, then request indexing on that URL.
3

Submit the winner, not the copies

Use URL Inspection → Request Indexing or the Indexing API on the canonical URL. Related: every submission method that still works.

Common questions

Related: All indexing issues · Alternate page with proper canonical tag · Crawled — currently not indexed · Discovered — currently not indexed · Soft 404 · Excluded by noindex tag · Blocked by robots.txt

Where do I see this in Search Console?

Indexing → Pages → Why pages aren't indexed → Duplicate without user-selected canonical. Open any example, then URL Inspection. The important line is Google-selected canonical: that is the URL Google stored instead of the one you submitted.

Is this the same as “alternate page with proper canonical tag”?

No. This status means you did not give Google a usable canonical, so it guessed. Alternate page with proper canonical tag means you did set one, and Google is honouring it. Different cause, different fix.

If I submit the duplicate again, will it index?

Not while Google still considers it a duplicate of another URL. Submission asks Google to look. It does not override a canonical decision. Fix the tags (or 301 the extras), then submit the URL you actually want in the index.

Does IndexRanger guarantee the URL will index after I fix the canonical?

No. We submit and measure. Nobody can guarantee Google indexing.

Submit the canonical URL. Then measure.

We send the address you choose and re-inspect Google's coverage state on a schedule. 25 URLs free, no card.

Start free