Localization and translation
Customers all over the world prefer viewing content in their native language. Translating your store's content can lead to more sales because your international customers can better understand your marketing, product details, shipping, and return policies. Learn more about selling cross-border.
You can activate multiple languages from your Shopify admin to create separate URLs for your translated content. When customers land on a regional URL, your store automatically displays the translated version if translations exist.
Whenever translations don't exist, your online store displays content in your primary language. You can translate the content of your online store by using the Translate & Adapt app, adding your own translations using CSV files, or by using a compatible third-party app. After translating the store, customers can browse your store, checkout, and receive notifications in their local language.
On this page
- Requirements for localizing and translating your store
- Localization and URLs and SEO
- Considerations of selling in multiple languages
- Changing the default language of your online store
- Managing languages
- Manage languages for markets
- Change the default language of your online store
- Adding language translations using CSV files
- Multi-language for developers
- Translating checkout and email notifications
- Translations available for themes and checkout
- Translations in apps
- Frequently asked questions about localization and translations
Requirements for localizing and translating your store
Before localizing and translating your store, review the following requirements:
- Shopify plan: Available on all plans except the Lite plan.
- Theme compatibility:
- Free Shopify themes support multilingual features.
- Custom themes must use Shopify's
routes
Liquid object for internal links (e.g.,/cart
to ``) to ensure compatibility.
- Domain structure:
- Use subfolders (e.g.,
example.com/de
) or subdomains (e.g.,de.example.com
) for language-specific URLs.
- Use subfolders (e.g.,
To sell in multiple languages, you must meet the following requirements:
- Your store is on the Basic plan or higher.
- Your active theme is a theme that's compatible with selling in multiple languages. All the free themes from Shopify are compatible. You might need to update your theme for it to be compatible with selling in multiple languages. If you're using a third-party theme, then you can contact your theme developers to check if it's compatible.
- Your active theme has a language selector. If your theme doesn't have a country or language selector, then you can add them by using a third-party app from the Shopify App Store.
- Your store uses the Shopify Translate & Adapt app or a compatible third-party translation app. Alternatively, you can follow the instructions to import your translations directly into Shopify.
Localization and URLs and SEO
A major aspect of selling in multiple languages is making sure that customers and search engines can find the right language version of your site. When you publish a language, unique URLs are created for each translated page in your store. This is done by adding the language code to the URLs:
- hreflang tags: Automatically added for language-specific URLs.
- URL slugs: Translated slugs are optional but improve localization (for example,
/products/chair
to/produkte/stuhl
).
For example, suppose your primary domain is example.com
. If you publish 2 additional languages, French (fr) and German (de), then your store URLs change to example.com/fr
and example.com/de
.
You can also have different languages available on different domains by using the international domains feature.
URL slugs can be translated manually with the Shopify Translate & Adapt app, a compatible third-party translation app, or via CSV export/import.
It's important that search engines can index your site in all the translated languages. Shopify automatically adds hreflang tags and includes all published languages in sitemaps, which help search engines detect the different languages on your store.
Considerations of selling in multiple languages
Review the following considerations before selling in multiple languages:
- Selling in multiple languages supports only compatible third-party translation apps.
- Tags (such as product tags, article tags, and blog tags) can't be translated.
- URL slugs, such as
/products/en-ca/shoes
, can be translated into/products/es-mx/zapatos
but the wordproducts
can't be translated. - URL slugs can't be customized for markets. Translations can only be added for URL slugs on all markets where a language is displayed.
- When translating to languages that are written from right to left, such as Hebrew or Arabic, check that your theme supports right-to-left languages to ensure that the layout is correct.
- Shopify supports 33 pre-translated checkout options. Making additional customizations to the language in the checkout requires third-party apps.
Changing the default language of your online store
After you change the default language of your online store, your previous default language is removed from Settings > Languages. If you want to set the previous default language as your secondary language, then you need to add it back to your markets and Settings > Languages.
Learn more about managing languages.
Managing languages
You can manage multiple languages in your store in the Languages section of your Shopify admin, and manage languages for each of your markets in the Markets section of your Shopify admin.
Considerations for managing languages
Review the following considerations for managing languages and translations for your online store and markets:
- Make sure your store meets the requirements for selling in multiple languages.
- Adding a language only adds translations in supported languages to supported themes and checkouts. If you want to add translations to other store content, then you need to import translations or use an app.
- You must provide the translations when adding languages to your store. Before you add a new language, ensure that you have your translations ready, or that you have a translation app installed and have assigned the language to a market. You can use the Translate & Adapt app to import your translated content into Shopify. You can also visit the Shopify App Store to find a translation app for your store.
- If you publish a language to your store without adding translations, then you receive a message prompting you to add translations. Languages that are published without adding additional translations only display the provided translations for the theme and checkout.
- You need to have international domains set up to manage languages for specific markets. If you don't have international domains set up, then your language settings are the same for all of your active markets.
Add a language to your online store
From your Shopify admin, go to Settings > Languages.
Click Add language.
In the Add language dialog, select a language from the drop-down menu, and then do either of the following:
- If you don't have international domains set up, or if you have only one market, then click Add.
- If you have more than one market and have international domains set up, then select the active markets that you want to add your language to:
- Click Next.
- Toggle any markets that you want to add the language to.
- Click Done.
- Do either of the following to add translations:
- Use the Translate & Adapt app to import your translated content into Shopify.
- Visit the Shopify App Store and install a translation app to your store. Follow the steps in the app to translate your online store's content and publish new languages.
Publish a language to your online store
From your Shopify admin, go to Settings > Languages.
In Unpublished languages, click … > Publish next to the language that you want to make available to customers in your store.
Click Save.
Manage languages for markets
You can add languages, manage languages, and change the default language for each market in the Markets section of your Shopify admin.
Before you can manage languages for markets, you need use subfolders or domains and subdomains to create international domains.
If you don't have international domains set up, then your language settings are the same for all of your active markets, and you can't manage settings for specific markets.
Learn more about setting up international domains.
Add a language to a market
Before you can add a language to a specific market, you need to add the language in the Languages section of your Shopify admin.
Steps:
From your Shopify admin, go to Settings > Markets.
Click the market that you want to manage languages for.
Click Languages and domains.
Click Add languages
In the Not added to this market section, click the language that you want to add.
Change a market's default language
By default, each market uses the same default language as your store's default. You can change the default language for each market to a different language.
Steps:
From your Shopify admin, go to Settings > Markets.
Click the market that you want to manage languages for.
Click Languages and domains.
Click the ... icon next to the market's current default language.
Click Set as default.
Remove a language from a market
You can remove a language from a market when you no longer want to offer it as an option. Removing the language from the market means that all URLs using that language's URL slug will stop working. As long as the translation exists, you can re-add the language later.
Steps:
From your Shopify admin, go to Settings > Markets.
Click the market that you want to manage languages for.
Click Languages and domains.
Click the ... icon next to the language that you want to remove.
Click Remove language.
In the dialog, click Remove.
Unpublish a language in your online store
You can unpublish a language, which hides the language from customers without deleting the language or the translations. Any links to the store in that particular language result in a 404 "Page not found" error, so create redirects for any of your unpublished languages.
Steps:
From your Shopify admin, go to Settings > Languages.
In the Published languages section, click the ... icon next to the language that you want to make unavailable.
Click Unpublish.
In the dialog, click Unpublish.
By unpublishing a language, you also remove that language from any markets that it was added to.
Delete a language in your online store
If you're confident that you don't need translations in that language, then you can also delete the language. Deleting a language also deletes all translations of that language permanently. If you add the language again in the future, then you need to re-add the translations.
Steps:
From your Shopify admin, go to Settings > Languages.
In the Unpublished languages section, click the ... icon next to the unpublished language that you want to remove from your store.
Click Remove language.
In the dialog, click Delete.
By deleting a language, you also remove that language from any markets that it was added to.
Change the default language of your online store
You can change the default language of your store. Your default store language is used in your store's checkout and theme.
Steps:
From your Shopify admin, go to Settings > Languages.
In the Published languages section, click the ... icon next to your current default language.
Click Change default.
In the Change default language dialog, select a language from the menu.
Click Save.
Adding language translations using CSV files
You can import translated content in CSV files. Importing your own translations using CSV files lets you manage your language translations without the use of a third-party translation app.
Review the following restrictions before using a CSV file to add a language translation:
- You can't translate resource tags.
- If you use a third-party app, then your app might not support selling in multiple languages by default. If you're not sure about your app, then contact the app's developer.
- If you change a product's handle, then the URL redirects for that product won't be supported for language-specific URLs.
- You can't translate product URLs. Product URLs remain in the language that they were created in, even when a customer views your site in another published language.
The following high-level steps describe the process to export, modify, and import language translations using CSV files.
Step 1: Export your CSV file
You can export a CSV file from your Shopify admin that contains the current list of translations for the languages that you select. The CSV file is emailed to you.
The CSV file contains the following columns:
- Type - The resource type, such as Products, Articles, Collections, Pages, or Blogs.
- Identification - The resource ID.
- Field - The field, such as
title
,body_html
, ormeta_title
. - Locale - The language that the content is being translated to.
- Market - The market the content was created for.
- Status - Identifies whether the translation is outdated.
- Default content - The original content to be translated.
- Translated content - The translated content. You can add your translated content to this row.
Steps:
- From your Shopify admin, go to Settings > Languages.
- Click Languages.
- Click Export.
- Select the language that you want to export. You can select All languages to export the translations for all languages that you support.
- Select one of the following options:
- Select All content to export all translations.
- Select Metafields if you're using Metafields to add content to your store.
- Select Outdated if you've already added translations to your store and want to export translations that are out of date with your default language.
- Select Untranslated content to export only the content that isn't currently translated.
- Click Export. The exported CSV file is emailed to you.
Step 2: Add your translations
Add your language translations directly to the Translated content column of the exported CSV file, and then save your changes. You don't need to modify the values in any of the other columns in the CSV file.
If you use a spreadsheet program to edit your CSV file, then ensure that your default delimiter is set to commas instead of semicolons. In some cases, HTML codes with semicolons are included in your CSV export file, which might cause the columns to render incorrectly in your spreadsheet program.
Step 3: Import your CSV file
After you export and edit your language translations CSV file, you can import it to your Shopify admin to update the translated content in your online store.
Steps:
- From your Shopify admin, go to Settings > Languages.
- Click Import.
- Click Add file and then navigate to your translations CSV file.
- Confirm whether you want to overwrite existing translations:
- If you want the translated language content in your CSV file to replace any existing translations, then select Overwrite any existing translations.
- If you want to import only the new translated content and not replace any existing translations, then deselect Overwrite any existing translations.
- Click Upload and continue.
- Review the Import language with a CSV information, and then click Import. If your CSV file contains errors, then the import is stopped, and the errors are listed on the Import language with a CSV page.
- A confirmation is emailed to you, which includes a list of any translated content that failed or was skipped.
Multi-language for developers
To help Shopify Partners offer a fully multi-language experience and localize app workflows, Shopify is launching a set of new platform capabilities for selling in multiple languages.
- Translations API:
- Access translatable resources through
TranslatableResourceType
enums.
- Access translatable resources through
- Localization best practices:
- Use `` to conditionally render content.
- Validate theme compatibility with Shopify's theme-check tool.
For detailed steps on theme localization or API integration, refer to Shopify's developer documentation.
Key translatable elements
Content Type | Resource Name (API) | Notes |
---|---|---|
Product Titles | PRODUCT | Field: title |
Navigation Menus | ONLINE_STORE_MENU | Type: LINK |
Theme Sections | ONLINE_STORE_THEME | Field: section.header.text |
Checkout Pages | CHECKOUT | Pre-translated in 33 languages |
Translated resource types and fields
For information about types of resources that are translatable, refer to the TranslatableResourceType
reference documentation.
Tags such as product tags, article tags, and blog tags can't be translated.
Translating checkout and email notifications
After you add and publish a language, the translated content is displayed in the checkout and in any email notifications sent to your customer. The checkout displays in the same language that a customer uses to browse your online store. The checkout has default translations for some languages, but you can customize any translated content using a compatible third-party translation app, or importing your own translations using CSV files.
If translations are available for an email notification, then a customer is automatically sent email notifications in the language that they placed their order in. You can edit a customer profile to change the language of the notifications that a customer receives.
Add or edit an email notification translation
You can add or edit email notification translations for the languages that you have added to your store using the Translate & Adapt app from Shopify.
Steps:
From your Shopify admin, go to Settings > Notifications.
Click the email notification that you want to translate.
Click Localize.
Add or edit the translations for your email notification in the editable fields in the Translate & Adapt app.
Click Save.
Preview email notifications
You can preview email notifications that you have translated. You need to save your notification translations before you can preview them.
Steps:
From your Shopify admin, go to Settings > Notifications.
Click the email notification that you want to preview.
Click Preview.
On the Preview page, click the language drop-down and then select the language that you want to preview.
Translations available for themes and checkout
The following languages have professional translations available for checkout, cookie banner, privacy policy, data sales opt-out page, and default content for themes built by Shopify:
- Chinese (Simplified)
- Chinese (Traditional)
- Croatian
- Czech
- Danish
- Dutch
- English
- Finnish
- French
- German
- Greek
- Hindi
- Hungarian
- Indonesian
- Italian
- Japanese
- Korean
- Lithuanian
- Malay
- Norwegian (Bokmål)
- Polish
- Portuguese (Brazil)
- Portuguese (Portugal)
- Romanian (Romania)
- Russian
- Slovak (Slovakia)
- Slovenian (Slovenia)
- Spanish
- Swedish
- Thai
- Turkish
- Vietnamese
Translation status
The following statuses can apply to translated content:
- Translated: The content has translations available.
- Outdated: The content in the default language has been updated, but the translations don't reflect any updates.
- Untranslated: There are no translations for this content type.
Translations in apps
If you use third-party apps, then it's possible that those apps don't support selling in multiple languages by default. To check whether an app supports multiple languages, contact the app's developer.
Frequently asked questions about localization and translations
Can I use multiple currencies with languages? Yes, you can assign currencies to specific markets through Settings > Markets > Currencies in your Shopify admin.
How are translations maintained during theme updates? Custom translations persist, but outdated translations are flagged as needing review.
Do translated stores affect performance? No, Shopify serves translated content dynamically without duplicating store data.