3

I'm getting HREF no return errors in search console and I don't understand why.

enter image description here

We have a page that contains buttons for get multiple pages of results.

URL structure:

Base page: `https://example.com/XX/publications`
Pagination of results: `?count=50&page=4`
Actual url: `https://example.com/au/publications?count=50&page=4`

Source page:

<link rel="canonical" href="https://example.com/au/publications">
<link rel="alternate" hreflang="en-US" href="https://example.com/us/publications">

alternate page:

<link rel="canonical" href="https://example.com/au/publications">
<link rel="alternate" hreflang="en-AU" href="https://example.com/au/publications">

How can I tell Google that it should ignore the URL query parameters?

1
  • You shouldn't tell Google to ignore these parameters. They change the content of the page. You should link your hreflang to the version with the parameters. Canonical tags should not be used to remove parameters that change the content. Commented Nov 1, 2017 at 15:50

2 Answers 2

6

The problem you have is caused by the combination of canonical and hreflang.

Your setup

Given your example: for the URL https://example.com/au/publications?count=50&page=4 you specify the following:

<link rel="canonical" href="https://example.com/au/publications">
<link rel="alternate" hreflang="en-US" href="https://example.com/us/publications">

What's going on?

This is how Google reads these information:

  1. This URL is a 1:1 duplicate of https://example.com/au/publications and I shall not index it
  2. but this URL also has an alternate language version for "en-US" available at https://example.com/us/publications

What does this mean to Google?

  1. the canonical is not a directive Google may respect it
  2. the hreflang is a very important information, Google has to validate it by checking the alternate URL for return tags

What you see in your Search Console is that Google is doing exactly this: It ignores your canonical, visits the defined alternate URL and checks whether it links back to the original URL (with parameters).

The specified alternate URL does not link back to the parameterized URL and therefore causes an error.

How to get rid of this mess?

First: try not to distract Google.

  1. If a URL is not a canonical URL - meaning is has parameters and links to a clean URL via link rel="canonical" → do not serve hreflang information.
  2. If a URL is a canonical URL- meaning it is the one you want to be indexed an rank in search results and it has alternate language versions → do serve hreflang information for each language.

Applied to your example

  1. for the URL https://example.com/au/publications?count=50&page=4 you only specify the canonical link: <link rel="canonical" href="https://example.com/au/publications">
  2. for the URL https://example.com/au/publications you specify
    1. the self referential canonical: <link rel="canonical" href="https://example.com/au/publications" />
    2. each language version: <link rel="alternate" hreflang="en-US" href="https://example.com/us/publications"> and <link rel="alternate" hreflang="en-AU" href="https://example.com/au/publications">

Now Google reads:

  1. https://example.com/au/publications?count=50&page=4is a 1:1 duplicate of https://example.com/au/publications → I shall not index it
  2. https://example.com/au/publications targets "en-AU" language users and has an alternate version for "en-US" users available at https://example.com/us/publications

Last but not least: be aware to only serve hreflang information, when there are translations available. If there are no translations of a specific URL it does not need hreflang annotation.


Sources

Visit the Google Guide on Use hreflang for language and regional URLs.

For your specific problem have a look at the video and wait for 08:50

1
  • Thank you, i'll get rid of the href's on url's with parameters. i've understood from different sources that if the content applies to a different region (us/sg/gfb) that href should be used to avoid being marked as a duplicate. we have the content spread over 50 domains (not just sub-domains/folder structure). Commented Nov 9, 2017 at 9:13
1

Hreflang is a bit a nightmare in my limited experience. But I don't think you should ever have just one entry. Each page should have matching link elements, I think.

You can find out more here:

https://yoast.com/hreflang-ultimate-guide/#hreflang-implementation-choices

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.