Free SEO extension πŸ”₯
International SEO β€’ SeoSpidie Editorial Team β€’ β€’ 16 views

ccTLD vs Subdomain vs Subfolder for International SEO

Compare the three ways to structure an international website and choose the one that fits your business.

Slug generator illustration

When a website serves several countries or languages, each version needs an address. There are three common options, and each has trade-offs in cost, effort and how search engines treat it.

Option 1: Country-code domains (ccTLDs)

Examples: example.co.uk, example.de, example.com.au.

  • Strong local signal β€” search engines and shoppers instantly see the country.
  • Local trust β€” many buyers prefer their own country's domain.
  • Separate authority β€” each domain builds its own links from scratch.
  • Higher cost and effort β€” several domains, sometimes local registration rules, more sites to maintain.

Option 2: Subdomains

Examples: uk.example.com, de.example.com.

  • Easy to host separately, for example on different servers or platforms.
  • Search engines can treat subdomains somewhat separately, so authority may not flow as fully as within one site.
  • Weaker country signal than a ccTLD.

Option 3: Subfolders

Examples: example.com/uk/, example.com/de/.

  • Shared authority β€” every link to the domain helps all versions.
  • Lowest cost β€” one domain, one hosting setup, one CMS.
  • Clear structure β€” easy to manage hreflang and sitemaps.
  • Country signal comes from content, hreflang and local links rather than the domain.

Which should you choose?

  • Small or new businesses: subfolders. You get one strong domain and fewer moving parts.
  • Large brands with local teams and budgets: ccTLDs can be worth it for maximum local trust.
  • Different platforms per market: subdomains are practical when technical setups must differ.

Whatever you choose, keep folder and page names readable. Create clean, consistent slugs with the URL slug generator, and read SEO-friendly URL structure best practices.

Naming subfolders

Use simple codes: /uk/, /us/, /de/ for countries, or /es/, /fr/ for languages. For language-and-country combinations, /en-gb/ or /fr-ca/ work well. Stay consistent across the site.

Connect the versions

Structure alone is not enough. Link equivalent pages with hreflang, offer a visible language or country switcher, and give each version a self-referencing canonical. See how to use hreflang tags and the international SEO checklist.

A worked example

A furniture retailer launched separate ccTLDs for the UK, Ireland and Australia. Two years later, each site still had few links and weak rankings, and the small team struggled to update three platforms. It moved everything into subfolders on its main .com domain with 301 redirects and hreflang. Within months, the regional sections ranked better than the old domains had, helped by the main site's existing links.

Questions to decide your structure

  • Do you have separate teams or budgets per country?
  • Will each market sell different products or just show different prices?
  • Can you build links and content for several domains, or only one?
  • Do local laws or marketplaces require a local domain?
  • Will one content management system handle all versions?

If most answers point to "one team, one system, shared products", subfolders are almost always the practical choice. Revisit the decision only when a market becomes big enough to justify its own domain and team.

More free tools: browse all our free utility tools, no sign-up needed.

Frequently asked questions

Is a .com domain good for international SEO?

Yes. A .com is not tied to one country, so it works well with subfolders for each market.

Do subdomains hurt SEO?

Not necessarily, but subfolders usually make it easier for authority to benefit all versions.

Can I switch structures later?

Yes, with careful 301 redirects, but it is a migration with some risk β€” choose carefully at the start.

Does Google still have a country targeting setting?

No. Search Console's international targeting setting was retired; use hreflang, local content and local links instead.