EcomRank
Blog

How to handle multilingual SEO on Shopify: the essential technical setup

13 min read

Multilingual SEO on Shopify requires careful handling of URL structure, language tags, and content optimization to rank in multiple languages simultaneously. The core challenge is telling search engines which content serves which audience without creating duplicate content penalties or confusing crawlers. This guide walks through the practical steps to set up, manage, and measure a multilingual store that ranks.

URL structure and language signaling

Your first decision determines how search engines associate each version of your store with a specific language and region. Shopify supports three primary approaches: subdirectories (domain.com/en, domain.com/fr), subdomains (en.domain.com, fr.domain.com), or country-code top-level domains (domain.co.uk, domain.fr). Each has different SEO implications.

Subdirectories are the industry-recommended approach for most ecommerce brands. Google explicitly states that subdirectories consolidate domain authority better than subdomains, which is why major retailers like Shopify's own case studies use them. A store at domain.com/en and domain.com/de pools backlink equity at the root domain, strengthening the entire property. Subdirectories also simplify analytics and crawl budget allocation, because Google treats all versions as part of a single domain.

Subdomains split authority across separate addresses, making each language version compete independently for ranking. Unless you have a specific reason (separate teams managing languages, regional regulatory isolation), avoid this structure. Weglot's 2025 analysis of 312 multilingual Shopify stores found that subdirectory implementations ranked an average of 23% higher for localized queries than subdomain setups.

Country-code top-level domains like .de, .fr, or .co.uk send the strongest geographic signal to Google. However, they require separate domain registration, SSL certificates, and often separate Shopify plans. The cost and management overhead make this viable only for stores with significant revenue in those regions. A small store targeting France and Germany should use subdirectories, not ccTLDs.

Once you choose your structure, consistency is non-negotiable. If you launch domain.com/fr for French, every French page must live under /fr. Mixed structures confuse crawlers and dilute internal linking authority.

Hreflang tags and search intent mapping

The hreflang tag tells Google which language version of a page exists and which geographic audience it targets. Without hreflang, Google may index all versions as duplicates or pick the wrong one to show in search results.

Hreflang syntax looks like this: <link rel="alternate" hreflang="en" href="https://domain.com/en/products/widget" /> in the head of your English product page. The matching French page would include <link rel="alternate" hreflang="fr" href="https://domain.com/fr/products/widget" /> in its head, plus a reciprocal link back to the English version. This bidirectional linking tells Google that these pages serve the same product in different languages.

Shopify does not automatically generate hreflang tags for multilingual stores. You must either use the Translate and Adapt app (Shopify's native solution) or add hreflang manually if using a third-party translation service. The Translate and Adapt app handles hreflang injection automatically, which eliminates manual errors. If you prefer a third-party tool, tools like Weglot or Langify insert hreflang at page load, reducing manual configuration.

A critical error occurs when stores forget to include a self-referential hreflang on each page. Your English page at domain.com/en/products/widget should include <link rel="alternate" hreflang="en" href="https://domain.com/en/products/widget" /> pointing to itself. This prevents Google from treating the English version as if it lacks language declaration.

Hreflang also accepts regional scope. Use hreflang="en-GB" for English speakers in the United Kingdom and hreflang="en-US" for the United States. This is crucial if your store serves multiple English-speaking countries with different pricing, shipping, or product availability. Google's Search Central documentation confirms that regional hreflang (language-country) improves relevance for location-specific queries.

Test your hreflang implementation using Google Search Console. Crawl your store's sitemap and check the "Enhancements" section for hreflang errors. Shopify sometimes reports false positives, so manually inspect a sample of pages in the page inspector tool to verify tags are present and correct.

Content strategy and keyword clustering across languages

Translating English content word-for-word into French or German destroys SEO value. Search intent, keyword difficulty, and search volume differ drastically by language. A term with 5,000 monthly searches in English may have 800 searches in German for the same product category.

Research search volume and keyword difficulty in each target language separately using tools like Ahrefs, SEMrush, or Moz. For example, "sustainable hiking boots" generates roughly 3,200 searches per month in English, but the German equivalent "nachhaltige Wanderstiefel" only attracts 620 monthly searches. However, "Öko-Wanderschuhe" (eco-hiking boots) pulls 980 searches in Germany. By keyword clustering across languages, you can target the strongest intent in each market rather than forcing a one-to-one translation.

This approach aligns with topical authority principles. Instead of creating one pillar page about sustainable boots and translating it, research both the English and German keyword clusters, then write separate pillar pages optimized for each language's search behavior. Your French pillar might target "bottes de randonnée éco-responsables," while your Spanish version focuses on "botas de senderismo sostenibles" and "botas ecológicas." Each reflects the actual search intent in that language community.

Shopify's Shopify API allows programmatic SEO teams to bulk-generate and manage product descriptions, collection descriptions, and meta tags across languages. If you manage thousands of products across multiple languages, API-driven bulk generation reduces manual effort significantly. However, human-in-the-loop review remains essential. A bulk-generated French description for a hiking boot collection should be reviewed for regional terminology. In Quebec, for instance, hiking is often called "randonnée pédestre," not just "randonnée," and customers search accordingly.

Content pruning is equally important. Not every English page deserves a translated version. Low-traffic blog posts, outdated seasonal content, or pages with zero organic impressions should remain in English only. This preserves crawl budget for high-value pages and avoids spreading SEO authority across thin translations. Use Google Search Console to identify pages with fewer than 100 annual organic impressions in English, then decide whether translating them makes business sense.

XML sitemap structure for multilingual stores

Shopify generates an XML sitemap automatically at domain.com/sitemap.xml, but multilingual stores need separate sitemaps for each language. This tells Google which URLs exist and in which language, accelerating discovery and crawl efficiency.

Create language-specific sitemaps following this naming convention: domain.com/sitemap-en.xml, domain.com/sitemap-fr.xml, domain.com/sitemap-de.xml. Inside each sitemap, list only the URLs for that language version. In your main sitemap index at domain.com/sitemap.xml, reference all language-specific sitemaps:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap>
    <loc>https://domain.com/sitemap-en.xml</loc>
  </sitemap>
  <sitemap>
    <loc>https://domain.com/sitemap-fr.xml</loc>
  </sitemap>
</sitemapindex>

Shopify's native sitemap generation doesn't automatically split by language. Use an app like Smart SEO or generate custom XML files if your theme allows direct file upload. The added crawl efficiency from language-specific sitemaps is worth the setup time, especially for stores with more than 1,000 translated pages.

Include a <lastmod> timestamp in each URL entry. This helps Google prioritize recently updated content, which is valuable when you're translating existing pages or adding new regional variants. For example, if you update your German collection page, increment the lastmod date so Google knows to re-crawl it promptly.

Structured data and schema markup in multiple languages

Schema markup signals product, price, availability, and review data to search engines and AI language models. In a multilingual store, structured data becomes critical for AI Overview and Generative Engine Optimization, because large language models use schema to understand product information across languages.

Mark up product detail pages with JSON-LD schema in each language. For a product available in French, your schema should include the French product name and description, not an English label:

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Botte de randonnée durable",
  "description": "Botte écologique fabriquée avec matériaux recyclés",
  "brand": { "@type": "Brand", "name": "YourBrand" },
  "priceCurrency": "EUR",
  "price": "129.99",
  "availability": "https://schema.org/InStock"
}

Google's structured data validator (schema.org validator) accepts JSON-LD and will flag missing or incorrect fields. Run it on a sample product page in each language to ensure compliance.

Collection pages also benefit from structured data. Add BreadcrumbList schema to help Google understand the site hierarchy in each language. This improves crawl efficiency and enables breadcrumb rich results in the search results.

Review and rating schema is particularly powerful for conversion in multilingual stores. If your French store displays customer reviews, include the ReviewRating schema with the French review text. This allows Google to surface user-generated social proof directly in AI Overviews and conversational search results.

Internal linking and anchor text strategy

Internal links in a multilingual store should stay within the same language whenever possible. Do not link from your English product page to a French collection page. This confuses Google's language classification and wastes crawl budget on irrelevant redirects.

Within each language version, build a semantic hub architecture. For example, your English store might have a pillar page at domain.com/en/sustainable-hiking-gear that links to cluster articles at domain.com/en/blog/sustainable-hiking-boots, domain.com/en/blog/eco-friendly-backpacks, and domain.com/en/blog/recycled-socks-hiking. Each cluster article links back to the pillar with anchor text containing the primary keyword. This topical mapping strengthens topical authority in English.

Simultaneously, your French store builds a parallel hub at domain.com/fr/equipement-randonnee-durable with its own cluster structure. The two hubs do not cross-link; they exist independently. This prevents the language versions from competing with each other in search results.

Anchor text should be descriptive and keyword-relevant. Instead of "click here," use "sustainable hiking boots" or "bottes de randonnée durables" in French. Anchor text clarity signals search intent and improves click-through rate in search results. Shopify's theme editor allows custom anchor text when you build internal links, so there is no excuse for generic linking.

Conversion rate optimization and local customization

Multilingual SEO succeeds only if translated pages convert. A page that ranks in French but displays confusing or culturally irrelevant content wastes the ranking.

Customize product detail pages beyond translation. Adjust currency display, shipping costs, return policies, and payment methods for each market. A French customer expects to see prices in EUR and should see French payment options like Carte Bancaire or Virement. A UK customer expects GBP and UK-specific shipping rates. Shopify Markets lets you configure these per region, but you must also surface them in product page copy.

Use regional imagery where relevant. A hiking boot landing page for the German market might feature Alpine scenery, while the French version shows Pyrenees landscapes. This cultural relevance improves engagement metrics (time on page, scroll depth, click-through rate), which Google interprets as search intent alignment. Better engagement signals improve ranking.

Collection page descriptions should reflect regional product preferences. German climbers often prioritize technical specifications and durability certifications; French customers value sustainability credentials and brand heritage. Write separate collection descriptions for each market rather than translating identical text.

Monitor organic impressions and click-through rate by language in Google Search Console. If your French pages generate high impressions but low CTR, the meta description or title tag may not resonate with French searchers. Use regional language nuance and emotional triggers that reflect how French customers search and think about the product category.

Using shopify seo software to automate multilingual workflows

Managing keyword research, content creation, and internal linking across multiple languages at scale requires automation. This is where shopify seo software addresses a real operational challenge. Shopify SEO tools discover high-intent keywords across languages, write optimized cluster content, and auto-generate internal links, reducing the manual work of maintaining topical authority in three, four, or five languages simultaneously.

The workflow typically works like this: the tool ingests your Shopify store via the Shopify API, identifies gaps in your keyword coverage for each language, generates keyword clusters (English, French, German), writes blog posts or collection descriptions optimized for each cluster, and proposes internal linking anchors. Your team reviews and publishes. This human-in-the-loop approach ensures quality while cutting weeks of manual keyword research and content writing.

For stores with more than 500 products across 3+ languages, a programmatic SEO approach using automation is the only way to stay competitive. Manual workflows scale poorly once you exceed two languages.

Measurement and iteration

Multilingual SEO success hinges on measuring organic impressions, click-through rate, and conversion rate per language. Set up language-specific views in Google Search Console and Google Analytics 4 so you can track performance separately for each market.

Create segments in GA4 based on page language (filter by URL path /en, /fr, /de) and monitor key metrics:

  • Organic impressions per language
  • Average position in search results by language
  • Click-through rate per language version
  • Conversion rate per language

If your French store generates 50% of English impressions but only 20% of conversions, the issue may be on-page relevance, cultural fit, or shipping cost. Diagnose by examining landing page behavior, exit pages, and transaction data.

Test changes incrementally. If you rewrite a French product title to include a more relevant keyword variant, monitor that page's CTR and position for two weeks before rolling changes to the entire collection. Multilingual SEO changes can have unexpected knock-on effects if not tested first.

FAQ shopify seo software

How do I choose between subdomains and subdirectories for multilingual Shopify stores?

Subdirectories (domain.com/en, domain.com/fr) are the recommended approach because they consolidate domain authority at the root level, strengthening your entire site's ranking potential. Google's own guidance confirms this. Subdomains split authority, making each language version compete independently. Use subdomains only if you need separate teams managing regional content or separate analytics tracking. For most ecommerce stores, subdirectories deliver 15-25% better ranking performance across languages.

What is hreflang and why is it critical for multilingual stores?

Hreflang is an HTML tag that tells Google which language version of a page exists and which audience it targets. Without it, Google may index all versions as duplicates or pick the wrong language to show in search results. On your English page, include <link rel="alternate" hreflang="en" href="your-english-url" />. On your French page, include <link rel="alternate" hreflang="fr" href="your-french-url" /> plus a link back to the English version. Shopify apps like Translate and Adapt inject hreflang automatically, eliminating manual setup errors.

Should I translate every English page into other languages?

No. Translate only pages with strong search demand and conversion potential in the target language. Use Google Search Console to identify English pages with fewer than 100 annual organic impressions, then evaluate whether translating them makes business sense. Low-traffic blog posts, outdated seasonal content, or niche category pages may not justify translation effort. Focus your translation budget on product pages, high-value collection pages, and blog content that ranks and converts.

How do I research keywords for multilingual stores?

Search volume, difficulty, and intent vary dramatically by language. Research keywords in each target language separately using tools like Ahrefs, SEMrush, or Moz. For example, "sustainable hiking boots" has 3,200 monthly searches in English, but German climbers search for "nachhaltige Wanderstiefel" (620 searches) and "Öko-Wanderschuhe" (980 searches). Build separate keyword clusters for each language rather than translating English keywords one-to-one. This approach respects regional search behavior and delivers better rankings.

How should I structure my XML sitemap for a multilingual store?

Create separate sitemaps for each language (sitemap-en.xml, sitemap-fr.xml, sitemap-de.xml) and reference them in a sitemap index at domain.com/sitemap.xml. This tells Google which URLs exist in which language and accelerates crawl efficiency. Include a <lastmod> timestamp for each URL so Google prioritizes recently updated content. Shopify's native sitemap doesn't automatically split by language, so use an SEO app or generate custom XML files if your theme allows file uploads.

What structured data markup do I need for multilingual product pages?

Use JSON-LD schema markup with the product name and description in the correct language. For a French product page, include the French product name, not an English translation. Add BreadcrumbList schema on collection pages to help Google understand your site hierarchy in each language. Include ReviewRating schema if you display customer reviews, allowing Google to surface user-generated content in AI Overviews. Run Google's structured data validator on sample pages in each language to check for errors.

How do I avoid internal linking conflicts between language versions?

Keep internal links within the same language. Do not link from your English product page to a French collection page. Within each language, build a semantic hub architecture with a pillar page linking to cluster articles and back-links using keyword-rich anchor text. Your English hub at domain.com/en/sustainable-gear and French hub at domain.com/fr/equipement-durable exist independently and do not cross-link. This prevents language versions from competing in search results.

How often should I check my multilingual SEO performance?

Monitor organic impressions, click-through rate, and conversion rate per language in Google Search Console and Google Analytics 4 weekly. Set up language-specific views and segments so you can diagnose performance separately for each market. If French pages generate high impressions but low CTR, the title, meta description, or page content may not resonate with French searchers. Use regional language nuance and test changes incrementally on a subset of pages before rolling them out site-wide.