Duplicate without user-selected canonical
What this Search Console status means, when to leave it alone, how to see which URL Google chose, and how to fix the few cases that matter.
Short answer
Duplicate without user-selected canonical means Google thinks the page is a copy of another URL, the page names no preferred version, so Google chose the other URL and won't show this one. Google says it is not an error. Act only when Google kept a URL you don't want: name the canonical with a tag or a redirect, or make the page clearly different.
Copies the check steps and the fixes as Markdown, with tick boxes, for a doc, Notion or a ticket.
What Google says it means
From the Page indexing report help, in Google's words where they are short enough to quote.
- The page is a duplicate of another page and “doesn't indicate a preferred canonical page.” Google chose the other page as the canonical, and so will not serve this page in Search.
- “This is not an error, but is working as intended, because Google does not serve duplicate pages.”
- If Google chose the wrong URL, mark the canonical yourself. If the page is not really a duplicate, make its content clearly different from the page Google chose.
- “Having a page marked duplicate or alternate is usually a good thing.” The goal is that the canonical version of each important page is indexed.
“User-selected” means a canonical you named with a rel="canonical" tag or HTTP header. A redirect also works, and takes the URL out of this list: Google reports it as Page with redirect. A page that names no canonical leaves the choice to Google. Google says a canonical is a hint, not a rule, so naming one makes your choice more likely but not certain.
Is it a problem? Check the URLs in the list
Lists often follow a few patterns. Find yours: Fine means leave it, Tidy up is optional, Fix matters.
- The same page with a ?utm_, ?ref= or ?sort= parameter on the end
Problem? Fine
Google most likely chose the clean URL, which is what you want. To make that choice explicit, give each page a canonical tag that points to its own clean URL.
- Category, tag, archive or page 2, 3... of a blog list
Problem? Fine
These lists repeat your posts, so Google often keeps another URL. Leave them, unless one of them is a page you want people to find in search.
- http://, www. or a trailing-slash copy of a page
Problem? Tidy up
Send every copy to one version with a permanent (301) redirect. The copy then shows as Page with redirect, which is the normal result.
- A print, AMP, feed or PDF copy of a page
Problem? Tidy up
Point the copy to the main page with a canonical tag. For a PDF, send the canonical in an HTTP Link header, because a PDF has no HTML head.
- A page you want in Google, and Google picked another URL
Problem? Fix
Choose the one URL you want. Point both pages to it with a canonical tag, link to it from your other pages, and list only it in your sitemap.
- Two of your articles that answer the same question
Problem? Fix
Merge them into one and redirect the other URL to it. Or rewrite one so it answers a clearly different question.
- URLs you don't recognize, for example spam pages on your domain
Problem? Fix
URLs you didn't create can mean the site was hacked. Check Security issues in Search Console and remove them.
On WordPress, check the theme or SEO plugin first. WordPress itself adds a canonical tag only on single posts, pages and other single items, so category, tag and archive pages have none unless a plugin adds one. Two articles on the same topic? The keyword cannibalization checker shows which of your pages split the same searches.
How to see which URL Google chose
Five steps in Search Console. If Google chose the URL you want, you can stop after step 4.
Open the list
In Search Console, open Indexing > Pages and click Duplicate without user-selected canonical under Why pages aren't indexed. Export it if the list is long.
Sort the URLs into patterns
Lists often follow a few patterns: URLs with parameters, tag or archive pages, http or www copies. Use the table above to decide which ones matter.
Inspect one URL from each pattern
Paste it into URL Inspection and open Page indexing. Compare User-declared canonical with Google-selected canonical. Use the main result, not Test live URL: Google says the live test doesn't check duplicates.
Ask one question
Is Google's chosen URL the one you want people to land on? If yes, you are done with that pattern. If no, fix it with the methods below.
Fix the signals, then wait
Name the canonical, link to it, keep only it in your sitemap. If you made the pages clearly different, Google says they can stay grouped for up to two weeks. Request indexing once for the pages that matter most.
How to name the canonical yourself
Google lists these ways to say which URL you prefer. They work better together, and they must all name the same URL.
- 301 redirectStrong signal
- Only when you retire the duplicate URL. Use a server-side redirect for the quickest effect.
- rel="canonical" link tagStrong signal
- For HTML pages. Put it in the head of each duplicate, and on the canonical page itself. Use the full URL.
- rel="canonical" HTTP headerStrong signal
- For files without an HTML head, such as PDFs. Choose the tag or the header, not both.
- SitemapWeak signal
- List only canonical URLs. It helps the other signals, but alone it is a weak hint.
The tag looks like this, in the head of the page:
<link rel="canonical" href="https://example.com/the-page-you-want" />What Google says not to do
- Block the duplicate in robots.txt. Google may still index a blocked URL without its content, and it can't read your canonical.
- Add noindex to the duplicate to steer the choice. Noindex removes the page from Search completely.
- Use the URL removal tool. It hides every version of the URL from Search.
- Name one URL in the canonical tag and a different one in the sitemap or a redirect.
- Use a URL with a #fragment as the canonical.
Duplicate, Google chose different canonical than user
The page names a canonical, but Google indexed a different URL. From Google's Page indexing help, checked November 12, 2026.
Google's definition: “This page is marked as canonical for a set of pages, but Google thinks another URL makes a better canonical.” Google reads it this way: the page isn't a duplicate of the canonical you named, it's a duplicate of the one Google chose. A duplicate has to be similar to its canonical.
To see both URLs, inspect the page in Search Console and open Page indexing. Google-selected canonical is Google's pick and User-declared canonical is yours. Open the page, yours and Google's side by side, then find your case below.
- Google-selected canonical is the page itself
Google thinks this page isn't similar to any other page, including the one your tag names.
What to do: If the page is meant to stand on its own, point its canonical tag to its own URL (or remove the tag). If it really is a copy, make it match the page you named, or redirect it there.
- Your canonical names a page with different content
Google says it won't ever choose a user-declared canonical that isn't similar to the page. A template that points every page to the home page, or every list page to page 1, can cause this.
What to do: Give each page a canonical that names its own URL, or a true copy of it.
- Google picked a third URL, such as the http://, www. or parameter version
Usually your signals disagree: the tag names one URL while redirects, internal links or the sitemap point to another.
What to do: Make them agree. Redirect the copies, link to the URL you want, list only it in your sitemap, and keep the canonical tag on it. Google says these signals add up.
If Google's pick is a URL you're happy to show, there is nothing to fix: the content is indexed under that URL.
How our own site handles it
serpwright.com names a canonical on every page in its sitemap and redirects its other versions. This is what URL Inspection showed on November 1, 2026.
| URL inspected | Status | Google-selected canonical | Last crawl |
|---|---|---|---|
| https://www.serpwright.com/ | Page with redirect | https://serpwright.com/ | Oct 28, 2026 |
| http://serpwright.com/ | Page with redirect | https://serpwright.com/ | Oct 28, 2026 |
| https://serpwright.com/pricing | Submitted and indexed | https://serpwright.com/pricing | Oct 29, 2026 |
- The www and http versions redirect to https://serpwright.com/, so Google lists them as Page with redirect, not as duplicates. That is the result you want for a copy of a whole site.
- Every page in our sitemap has a canonical tag with its own clean URL. A link with a tracking parameter, such as /pricing?ref=newsletter, serves the same page with the same tag, so Google has one URL to keep.
- URL Inspection lists http://www.serpwright.com/pricing as one of the ways Google found /pricing. Google still chose the clean https URL.
- None of the 27 URLs in our sitemap had a duplicate status at our November 1 check, before this guide went live.
Serpwright publishes articles to WordPress, Webflow or Shopify, suggests links to each one from your related pages, and with Search Console connected checks each one in URL Inspection after it goes live.
3 days free, no card.
Write the page Google keeps
Serpwright plans topic clusters with one search intent per article, so your own posts don't compete for the same search. Then it writes and publishes them.
3 days free, no card.