Google-selected canonical is my original site rather than my multilingual site!

I built a website www.example.com, then I made it a multilingual site, with an "en" at the end. (original website still exists!)

Google didn't index my multilingual website: domain end with en or with en/。 And when I inspect this page www.example.com/en on Google Search Console, I find that Google-selected canonical is my original website www.example.com.

What should I deal with it? Add a canonical tag to my "en" page? Another question is what should I deal with www.example.com/en and www.example.com/en/ pages, they are all not indexed by Google. GSC also shows a "Duplicate without user-selected canonical" error for these two pages, and both of them have referring pages on my website.

Both of www.example.com/en and www.example.com/en/ pages have hreflang tags, but they don't have any canonical tags.

hreflang tag

en-end page inspection on GSCen/-end page inspection on GSC

  • Can you edit the question to show the hreflang tags (and any canonical tags) used on both the versions?
    – Kannan
    Jul 9, 2021 at 6:42
  • already edited. These two versions(with / and without /) have the same herflang tags, however, both of them are lack of canonical tags. Jul 12, 2021 at 3:35
  • Google doesn't use the language from '<html lang="en">`. Its good to have it there, but Google always guesses the language based on the words used on the page and ignores your declared language from the html lang attribute. Jul 12, 2021 at 9:15

1 Answer 1


html lang tag informs the user-agent about the current document. This tag doesn't define a relationship between different language versions.

hreflang tags are better because they inform Google of the alternate language versions of a crawled document (from any of the language versions).

For example, assume example.com is the German version (the default one). Also, let us assume example.com/en/ is the English version. Let there be a page /xyz

Now your hreflang tags in both German and English versions will look like this:

  <link rel="alternate" hreflang="en"
       href="https://example.com/en/xyz" />
  <link rel="alternate" hreflang="de"
       href="https://example.com/xyz" />
  <link rel="alternate" hreflang="x-default"
       href="https://example.com/xyz" />

When Google crawls https://example.com/xyz it will know the corresponding English version is https://example.com/en/xyz and vice-versa. Thus Google will not consider them duplicates.

Ref: https://developers.google.com/search/docs/advanced/crawling/localized-versions#html

Regarding trailing slash issue for example.com/en, you can add a canonical tag that points to the URL with the trailing slash - example.com/en/.

  • Thanks Kannan. I'm wondering that, actually, the content in my English version is totally different from the default one. However, in Google webmaster, Google canonical URL in my English version is still the default one. Does hreflang tag can fix it? Jul 13, 2021 at 3:19
  • Provided the content is different, hreflang should fix it. However, there have been several discussions in Google support forums that sometimes Search Console may display an error but correct language pages for appropriate users will still show in search results due to hreflang tags. support.google.com/webmasters/thread/5720658/… After implementation give Google some time. If error persists, you can do a location based testing to find if hreflang works to display correct results despite search console errors.
    – Kannan
    Jul 13, 2021 at 4:42
  • Thanks Kannan! I want to cast a vote for your answer, but my account now under 15 reputations. I'm going to fix it according to your suggestion. thank you! Jul 13, 2021 at 6:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.