All articles
SEO · August 2, 2026

Redirects and canonicalization for multilingual B2B sites

Master canonical and hreflang across multilingual B2B domains to clarify page identity and boost your technical SEO.

LM
Louis Mauclair·16 min read
Get one B2B growth idea a week, no fluff.

Canonical and hreflang: two complementary tags for multilingual B2B sites

When a B2B company deploys a website across several domains or subdomains (for example, example.fr and example.de for the French and German markets), or offers the same content in several languages on a single domain, search engines like Google need to identify which version is the "canonical" one for each market. Without that clarification, the content competes against itself: your flagship product's French page and German page fight over clicks, splitting the popularity signal you could otherwise concentrate on one variant. That's SEO cannibalization.

Canonical and hreflang tags solve this problem together. The canonical tag (rel="canonical") tells the engine which version of a page is the "reference version" when several similar versions exist (duplicates, UTM parameters, mobile/desktop versions on the same domain). The hreflang tag (rel="alternate" hreflang) signals a page's language or geographic variants and states which language or region each one targets. On a multilingual B2B site, these two tags work together: every language variant canonicalizes to itself, and every page declares all its other variants via hreflang, creating a coherent web of alternates.

This strategy is essential in B2B because your content (case studies, whitepapers, product specs) is often adapted for several regions or languages, and your prospects search results by geographic region. Without canonical and hreflang correctly in place, Google risks showing the wrong domain or wrong language to a given searcher, or diluting your authority across several versions instead of consolidating your position.

Implementing canonical on a B2B site with separate regional domains

Implementing canonical on a multilingual B2B site depends heavily on your architecture. If you've chosen a "separate domains" architecture (example.fr, example.de, example.com/en), each domain stays independent from Google's perspective. The strategy here is simple but crucial: on every page of every domain, add a canonical tag pointing to the page itself.

For example, on example.fr/logiciel-crm, you'd put <link rel="canonical" href="https://example.fr/logiciel-crm" /> in the head. On example.de/crm-losung, you'd put <link rel="canonical" href="https://example.de/crm-losung" />. This self-referencing tag, called a "self-referential canonical", tells Google this is the definitive version for that domain, even if other domains carry very similar content.

If you have a "subdomain per language" architecture (www.example.com, fr.example.com, de.example.com), the logic stays the same, but you benefit from shared domain authority across all subdomains (as long as you declare them all in Google Search Console under the same root domain, example.com).

The worst mistake to avoid in multilingual B2B is pointing every domain's canonical to a single version (for example, pointing the French canonical to the English example.com/en/products). That tells Google your French or German pages aren't the primary content, which torpedoes your ranking in French or German search results. Every regional domain should be treated as a legitimate entity, with its own self-referential canonical, backed by consistent hreflang.

Another important nuance: if you're consolidating your B2B content under a single main domain, for example https://example.com/fr/, https://example.com/de/, you can still use self-referential canonicals on every page. Some centralized B2B sites instead prefer to redirect old regional URLs (https://example.fr/) to the single domain, via 301 redirects. In that case, the redirects themselves act as the canonicalization signal, and you only need canonical tags for internal duplicates (tracking parameters, printable versions, and so on) rather than for language variants.

Hreflang tags: declaring every language variant to avoid internal competition

The hreflang tag is where your entire B2B language-variant strategy lives.

For a B2B product page in French at https://example.fr/logiciel-crm, you include a full hreflang block in the head:

<link rel="alternate" hreflang="fr" href="https://example.fr/logiciel-crm" />

<link rel="alternate" hreflang="de" href="https://example.de/crm-losung" />

<link rel="alternate" hreflang="en" href="https://example.com/en/crm-software" />

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

Each line declares one existing language variant. The language code follows the ISO 639-1 standard (fr, de, en) and optionally a regional code (fr-CH for Swiss French, de-AT for Austrian German). The "x-default" hreflang is crucial: it points to the default version for users whose language/region matches no declared variant, usually your English or international version for a global B2B context.

On https://example.de/crm-losung, you repeat the same logic but list the German hreflang first (since it's that domain):

<link rel="alternate" hreflang="de" href="https://example.de/crm-losung" />

<link rel="alternate" hreflang="fr" href="https://example.fr/logiciel-crm" />

<link rel="alternate" hreflang="en" href="https://example.com/en/crm-software" />

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

These hreflang blocks need to be identical across every domain (order aside) to create what Google calls a "hreflang loop": every page references the others and references itself, confirming these pages are legitimate variants of one another.

If you have a single language but several regional domains (for example, the same English service page on example.com and example.co.uk), declare hreflang with regional codes: hreflang="en-US" for example.com and hreflang="en-GB" for example.co.uk, plus a global hreflang="en" or an x-default pointing to your main market.

A common mistake in multilingual B2B: forgetting to update hreflang when adding a new market. If you launch an expansion into Italy and create example.it with Italian content, you need to add <link rel="alternate" hreflang="it" href="https://example.it/... /> to EVERY existing page on your three domains, otherwise Google will see the Italian content as an undeclared duplicate and won't know what rank to give it.

301 redirects and canonical: when to combine them on a consolidating B2B site

Many evolving B2B sites migrate from several regional domains to a single main domain, or restructure their URLs to unify their SEO approach. In these scenarios, 301 redirects and canonicals play distinct but complementary roles.

A 301 redirect (permanent move) says: "This URL no longer exists here, it moved there." It passes authority (link juice) from the old URL to the new one and tells users and engines to update their bookmarks and index. A canonical tag says: "This page potentially exists in several versions, but this one is the reference version", without redirecting the user.

When do you consolidate a multilingual B2B domain? Concrete example: you had https://example.fr/, https://example.de/ and https://example.com as variants, but decide to centralize everything under example.com/fr/, example.com/de/, example.com/. You set up 301 redirects: example.fr/logiciel-crm → example.com/fr/logiciel-crm, example.de/crm-losung → example.com/de/crm-losung. These redirects pass the ranking history and backlinks of each regional domain to the central domain. On the central domain, you don't need a redundant self-canonical; a 301 redirect is enough.

However, if after this redirect you temporarily keep the old domains active (as mirror or archive domains), you could add a canonical on every old page pointing to the new URL. That signals to Google that even though the page is still reachable at the old address, the new URL is the definitive version. But in B2B practice, permanent 301 redirects are preferable to "floating" canonicals: they're clearer for both engines and users.

One important nuance: HTTP-to-HTTPS redirects. If you migrate a B2B site from http://example.fr to https://example.fr (protocol change), you set up a 301 redirect from http → https. This redirect automatically transfers authority, so you don't need to add a canonical on top of it. However, in the days following the migration, check Google Search Console to confirm the secure URLs are replacing the old ones in the index. Canonicals come into play if your HTTPS pages accidentally generate unsecured versions (for example, through poorly updated internal links); a canonical from https://example.fr/page to the secure version fixes that without a redirect.

Many evolving B2B sites migrate from several regional domains to a single main domain, or restructure their URLs to unify their SEO approach.

Auditing and verification: testing canonical and hreflang on your multilingual B2B site

Once implemented, your canonical and hreflang tags need regular checking, since a silent configuration error can torpedo your B2B SEO strategy without you noticing right away. Search engines don't send you an alert if a hreflang is malformed or a canonical points to the wrong place.

Step one: manual audit via source code. Open every key page of your B2B site (product pages, landing pages, editorial content) in three or four different languages/domains. Right-click "View page source", search for <link rel="canonical" and <link rel="alternate" hreflang. Check that (1) the self-referential canonical is correct, (2) every declared hreflang points to an existing, reachable URL (test each URL by opening it in an incognito window to confirm it loads without a 404 error), (3) the hreflang loop is consistent (every page references the others and itself).

Step two: use Google Search Console for each domain or property. Search Console shows a "Hreflang tags" report that flags invalid or malformed hreflang, or hreflang pointing to unindexed pages. If you manage several regional domains, check the root property (example.com) in Search Console and add each regional domain (example.fr, example.de) as a separate property to monitor hreflang independently.

Step three: test with a technical SEO tool like Screaming Frog, Semrush or Botify. These crawlers traverse your site the way Googlebot would, extract every canonical and hreflang, and flag inconsistencies (for example, a hreflang pointing to a page that doesn't declare that page back). Botify in particular offers a detailed hreflang audit report for large, multilingual B2B sites. You can export this data to CSV and cross-reference it with your content inventory to quickly spot issues.

Step four: monitor your indexing in Google. Go to Google Search Console under "Coverage" and look for URLs marked "Excluded (canonical)". If a page you wanted indexed shows up there, a canonical is pointing to a different page. Conversely, under "Enhancements" → "Hreflang markup" (if present), check that Google is correctly detecting your hreflang loops and understanding your alternates.

Step five: test your 301 redirects. If you've consolidated domains through redirects, use a tool like HTTP Status Codes Checker to confirm every old URL correctly redirects with a 301 (not a temporary 302) to the new URL. You can also test using Search Console's Googlebot simulation mode: simulate a request on the old URL and check that Google gets the 301 code and shows you which resolved URL it indexes.

Final recommendation: automate this audit every three months internally, especially after adding new B2B pages, changing structure, or expanding into new markets. A simple spreadsheet (page URL, observed canonical, observed hreflang, check) is enough for a mid-sized site. For complex sites with hundreds of multilingual pages, invest in a scheduled crawl tool that alerts you to changes.

Common multilingual B2B pitfalls and how to avoid them

Having guided complex B2B sites through multilingual migrations, certain mistakes come up again and again, and can cost months of lost ranking if they go undetected.

Pitfall 1: a hreflang pointing to a 404 or unindexed page. You're adding a new region, creating an Italian B2B content page, but forget to publish the destination page before updating your hreflang. For two weeks, every Italian hreflang points to a page that doesn't exist. Google ignores the invalid hreflang, which is the same as not having declared it at all, and a competitor creating Italian content takes your place. Fix: before deploying hreflang, verify every target URL exists, loads, and has no chained redirects (for example, a redirect to another redirect).

Pitfall 2: mixing hreflang and geo-targeted domains inconsistently. Example: you serve France with example.fr but also with example.com/fr/, and you set both as hreflang for France. Google has to choose which version to serve and can get confused, fragmenting your authority. Decide once and for all: either separate domains (example.fr, example.de) or subdirectories (example.com/fr, example.com/de), then stay consistent. Both architectures work, but mixing the two causes problems.

Pitfall 3: canonical pointing to a second-class version. In B2B, some sites create a "premium content page" for paying or registered visitors and a public "light" version. A freelancer mixes the two up and sets a canonical from the public version to the premium one (unindexed or accessible only to logged-in users). Result: the public pages vanish from search. Always point canonical from the weaker-performing page to the better-performing, directly indexable one.

Pitfall 4: forgetting hreflang or canonical on dynamic or generated pages. A B2B site auto-generates product-sheet pages for each language. If the generation process doesn't create hreflang and canonical tags, you end up with no signals across hundreds or thousands of pages. Build the generation of these tags directly into your template or CMS, not manually.

Pitfall 5: canonical to the main domain but hreflang to regional domains. A confusing but real example: a page on example.fr with a canonical pointing to example.com and hreflang pointing back to example.de. Google gets contradictory signals. Either unify everything on one domain (and adjust canonical and hreflang accordingly), or keep regional domains independent (self-referential and cross-regional canonical and hreflang).

Pitfall 6: ignoring URL parameters. A B2B site serves the same French page at two URLs: example.fr/logiciel-crm and example.fr/logiciel-crm?lang=fr. Without canonical, both versions get indexed, cannibalizing each other. Enforce clean URLs (no parameters) and if you have parameter-generated content, point the canonical to the clean version. Better still, use 301 redirects to clean up the parameters.

The general fix for these pitfalls: document your canonical/hreflang strategy in an internal document or wiki, involve your developers or CMS provider from the start (don't leave SEO to fix it after the fact), and audit at least the 20-30 key pages of each domain monthly to catch drift before it spreads to hundreds of pages.

Combining canonical, hreflang and HTTPS for a robust B2B SEO architecture

A complete canonical and hreflang strategy in B2B doesn't live in isolation: it needs to harmonize with your SSL/HTTPS certificate (secure domain) and your overall indexing structure. All three elements carry implications for ranking and authority consolidation.

As soon as your B2B site migrates to HTTPS (mandatory today), every canonical and hreflang should point to https:// URLs, never http://. If you're migrating from an old HTTP site to a new HTTPS one, 301 redirects from http:// → https:// transfer authority from old inbound links to the new secure URLs. After a few months, Google drops the unsecured URLs from its index. You don't need parallel canonical tags for this migration, since the 301s are enough. However, in the weeks following the migration, monitor Google Search Console to confirm the secure site is replacing the unsecured one.

Next, if your B2B site is set up to serve both www and non-www (for example, www.example.fr and example.fr), pick a preferred variant and redirect the other to it via 301. That avoids a duplication that would fragment your authority. Once you've chosen your preference (usually www.example.fr in B2B for a professional feel), every canonical and hreflang should point to that variant. Also declare that preference in Google Search Console: go to Settings → Preferred domain version, and select www or non-www.

On a very large multilingual site (for example, a B2B SaaS publisher with 10,000 pages in 15 languages), an architecture combining regional domains with secure HTTPS, self-referential canonicals and complete hreflang requires operational discipline. Set strict rules from the design stage: (1) every regional domain has its own wildcard or SNI SSL certificate, (2) every page gets a self-referential canonical the moment it's created, (3) a complete hreflang set is automatically generated for all variants at publish time, (4) updating a page in one language triggers an hreflang update across all other languages to stay consistent.

The link between HTTPS and canonicalization I mentioned at the start is really there: a secure domain builds search engines' trust, and clear canonicalization reinforces that trust by showing you've thought through the structure. Both work together to consolidate your B2B site's authority with Google, instead of fragmenting it across unsecured, duplicated or poorly signaled versions.

Key takeaways

The link between HTTPS and canonicalization is really there: a secure domain builds search engines' trust, and clear canonicalization reinforces that by showing you've thought through the structure.

Master canonical and hreflang across multilingual B2B domains to clarify page identity and boost your technical SEO.