Structure Your App for Localization
Internationalization, the process of structuring your app’s code and UI for localization, is a fundamental first step in building apps for a global audience. With Apple’s powerful tools and technologies, including Xcode, Foundation APIs, Auto Layout, and Unicode support, it’s easy to prepare your apps to support multiple languages and regions, even before you know which languages you’d like to add.
Use Foundation APIs to correctly express user-visible or dynamically-generated values, such as dates, lengths, weights, prices, and currency symbols, across different locales. Ensure your app accepts user-generated text in any language and in multiple languages at once, independent of the user interface language. This allows app content to appear in the user’s preferred language and format. SwiftUI makes it easy to create localized apps. User-visible text is automatically extracted by Xcode and default layout behaviors are localization-ready. You can also take advantage of Auto Layout to automatically adjust the dimensions and layouts of views, extensive Unicode support to work with text from any language, the powerful text handling technologies of Cocoa and Cocoa Touch to display, lay out, and edit text in many languages, and much more.
With iOS and iPadOS, users can select their preferred language for your app independent of their device language, making it easy for multilingual users to switch between languages in your app. On macOS, users can set the language of an app in the Language & Region section of System Preferences.
Prepare for a Global Audience
Investigate Market Factors
Market-specific demographics, such as population, language, and purchasing power, can help you better understand areas that might have an affinity or need for your app. Every market has its own preferences for the types of apps or categories customers most enjoy. For example, games are popular worldwide, however strategy games may be more popular in a particular region. Consider selecting markets with similar attributes to those in which you have already established success, such as strong app downloads, sales, usage, or retention metrics, as this may make for easier growth. When selecting a market, assess how your app might fit in and how its value and functionality aligns with that market’s needs. You may even identify a need in the market that is not yet filled, allowing you to bring unique value to users with your app.
Use App Analytics To Determine Potential Markets
If you offer your app worldwide but haven’t localized for particular regions, you can look at key performance metrics, such as Product Page Views, App Units, Sales, and Active Devices, filtered by territory. This can help you determine if your app is attracting users in a particular territory that might benefit from localization. For example, if your app is primarily in English and you see lower than average retention or Sessions per Active Device in Germany, you might consider adding German language support. Keep in mind that some markets may have greater proficiency with your app’s primary language, while others may require more significant localization work. Usage data such as active devices, sessions, and retention include only users who have agreed to share their diagnostics and usage information with you.
Consider Local Culture and Customs
While your app and product page should each provide a consistent experience across all markets, it’s sometimes valuable to refine certain elements for cultural relevance. For example, you might try incorporating market-specific content or cultural moments, such as special holiday content or regional art styles. You may want to consider any local policies and market regulations, as well as any political or religious sensitivities, to increase the likelihood that your app is well received.
Localize Your App
Translate User-Visible Content
Audiovisual media. You can also provide localized support for audiovisual media in your app using AVKit and AVFoundation. These frameworks provide built-in support for easily presenting subtitles and closed captions, and for selecting alternative audio and video tracks.
Localization services. If choosing an external localization service to help translate content, find out if they specialize in localizing for particular languages, cultures, or categories, and confirm the levels of quality assurance they provide. Providing the service with context about your app and content can help increase efficiency and minimize translation errors. Consider creating a guide with important details — for example, a playbook with character names and personalities, explanations of jokes or humor, a glossary of frequently used terms, and screenshots that show where the translations will be used. Avoid machine translation as your only translation method, since this can lead to inaccurate and low-quality translation because it does not account for context, cultural sensitivities or language nuances. For example, the “book” button in a hotel app might be incorrectly translated to be “novel” rather than “reserve”.
Test Your Localization
Configure test plans in Xcode to easily run tests with different settings and define your testing variants in one place. This helps flag any instances of clipping, truncation, layout overlapping, or issues with right-to-left formatting for the devices and languages you support. You can use the Localization Screenshots feature to generate localized screenshots from successful tests and export these screenshots for use in tutorials, marketing materials, or your App Store product page. Once your app is localized, use TestFlight to share your app with a group of users in the market to get feedback and gather opportunities for improvement.
Prepare for Launch
Adapt Your Marketing Strategy
When launching your app in a new market, adapt your marketing strategy to the region to help your audience easily learn about your app and the value it provides. Research which social networks or other channels are most popular with local audiences, as these may vary significantly across markets, and use them to spread the word about your app. Localize any materials you use in your marketing and user acquisition efforts, such as screenshots, banners, and advertisements.
App Store badges. Use the Download on the App Store badge in your communications as a clear call to action to download your app. Localized badges are available to let your international audience know that your app is tailored for them. Download badges from the App Store Marketing Guidelines.
App Store marketing tools. Generate short links or embeddable code that lead to your App Store product page and display your app icon, a QR code, or an App Store badge. You can also create custom marketing assets — such as banners and images — and add preset messages in multiple languages to promote your apps in your regional advertising efforts. View App Store marketing tools.
Search Ads. You can promote your app in more places on the App Store with Apple Search Ads, in 61 regions. Be seen before customers search with ads on the Search tab and engage with customers at the moment they search with ads at the top of relevant search results. See Search Ads to learn more and read developer success stories.
Use App Analytics in App Store Connect to find out how customers discover and engage with your app, and filter this data by the territories in which you’ve expanded. See how many users discover your app while searching or browsing on the App Store and measure the percentage of views that result in a first-time download. Find out if users continue to use your app, and see the number of installations, sessions, and active devices. Compare this data to that of other markets where your app has been available longer. You may find you need to adjust your marketing strategy or better localize your app to improve performance. Once you’ve found success in your chosen markets, you can identify new markets and add additional localizations to provide a great user experience for even more customers.
Find tools, documentation, and resources you need to localize your app and product page.