1. The language block
What this is
If your site exists in more than one language, every version has to point at every other version — including itself — or Google ignores the lot. This is the single most common way a translated site loses its own translations.
Why this matters for vitadefence.com
vitadefence.com has 1 version in this set. Google ignores the whole set unless every version points at every other version, including itself — so a translation that is not declared correctly is a translation that does not rank.
What we found on vitadefence.com
The same block goes in the <head> of every version listed, unchanged
| Version | Language | Where that came from | Links it carries today |
|---|---|---|---|
| https://vitadefence.com | en-gb | an existing hreflang tag | 4 |
- en-gb tag is not inside <head>
- nl-nl tag is not inside <head>
- es-es tag is not inside <head>
- x-default tag is not inside <head>
- nl-nl points at https://vitadefence.nl, which could not be read, so the pair cannot be confirmed
- es-es points at https://vitadefence.es, which could not be read, so the pair cannot be confirmed
Step 1 — Open the head of your first version
Open whatever produces the <head> of https://vitadefence.com — a template, a layout file, or the page itself.
Step 2 — Paste this block in, before </head>
<link rel="alternate" hreflang="en-gb" href="https://vitadefence.com" />
<link rel="alternate" hreflang="x-default" href="https://vitadefence.com" />
Step 3 — Keep the block identical everywhere
One version was readable in this set (https://vitadefence.com). Every language version you add later must carry this same block, extended with its own line.
Your page already points at other language versions that could not be read when this ran - they are named in the faults above. Add their lines back into this block the moment those addresses answer, so the set stays complete.
In the words of the company that published this
Google: “For each variation of the page, include a set of <link> elements in the <head> element, one link for each page variant including itself. The set of links is identical for every version of the page.” And: “The <link> tags must be inside a well-formed <head> section of the HTML.”
Their page: developers.google.com/search/docs/specialty/international/localized-versions
How to check you did it right
- View the source of each of the 1 URL above and confirm the block sits inside
<head>, not in the body. - Confirm vitadefence.com’s block contains a line for https://vitadefence.com itself — a version that does not list itself is dropped.
What it looks like when it is working
- Every one of the 1 URL returns the same block, and the faults listed above are gone from all of them.
- Specifically, these stop being reported for vitadefence.com: en-gb tag is not inside <head>; nl-nl tag is not inside <head>; es-es tag is not inside <head>.
In two lines
- vitadefence.com has 1 version in this set. Google ignores the whole set unless every version points at every other version, including itself — so a translation that is not declared correctly is a translation that does not rank.
- First open the head of your first version, then paste this block in, before
</head>, then keep the block identical everywhere.
The words in plain English
<head>— the hidden top part of a web page’s code, where settings and tags live - visitors never see it, machines read it first.- hreflang — the tag that says which language a page is in and where its translations live, so each visitor is sent the right version.
- x-default — the version to show a visitor when none of the declared languages matches.
The finished file is in your pack at packs/01-hreflang/hreflang-block.html.