hreflang points to a noindex or canonicalised page
hreflang_target_not_indexableShort answer
One or more hreflang URLs on this page point to a page that cannot be indexed: it carries noindex, or its canonical points to another URL. Google does not index such pages, so it ignores them as alternates and the language pair breaks. Point hreflang only at the canonical, indexable URL of each language version — or make the target indexable if it should rank.
Why it matters
This usually happens when a language version is still being built and was set to noindex, or when the target's canonical points at a different language. Users in that market then see another version (or none), and Search Console may report missing return tags for the whole set.
How Glimana detects it
Glimana checks every hreflang target that it has crawled. The rule fires when a target's indexability reason is noindex or canonicalised (its canonical points elsewhere). Targets Glimana has not crawled are not judged. If the source page itself is canonicalised, it is reported under Page with hreflang has a canonical to another URL instead. The evidence lists up to five targets with the reason and, for canonicalised ones, the canonical URL.
How to fix it
- Find the affected pages in Glimana. Open Issues › hreflang points to a noindex or canonicalised page. Every affected page is a row; open one to see the evidence Glimana recorded for it (the measured value, the offending element or the target URL). The same list sits on the task card under Tasks, and the page's own detail view under Pages shows its full signals.
-
Apply the fix on your platform.
For each listed target, decide:
- The version should rank: remove
noindex(meta tag orX-Robots-Tag) and make its canonical point to itself. - The version is not ready or not wanted: remove it from the hreflang set on every page of the set until it is live.
- The target is a duplicate URL of the real version: replace it with the canonical URL that the target points to.
Check the translated post's SEO settings (Yoast: Advanced → Allow search engines to show this post; Rank Math: Advanced → Robots Meta) and its canonical field. A whole language set to noindex is often a WPML/Polylang language that is "hidden" or a staging setting left on.
A noindex on a market page usually comes from an app or a
seo.hiddenmetafield on the product or page. Remove it for markets you sell in, or remove that market from hreflang by unpublishing it.Only include a version in the hreflang map when it is published, indexable and self-canonical. Compute the map from the same flags that decide the robots meta tag.
- The version should rank: remove
-
Publish and clear caches. Save and publish, then make sure the crawler will see the new version: WordPress — clear the page cache in your cache plugin and purge the CDN; Shopify — theme and content changes go live on save, but purge any CDN in front of the store; custom code — deploy and purge the edge cache. Check in a private window or with
curl -s https://your-domain/page | grep -i '<title\|canonical\|robots'that the live HTML has changed; Glimana reads what the server sends, not what your browser has cached. - Verify in Glimana. Open the task under Tasks and click Mark as done. The affected pages are queued for a verification crawl within a few hours, and the task closes when every hreflang target on the page is indexable and self-canonical. If the check still fails, the task returns to New with a note; when it passes, the task is listed under Resolved technical issues on Impact reports. To check sooner, use Re-crawl affected pages on the issue.
How the fix is verified
The next crawl re-checks the indexability of each crawled hreflang target; the task closes when none is noindex or canonicalised elsewhere.