Skip to content

SEO for international and multilingual sites

This one is a modifier: combine it with whatever else your site is, an international shop, a multilingual docs site. The defining concern is hreflang and a clean multi-locale architecture, so the right version reaches the right audience without duplicate-content confusion.

The Visibility Ladder, tuned

Where sites like this actually fail

Same five rungs, same order, different emphasis. Diagnose top to bottom, fix bottom to top.

ReachHigh priority

Every locale's content must be reachable and in the sitemap. No IP-based auto-redirects that trap crawlers in one locale; hreflang expresses the relationship instead.

ReadHigh priority

Genuinely localised content with the correct html lang per locale, not machine-translated boilerplate or one language with a swapped flag.

UnderstandStandard checks

Schema consistent per locale, inLanguage where relevant, and one consistent organisation identity across all locales.

ConnectCritical here

The heart of this profile: reciprocal hreflang linking equivalent pages, each locale self-canonicalising, and one consistent URL strategy.

RankStandard checks

Each locale competes in its own market; genuine localisation is what makes that credible.

AEO layerStandard checks

Answer formatting in each locale's language, with a consistent entity so engines resolve one organisation.

Priority tilt: Weight Connect (hreflang, canonicals, URL strategy) highest, then Read (genuine localisation). Combine with the base profile for everything else.

Checks specific to this kind of site

hreflang reciprocity

If page A points to B, B must point back, and every page lists itself plus an x-default. Non-reciprocal hreflang is silently ignored by Google.

Per-locale canonicals

Each locale canonicalises to itself. Pointing every language at the English page hides all the others from search.

No forced geo-redirects

IP-based redirects trap crawlers (which mostly crawl from the US) in one locale. All locales stay crawlable; hreflang does the routing.

One URL strategy

Subdirectories, subdomains, or country domains: pick one, apply it consistently. The pack recommends subdirectories as the common default.

Existing hreflang is treated as intentional

On an established international site, hreflang clusters and locale canonicals may encode deliberate decisions. The pack verifies before changing anything, flags what looks wrong with evidence, and never bulk-rewrites locale wiring without you approving it first.

Skills that do the work

  • seo-orchestratorCombines international with your base profile and runs the audit
  • 4-connect-architecturehreflang, canonicals, and the multi-locale URL structure
  • 1-reach-indexationEvery locale crawlable, in the sitemap, and free of redirect traps
  • seo-migrationsRestructuring locales or domains without losing what ranks

Driven by the international profile in the pack.

Structured data it works with

  • Same as your base type, per locale
  • inLanguage
  • Consistent Organization @id

Always honest: markup describes only what's real and visible on the page. Fabricated ratings, authors, or credentials are removed and flagged, never added.

Try it on your site

Paste this into Claude Code, Cursor, or any AI coding agent. It's read-only: the agent audits and reports, and changes nothing until you ask.

audit-international
Use the seo-for-ai-agents skill pack (https://github.com/manibharij/seo-for-ai-agents) with the international profile combined with my site type: audit my site on the served HTML. Verify hreflang reciprocity and self-references, per-locale canonicals, crawlability of every locale, and genuine localisation. Report only, don't change any code or files yet.

Common questions

What is hreflang and why does mine keep failing?

hreflang annotations tell engines which language and region each version of a page targets. They fail silently for two common reasons: the links aren't reciprocal (A points to B but B doesn't point back), or the codes are wrong (like en-UK instead of en-GB). The pack validates both on the served output, where it actually counts.

Should every language version have its own canonical?

Yes. Each locale page should canonicalise to itself, with hreflang expressing the alternates. Canonicalising every language to the English page is a common mistake that effectively removes the other languages from search.

Is redirecting visitors by IP address a good idea?

For crawlers, no. Googlebot mostly crawls from the US, so a forced IP redirect means it may only ever see your US version. Keep every locale crawlable, use hreflang to signal the right version per market, and if you offer a locale suggestion, make it a dismissible banner rather than a redirect.