There is an interesting thread on Reddit on a topic we touched on here several times, the topic of Google ranking the wrong version of the URL in Google Search. It all stems back to the URLs you want Google to rank being near duplicate to the URL Google ends up ranking.
The person said on Reddit that Google is ranking the wrong domain name on Google Search, he wrote:
We have UK, CA, and AU domains for many years and Google starts to rank our UK domain for brand name search on Google CA & AU since late May. When inspecting urls in GSC, we found that Google chose canonicals cross domains for a lot of our pages, e.g.https://www.zazzle.com.au/ (Google-selected canonical: https://www.zazzle.co.uk/)
https://www.zazzle.co.uk/c/business+cards (Google-selected canonical: https://www.zazzle.com.au/c/business+cards)
GSC country setting, hreflang tags, canonical urls, sitemaps, etc., all look correct on each domain. The content is also different.
We couldn't understand why Google is mixing the three domains and we also don't see the same issue for our NZ domain. Any help would be appreciated.
John Mueller's answer is very very detailed here and it stems back to previous answers he has given on this topic specific to near duplicate content confusing Google. Heck this is similar advice from Pierre Far in 2012 when he worked at Google.
Here is what John wrote:
Whats happening here is that these pages are overall significantly similar, so that Google de-duplicates them by indexing a canonical version. However, with the hreflang annotations, the correct URL is still shown in the search results (at least where the hreflang is recognized, etc). You can see this if you search for your company name with ?gl=au as a URL parameter (gl= for country, hl= for language), eg:https://www.google.com/search?q=companyname&gl=au
One confusing part here is that your page titles use compantyname.TLD. This means the URL shown is the .com.au version, but the title includes .co.uk. You can fix that by changing the page titles to just use Companyname.
Another confusing part here is that Search Console generally reports on the canonical URLs. So if you check the performance reports there, it will show you the clicks, impressions, rankings on the .co.uk version, and it will act like the .com.a version is not indexed, or not getting any visibility in Search (while as you can see with the query, it does get shown). Unfortunately the only way to separate that out in Search Console is to filter by country and assume that these saw the correct country URL version. The same thing happens with the Index coverage report in Search Console.
Despite what Search Console says, the position, impressions, and clicks of these URLs will be fine. They will appear the same way as if the actual URL were also selected as canonical. There's no ranking disadvantage to things being indexed like this -- and there's an advantage of there being fewer URLs that need to be crawled & refreshed across your sites (faster inventory updates, etc).
If you wanted to change the indexing / canonicalization here, you'd have to make sure that the pages are significantly different, not just a bit different. Given that the search results would essentially be the same, I don't know if that's really worthwhile for you -- at least it probably wouldn't be an urgent prolem to solve.
How is that for a detailed and super useful response?
Forum discussion at Reddit.