Goal: Keep the hierarchy stable across languages. Translate labels for shoppers, but keep IDs, mapping rules, and canonical signals consistent across locales.
Why multi-language breadcrumbs break on Shopify
International stores often run into the same problem: the store has one catalog, but multiple language versions of pages. If URLs, internal links, or breadcrumb paths change unpredictably per locale, crawlers can get mixed signals. That can lead to duplicated indexing, diluted relevance, and confusing navigation for shoppers.
1) Stable URLs come first
Before you think about translating breadcrumb names, decide how you want URLs to behave. Your internal linking should consistently follow the same URL format for each locale, and avoid creating extra indexable variations.
Use a consistent locale URL format: for example, a language prefix pattern that stays stable across the site
Avoid parameterized URL variants in breadcrumbs and navigation links
Do not mix multiple URL formats for the same locale
2) Translate names, not structure
The best multilingual breadcrumb setup keeps the same underlying hierarchy for every language. You localize the breadcrumb labels, but the parent-child mapping rule stays the same. That stability makes your site easier to crawl and easier to understand in search and AI results.
Keep the same parent-child category mapping across locales
Translate category labels and breadcrumb names per locale
Keep breadcrumb item URLs consistent with the locale URL format
3) Align breadcrumbs with hreflang and canonical signals
Multi-language SEO works best when signals agree. Your canonical strategy should be consistent, and your hreflang alternates should map cleanly between language variants. Breadcrumb links should support those decisions, not create extra paths.
Canonical: each locale page should point to its preferred URL for that locale
Hreflang: language versions should be linked as alternates of the same page intent
Breadcrumbs: should link using the correct locale URLs, not a different locale by accident
4) Keep JSON-LD clean across locales
Breadcrumb JSON-LD should match what shoppers see. In each locale, output a single BreadcrumbList that uses translated names but the same stable linking rules. Avoid duplicates from both theme and app outputting schema at the same time.
One BreadcrumbList per page per locale
Translated name values that match the UI
Locale-correct item URLs that match canonical decisions
No duplicate schema from multiple sources
5) Quick validation checklist
Choose one product and test it in two languages. The content can be localized, but the signals should stay consistent.
Open the same product in Language A and Language B
Confirm breadcrumb labels are translated correctly
Confirm the breadcrumb path depth is consistent across locales
Confirm canonical tags match the preferred locale URLs
Confirm JSON-LD BreadcrumbList exists and matches the visible breadcrumbs
Common mistakes to avoid
Changing hierarchy per language: different parent paths create inconsistent signals
Linking to the wrong locale: breadcrumb links unexpectedly switching language
Duplicate schema: multiple BreadcrumbList outputs on the same page
Mixed URL formats: some internal links use one locale pattern, others use another
Summary
Multi-language SEO works best when your structure stays stable. Translate breadcrumb labels for shoppers, but keep hierarchy rules, canonical URLs, and JSON-LD consistent for crawlers. Breadcrumbs make that structure explicit and predictable, which improves both UX and SEO across languages.
Try it on your store
Install Breadcrumbs & Categories to keep your breadcrumb hierarchy stable while translating labels for each language. This helps you maintain consistent internal links and clean structured data across locales.
