International SEO Checklist

A build-and-launch international SEO checklist — URL structure, hreflang, geotargeting after the GSC deprecation, crawlable switchers, and duplicate-content handling.

First published: Jul 2, 2026 · Last updated: Jul 14, 2026 · Advanced
demand #6 in International SEO#136 on the site

This is the build/launch checklist for a site that targets more than one country and/or language — the sequence to work through when setting one up, as opposed to auditing one that's already live. Decide your URL structure once and apply it consistently (ccTLD vs. subdomain vs. subdirectory; Google marks URL-parameter language switching 'Not recommended'). Implement hreflang with self-references, return tags, and x-default in whichever delivery method fits your stack — HTML head, HTTP header, and XML sitemap are equivalent to Google. Localize, don't machine-translate. Know that the GSC International Targeting report was fully removed in September 2022, so country targeting is now inferred from ccTLD + hreflang + on-page + link signals with no manual override. Make language/currency switchers real crawlable links, never JS-only dropdowns, and never auto-redirect by IP. Near-identical regional variants need canonical AND hreflang together, not canonical alone. Bing weights the content-language meta tag over hreflang and appears to have removed its own Geo Targeting feature.

TL;DR — This is the build/launch sequence, not an audit. (1) URL structureURL structure is how the parts of a web address — scheme, domain, path, query string, and fragment — are organized and formatted. It mostly affects crawling, usability, and how engines understand a page, not rankings directly.: ccTLDCountry-code top-level domain like .de or .co.uk — a strong geotargeting signal. (strongest country signal, one country each, most overhead), subdomain, or subdirectory (easiest, most common) — Google marks the URL-parameter approach “Not recommended.” Pick one, apply consistently. (2) hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others.: self-reference, reciprocal return tags, x-defaultx-default is the reserved hreflang value that points to a fallback URL — the page Google shows when a user's locale doesn't match any of your other hreflang tags. It is optional and does not mean \"English.\", valid ISO codes; HTML head, HTTP header, and XML sitemapAn XML sitemap is a UTF-8 file listing the canonical URLs on your site (with optional lastmod) so search engines can discover and prioritize them. It's a discovery and diagnostic aid, not a guarantee of indexing — and Google ignores its priority and changefreq tags. are equivalent delivery methods — choose for your stack, sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. scales best. (3) Localize, don’t machine-translate. (4) GeotargetingConfiguring a site or URL to target users in a specific country.: the GSCA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. International Targeting report was fully removed September 22, 2022 for all TLD types — there is no manual country target anymore; ccTLD + hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. + on-page + link locale is what Google infers from now. (5) Switchers must be crawlable <a href> links, never JS-only, and don’t auto-redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. by IP. (6) Near- identical regional variants: canonical + hreflang together, and Google may still consolidate them anyway. (7) Validate reciprocity, codes, x-defaultx-default is the reserved hreflang value that points to a fallback URL — the page Google shows when a user's locale doesn't match any of your other hreflang tags. It is optional and does not mean \"English.\", and rendered-head placement before and after launch. Bing weights content-language over hreflang and appears to have removed its own GeoGenerative Engine Optimization (GEO) is the practice of optimizing content and brand presence so AI-powered search engines and assistants — Google AI Overviews, ChatGPT, Perplexity — cite, recommend, or mention you when generating answers. Google's position is that it's still SEO. Targeting feature.

Evidence for this claim Google recommends distinct URLs for language versions and documents ccTLD, subdomain, and subdirectory structures while marking URL parameters as not recommended. Scope: Google Search international URL guidance. Confidence: high · Verified: Google: Locale-specific URLs Evidence for this claim Google recommends hreflang for distinct language URLs, warns against automatic language redirects, and recommends crawlable links between versions. Scope: Google Search multilingual-site discovery and switching guidance. Confidence: high · Verified: Google: Managing multilingual versions

How this differs from the audit

The international SEO audit is a diagnostic methodology — how you find what’s broken on a site that already has international SEOInternational SEO is the practice of optimizing a site so search engines understand which countries and/or languages it targets, and serve the right version to each user. It spans URL structure, hreflang, and on-page localization. live, complete with the cluster-graph tooling and my 374,756-domain hreflang study’s error breakdown. This checklist is the other half: the sequence I work through when setting up or reviewing a new build. So I’ll keep the hreflang error-frequency tables and tool walkthroughs over there and stay action-oriented here, and I’ll route conceptual depth to the international SEOInternational SEO is the practice of optimizing a site so search engines understand which countries and/or languages it targets, and serve the right version to each user. It spans URL structure, hreflang, and on-page localization. hub rather than re-deriving it.

Step 1 — Choose your URL structure

Google’s own documentation lays out the structures with explicit pros and cons, and it’s worth working from their table rather than folklore:

StructureExamplePros (Google’s words)Cons (Google’s words)
ccTLDexample.de”Clear geotargeting”; “Server location irrelevant""Expensive (can have limited availability)”; “Can only target a single country”
Subdomain + gTLDde.example.com”Easy to set up”; “Easy separation of sites""Users might not recognize geotargeting from the URL alone”
Subdirectory + gTLDexample.com/de/”Easy to set up”; “Low maintenance (same host)""Single server location”; “Separation of sites harder”
URL parametersThe `?key=value` data tacked onto the end of a URL after a question mark — used for tracking, sessions, filtering, sorting, and search — and one of the biggest sources of duplicate URLs and wasted crawling in SEO.example.com?loc=de“Not recommended”

The ccTLD is still the strongest country signal Google has — its own doc says “Country-specific domains (ccTLDs) provide a strong signal to both users and search engines about the target country of a website.” But note the fourth row: the URL-parameter approach the brief for this topic sometimes gets described as a “gTLD + language param” option is, in Google’s own framing, the thing to avoid. Don’t put the locale in a query string.

A caveat on ccTLDs specifically: the automatic ranking benefit they once carried is being phased down (Gary Illyes has said as much — see the hubInternational SEO is the practice of optimizing a site so search engines understand which countries and/or languages it targets, and serve the right version to each user. It spans URL structure, hreflang, and on-page localization. for the LDCP-fading discussion). ccTLD is still the clearest country signal, but don’t treat it as a guaranteed ranking edge. My own default, elsewhere on this site, is subdirectories for most sites — but the real rule here is decide once and apply it consistently, because inconsistency across signals is exactly what an audit later has to untangle.

Step 2 — Implement hreflang correctly

Four things, and then hand off to the deep dives:

  • Self-reference. Each version’s hreflang set should list every version including itself. Google’s docs frame self-reference as part of the standard instruction; Mueller has separately called it “optional” in practice — so there’s real tension between the doc phrasing and his looser public statements. I include the self-reference because it’s cheap insurance and matches the documentation.
  • Return tags (reciprocity). This is the one that actually breaks sets. Google: “If page X links to page Y, page Y must link back to page X. If this is not the case for all pages that use hreflang annotations, those annotations may be ignored or not interpreted correctly.”
  • x-default. The fallback for users whose language/region you don’t explicitly cover. Depth in x-default hreflangx-default is the reserved hreflang value that points to a fallback URL — the page Google shows when a user's locale doesn't match any of your other hreflang tags. It is optional and does not mean \"English.\".
  • Valid ISO codes. Language codes (ISO 639-1Two-letter language codes used in hreflang (en, es, de).) and optional region codes (ISO 3166-1 Alpha 2). en-uk is wrong; it’s en-gb. Wrong codes silently void the annotation.

Delivery method — pick one, be consistent. hreflang can live in the HTML head, an HTTP header (for non-HTML files like PDFs), or an XML sitemapAn XML sitemap is a UTF-8 file listing the canonical URLs on your site (with optional lastmod) so search engines can discover and prioritize them. It's a discovery and diagnostic aid, not a guarantee of indexing — and Google ignores its priority and changefreq tags.. Google treats all three as equivalent — there’s no speed or priority difference — so choose based on your stack. At scale, and especially for mixed ccTLD/subdirectory setups, the XML sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. is usually the most maintainable place to manage it centrally. The full tag mechanics live in hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others..

TIP Make reciprocal hreflang validation a launch gate

Checking that tags exist is not enough. Validate the locale cluster and every return relationship before and after launch.

Run the sitemap cluster with my free returntag - hreflang checker Free

  1. Load the launch sitemap set and confirm every intended locale and x-default node appears.
  2. Resolve missing returns, broken targets, and inconsistent cluster URLs.
  3. Rerun after deployment and verify page-head or HTTP Link annotations separately if the site uses them.
The checklist fails on one return relationship without hiding the nine pairs that already work.

The result reads five URLs and 24 annotations across en-US, en-GB, fr-FR, de-DE, and x-default. It reports nine reciprocal pairs, one missing return from fr-FR to en-US, and zero broken targets.

Step 3 — Localize, don’t just translate

One paragraph, because there’s a whole article on it. Machine-translating your existing pages and shipping them unedited is the failure mode. Real localizationLocalization is adapting content for a specific target market — not just translating the words, but adjusting currency, formats, idioms, cultural references, local search terms, and trust signals so the experience feels native. adapts currency, units, examples, imagery, and product mix to the market — and often starts from market-specific keyword research rather than translating your existing keywords. Deep dive: translation vs. localizationLocalization is adapting content for a specific target market — not just translating the words, but adjusting currency, formats, idioms, cultural references, local search terms, and trust signals so the experience feels native.. Checklist item: no unedited machine translation.

Step 4 — Geotargeting: what GSC can and can’t do anymore

This is where a lot of published checklists are simply out of date. The Google Search ConsoleGoogle's free tool for monitoring crawling, indexing, and search performance. International Targeting report — the setting where you could manually point a subdirectory or subdomain at a country — was deprecated on September 22, 2022, and it’s gone for every TLD type. Google’s notice: “The International Targeting report has been deprecated. Google will continue to support and use hreflang tags on your pages.” The reason given: the country-targeting setting “was determined to have little value for the ecosystem, and is no longer supported.”

So the framing you’ll still see — “ccTLDs are automatic, but subdirectories and subdomains need the manual GSC setting” — describes how it used to work, not a choice you have today. There is no manual country target anywhere in Search Console anymore. Google now infers geotargeting entirely from:

  • the ccTLD, if you have one (still automatic, still the strongest signal);
  • hreflang annotations;
  • on-page signals — language of the visible content, currency, addresses, phone formats;
  • the locale of your inbound links.

The checklist item is therefore not “set your country in GSC.” It’s “make sure your ccTLD, hreflang, on-page signals, and link locale all agree,” because agreement is what Google reads now that there’s no override.

Step 5 — Make switchers crawlable

Language and currency switchers have to be real, crawlable hyperlinks — not JavaScript-only dropdowns or client-side route changes with no real href. Google’s own guidance is explicit: “Consider adding hyperlinks to other language versions of a page.” A switcher built as JS state with no crawlable link risks Google never discovering the alternate versions through that path. (Google does render JS and does crawl without setting an Accept-Language header, but a mechanism with no real <a href> is the fragile case.)

And don’t force-redirect: “Avoid automatically redirecting users from one language version of a site to a different language version of a site.” Auto-redirecting by IP or browser language traps users (and GooglebotGooglebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants, Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop, and runs an evergreen Chromium renderer., which crawls from the US) in the wrong version. Give everyone a visible, clickable path to every version and let them choose. This is the same JS-renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. risk the audit article documents for hreflang itself — same logic, applied to the switcher.

Step 6 — Handle near-duplicate content across variants

If you serve near-identical content in the same language for different regions — the classic en-us / en-gb pages that are 95% the same — Google may treat them as duplicates. The fix is canonical and hreflang together, per Google: “pick a preferred version and use the rel="canonical" element and hreflang tags to make sure that the correct language or regional URL is served to searchers.”

The nuance that matters: canonical alone would drop the regional version from indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. entirely — you need both. And even done correctly, Google may still fold near-identical hreflang’d pages into one canonical and just swap the URL shown in the SERP (Mueller has confirmed this for cases like fr-fr / fr-be). hreflang doesn’t guarantee separate indexing; it helps serve the right existing version.

Step 7 — Validate before and after launch

Keep this short — the audit article has the full methodology and the nine-error breakdown from my hreflang study. The pre/post-launch essentials:

  • Return tags present on every pair (the most common functional break).
  • Valid language/region codes (ISO 639-1 / ISO 3166-1 Alpha 2).
  • Self-reference present in each set.
  • x-default present.
  • Tags in the rendered <head>, not injected mid-<body> by JS and not below the head where they’re invalid.
  • Verify the indexed URL per locale with GSC URL Inspection — confirm Google actually indexed the version you intended for that market.

Bing-specific notes

Two things diverge from Google:

  • Bing weights the Content-Language meta tag / HTTP header more heavily than hreflang. Fabrice Canel of Bing has put it directly: “hreflang is indeed a far weaker signal than content-language at Bing.” Bing does read hreflang — just weakly — and rounds out its country understanding with ccTLD, server location, body-text language, and inbound-link locale. If Bing is a meaningful channel, set content-language explicitly.
  • Bing’s own GeoGenerative Engine Optimization — visibility inside AI answer engines. Targeting feature appears to have been removed. The Geo Targeting control in the old Bing Webmaster ToolsMicrosoft's free portal for monitoring and improving how a site appears in Bing search — the peer to Google Search Console, plus IndexNow instant indexing, richer backlink data, and keyword volumes. Because Bing's index also feeds Microsoft Copilot, it doubles as a window into AI-search visibility. was not carried into the current UI. Bing’s public guidance now points to signaling geography via HTML meta tagsMeta tags are HTML elements in a page's head that pass metadata about the page to search engines and browsers. For SEO only a few matter — the title element, the meta description, and the robots meta tag — while meta keywords and most others are ignored. / HTTP headers instead. (I flag this as reported-not-certain — see the note under the Quotes tab — because the primary source resists automated verification. Either way, don’t build a checklist step around a Bing dashboard setting; use content-language and on-page signals.)

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.