Skip to content

Cross Localization for App Store: Optimize Metadata

Enlarged view
Cross Localization Cross Localization

For each App Store territory, Apple defines a “Primary” language. However, each territory also has several “Additional” languages.

Here’s what you need to know about Primary and Additional languages in the context of ASO and keywords metadata optimization:

  • Keyword Matching: Apple Search matches keywords from the metadata of your app’s product page to user search queries. If a user searches using a term from an “additional” language, and that term is in your metadata, your ad might be displayed to that user.
  • Optimizing Metadata for Additional Languages: Including keywords from both the “primary” and “additional” languages for a specific App Store territory can expand your app’s discoverability. It allows your app to cater to a wider demographic within that territory.
  • Understanding the Audience: Before integrating keywords from additional languages, it’s essential to grasp the demographics of the specific App Store territory. Recognize the predominant languages spoken and tailor your keywords accordingly.
  • Keyword Selection: When configuring an ASO, integrate keywords from both the primary and additional languages. This strategy can capture a broader audience segment. Continually assess the performance of each keyword to determine which ones yield the most conversions.
  • Localizing Ad Creative: If targeting keywords from an additional language, ensure your ad creatives are harmonious with speakers of that language. Aligning your ad content with the language can uplift the user experience and the possibility of them engaging with your ad.
  • Monitoring and Optimization: Regularly overseeing the performance of your ASO is pivotal. Identify keywords from additional languages that have high engagement and conversions. Modify bids and refine your keyword selection grounded on performance metrics.
  • Beware of Over-Optimization: Although targeting additional languages can be advantageous, it’s crucial not to dilute your app’s primary messaging. It’s vital to maintain the optimization and relevance of the primary language’s metadata.

Editor Input

Enlarged view
Editor input Editor input

Each input field contains several buttons:

  • Metadata Editor: Quick access to the metadata editor.
  • Bulk Metadata Editor: Quick access to the bulk metadata editor.
  • Translate: Translates text from the primary localization to the current language.
  • Reverse Translate: Translates the current text in the input field back to the base language set in your profile settings.
  • Show Differences: If the value differs from the last saved version, this button will show the difference.
  • Copy from Previous Version: Copies content from the last modified version.

For fields that affect search results in the App Store, such as Title, Subtitle, and Keywords, additional keyword analysis features are available:

  • Keyword Breakdown: The entered text is automatically split into individual keywords.
  • Display Metrics: Relevant metrics for each keyword are shown, including:
    • Current App Rating: The current rating of your app for this keyword.
    • Search Ads Popularity (SAP): The popularity of the keyword in Apple Search Ads—hovering over it shows the date of the last update.
    • Difficulty: The competitiveness of the keyword.
    • Total Number of Apps: The number of apps using this keyword.
    • Suggestions: The number of suggestions for this keyword in the App Store.
    • Keyword Management: Buttons to add or remove keywords from your keyword list.
    • Edit Field: Options to remove or add this keyword directly in the current input field.

For the Keywords field, Keyword Recommendations are also available, based on:

  • Current App Keywords: Keywords for which your app already has search queries.
  • User’s Keyword List: Keywords from your personalized keyword list.
  • Competitor Apps: Keywords used by competitor apps.

Each input field has a dynamic border that reflects the current state, unless disabled in the page Settings:

  • Blue: Indicates that the field has been changed.
  • Red: Displays when there is no data in the field.
  • Gray: Shows when the field has no changes and is filled.

Additionally, each input field displays the character count and maximum field length, helping to ensure compliance with App Store requirements.

Settings

Changes indicator

Before each input field, a vertical colored stripe is displayed as a status indicator.

By default, the indicators are visible, but they can be turned off using the “Hide change indicators” setting.

Color scheme:

  • Red: field is not filled
  • Blue: field has been changed
  • Gray: field has not been changed

Keywords Settings

Enlarged view
Keywords Settings Keywords Settings

Settings allow you to hide or show certain features such as keyword suggestions, keyword parameters (SAP, difficulty, total apps, current app rank), and validation messages.

Localization Providers

Enlarged view
Keywords Settings Keywords Settings

You can configure the translation provider of your choice (Google Translate, DeepL, Chat GPT, Claude AI) in the ASO.dev settings and also set stop words for translations.

Google Translate

Google Translate is available by default as a free translation provider in ASO.dev.

If you don’t have API keys for other providers, Google Translate will be used automatically.

DeepL, Chat GPT, Claude AI

DeepL, Chat GPT, and Claude AI are paid translation providers that offer more accurate and high-quality translations compared to Google Translate.

These providers use advanced technologies and AI models to ensure a high level of translation accuracy.

To use these providers, you need to obtain an API key, enter it in the settings, and, if necessary, select a model or specify additional parameters.

How to Set the Priority of Translation Providers

You can change the priority of translation providers by dragging their cards in the list.

The order determines which provider will be used first when translating content.

Disabling a Translation Provider

To disable a specific translation provider, simply toggle the switch to the “Off” position.

This provider will no longer be used for content translation.

You can also change the order of providers to adjust their priority.

Excluding Specific Keywords or Phrases from Translation

If you need to exclude certain words or phrases from translation, such as brand names, follow these steps:

  • Enter the keyword or phrase you want to exclude from translation.
  • Click the “Exclude” button.

Excluded words or phrases will remain in their original language and will not be altered during translation.
This is especially useful for maintaining consistency with brand names, technical terms, and other important phrases.

Leveraging both primary and additional languages in ASO and keyword metadata optimization can amplify an app’s visibility in the App Store.

Cross Localization feature provides an interactive table that displays metrics for different localizations, validating their performance and helping you optimize your app for various regions and languages.

Complete list of all variations:

ISO codeISO codeCountry or regionDefault LanguageAdditional Supported Language(s)
AFAFGAfghanistanEnglish (U.K.): EN_GB
ALALBAlbaniaEnglish (U.K.): EN_GB
DZDZAAlgeriaEnglish (U.K.): EN_GBArabic: AR
French: FR
AOAGOAngolaEnglish (U.K.): EN_GB
AIAIAAnguillaEnglish (U.K.): EN_GB
AGATGAntigua and BarbudaEnglish (U.K.): EN_GB
AGARGArgentinaSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
AMARMArmeniaEnglish (U.K.): EN_GB
AUAUSAustraliaEnglish (Australia): EN_AUEnglish (U.K.): EN_GB
ATAUTAustriaGerman: DE_DEEnglish (U.K.): EN_GB
AZAZEAzerbaijanEnglish (U.K.): EN_GB
BSBHSBahamasEnglish (U.K.): EN_GB
BHBHRBahrainEnglish (U.K.): EN_GBArabic: AR
BBBRBBarbadosEnglish (U.K.): EN_GB
BYBLRBelarusEnglish (U.K.): EN_GB
BEBELBelgiumEnglish (U.K.): EN_GBDutch: NL_NL
French: FR
BZBLZBelizeEnglish (U.K.): EN_GBSpanish (Mexico): ES_MX
BJBENBeninEnglish (U.K.): EN_GBFrench: FR
BMBMUBermudaEnglish (U.K.): EN_GB
BTBTNBhutanEnglish (U.K.): EN_GB
BOBOLBoliviaSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
BABIHBosnia and HerzegovinaEnglish (U.K.): EN_GBCroatian: HR
BWBWABotswanaEnglish (U.K.): EN_GB
BRBRABrazilPortuguese (Brazil): PT_BREnglish (U.K.): EN_GB
VGVGBBritish Virgin IslandsEnglish (U.K.): EN_GB
BNBRNBruneiEnglish (U.K.): EN_GB
BGBGRBulgariaEnglish (U.K.): EN_GB
BFBFABurkina FasoEnglish (U.K.): EN_GBFrench: FR
KHKHMCambodiaEnglish (U.K.): EN_GBFrench: FR
CMCMRCameroonEnglish (U.K.): EN_GBFrench: FR
CACANCanadaEnglish (Canada): EN_CAFrench (Canada): FR_CA
CVCPVCape VerdeEnglish (U.K.): EN_GB
KYCYMCayman IslandsEnglish (U.K.): EN_GB
TDTCDChadEnglish (U.K.): EN_GBFrench: FR
CLCHLChileSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
CNCHNChina mainlandSimplified Chinese: ZH_HANSEnglish (U.K.): EN_GB
COCOLColombiaSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
CDCODCongo
Democratic Republic
English (U.K.): EN_GBFrench: FR
CGCOGCongo
Republic
English (U.K.): EN_GBFrench: FR
CRCRICosta RicaSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
CICIVCote d’IvoireFrench: FREnglish (U.K.): EN_GB
HRHRVCroatiaEnglish (U.K.): EN_GBCroatian: HR
CYCYPCyprusEnglish (U.K.): EN_GBGreek: EL
Turkish: TR
CZCZECzech RepublicEnglish (U.K.): EN_GBCzech: CS
DKDNKDenmarkEnglish (U.K.): EN_GBDanish: DA
DMDMADominicaEnglish (U.K.): EN_GB
DODOMDominican RepublicSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
ECECUEcuadorSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
EGEGYEgyptEnglish (U.K.): EN_GBArabic: AR
French: FR
SVSLVEl SalvadorSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
EEESTEstoniaEnglish (U.K.): EN_GB
SZSWZEswatiniEnglish (U.K.): EN_GB
FJFJIFijiEnglish (U.K.): EN_GB
FIFINFinlandEnglish (U.K.): EN_GBFinnish: FI
FRFRAFranceFrench: FREnglish (U.K.): EN_GB
GAGABGabonEnglish (U.K.): EN_GBFrench: FR
GMGMBGambiaEnglish (U.K.): EN_GB
GEGEOGeorgiaEnglish (U.K.): EN_GB
DEDEUGermanyGerman: DE_DEEnglish (U.K.): EN_GB
GHGHAGhanaEnglish (U.K.): EN_GB
GRGRCGreeceGreek: ELEnglish (U.K.): EN_GB
GDGRDGrenadaEnglish (U.K.): EN_GB
GTGTMGuatemalaSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
GWGNBGuinea-BissauEnglish (U.K.): EN_GBFrench: FR
GYGUYGuyanaEnglish (U.K.): EN_GBFrench: FR
HNHNDHondurasSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
HKHKGHong KongChinese (Traditional): ZH_HANTEnglish (U.K.): EN_GB
HUHUNHungaryEnglish (U.K.): EN_GBHungarian: HU
ISISLIcelandEnglish (U.K.): EN_GB
ININDIndiaEnglish (U.K.): EN_GBHindi: HI
IDIDNIndonesiaEnglish (U.K.): EN_GBIndonesian: ID
IQIRQIraqEnglish (U.K.): EN_GBArabic: AR
IEIRLIrelandEnglish (U.K.): EN_GB
ILISRIsraelEnglish (U.K.): EN_GBHebrew: HE
ITITAItalyItalian: ITEnglish (U.K.): EN_GB
JMJAMJamaicaEnglish (U.K.): EN_GB
JPJPNJapanJapanese: JAEnglish (U.S.): EN_US
JOJORJordanEnglish (U.K.): EN_GBArabic: AR
KZKAZKazakhstanEnglish (U.K.): EN_GBEnglish (U.S.): EN_US
KEKENKenyaEnglish (U.K.): EN_GB
XKXKSKosovoEnglish (U.K.): EN_GB
KWKWTKuwaitEnglish (U.K.): EN_GBArabic: AR
KGKGZKyrgyzstanEnglish (U.K.): EN_GB
LALAOLaosEnglish (U.K.): EN_GBFrench: FR
LVLVALatviaEnglish (U.K.): EN_GB
LBLBNLebanonEnglish (U.K.): EN_GBArabic: AR
French: FR
LRLBRLiberiaEnglish (U.K.): EN_GB
LYLBYLibyaEnglish (U.K.): EN_GBArabic: AR
LTLTULithuaniaEnglish (U.K.): EN_GB
LULUXLuxembourgEnglish (U.K.): EN_GBFrench: FR
German: DE_DE
MOMACMacauChinese (Traditional): ZH_HANTEnglish (U.K.): EN_GB
MGMDGMadagascarEnglish (U.K.): EN_GBFrench: FR
MWMWIMalawiEnglish (U.K.): EN_GB
MYMYSMalaysiaEnglish (U.K.): EN_GBMalay: MS
MVMDVMaldivesEnglish (U.K.): EN_GB
MLMLIMaliEnglish (U.K.): EN_GBFrench: FR
MTMLTMaltaEnglish (U.K.): EN_GB
MRMRTMauritaniaEnglish (U.K.): EN_GBArabic: AR
French: FR
MUMUSMauritiusEnglish (U.K.): EN_GBFrench: FR
MXMEXMexicoSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
FMFSMMicronesiaEnglish (U.K.): EN_GB
MDMDAMoldovaEnglish (U.K.): EN_GB
MNMNGMongoliaEnglish (U.K.): EN_GB
MEMNEMontenegroEnglish (U.K.): EN_GBCroatian: HR
MSMSRMontserratEnglish (U.K.): EN_GB
MAMARMoroccoEnglish (U.K.): EN_GBArabic: AR
French: FR
MZMOZMozambiqueEnglish (U.K.): EN_GB
MMMMRMyanmarEnglish (U.K.): EN_GB
NANAMNamibiaEnglish (U.K.): EN_GB
NRNRUNauruEnglish (U.K.): EN_GB
NPNPLNepalEnglish (U.K.): EN_GB
NLNLDNetherlandsDutch: NL_NLEnglish (U.K.): EN_GB
NZNLZNew ZealandEnglish (U.K.): EN_GBEnglish (Australia): EN_AU
NINICNicaraguaSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
NENERNigerEnglish (U.K.): EN_GBFrench: FR
NGNGANigeriaEnglish (U.K.): EN_GB
MKMKDNorth MacedoniaEnglish (U.K.): EN_GB
KPPRKNorth KoreaKorean: KOEnglish (U.K.): EN_GB
NONORNorwayEnglish (U.K.): EN_GBNorwegian: NO
OMOMNOmanEnglish (U.K.): EN_GBArabic: AR
PKPAKPakistanEnglish (U.K.): EN_GB
PWPLWPalauEnglish (U.K.): EN_GB
PAPANPanamaSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
PGPNGPapua New GuineaEnglish (U.K.): EN_GB
PYPRYParaguaySpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
PEPERPeruSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
PHPHLPhilippinesEnglish (U.K.): EN_GB
PLPOLPolandEnglish (U.K.): EN_GBPolish: PL
PTPRTPortugalPortuguese (Portugal): PT_PTEnglish (U.K.): EN_GB
QAQATQatarEnglish (U.K.): EN_GBArabic: AR
KRKORRepublic of KoreaKorean: KOEnglish (U.K.): EN_GB
ROROURomaniaEnglish (U.K.): EN_GBRomanian: RO
RURUSRussiaRussian: RUEnglish (U.K.): EN_GB
Ukrainian: UK
RWRWARwandaEnglish (U.K.): EN_GBFrench: FR
STSTPSao Tome and PrincipeEnglish (U.K.): EN_GB
SASAUSaudi ArabiaEnglish (U.K.): EN_GBArabic: AR
SNSENSenegalEnglish (U.K.): EN_GBFrench: FR
RSSRBSerbiaEnglish (U.K.): EN_GBCroatian: HR
SCSYCSeychellesEnglish (U.K.): EN_GBFrench: FR
SLSLESierra LeoneEnglish (U.K.): EN_GB
SGSGPSingaporeEnglish (U.K.): EN_GBChinese (Simplified): ZH_HANS
SKSVKSlovakiaEnglish (U.K.): EN_GBSlovak: SK
SISVNSloveniaEnglish (U.K.): EN_GB
SBSLBSolomon IslandsEnglish (U.K.): EN_GB
ZAZAFSouth AfricaEnglish (U.K.): EN_GB
ESESPSpainSpanish (Spain): ES_ESCatalan: CA
English (U.K.): EN_GB
LKLKASri LankaEnglish (U.K.): EN_GB
KNKNASt. Kitts and NevisEnglish (U.K.): EN_GB
LCLCASt. LuciaEnglish (U.K.): EN_GB
VCVCTSt. Vincent and the GrenadinesEnglish (U.K.): EN_GB
SRSURSurinameEnglish (U.K.): EN_GBDutch: NL_NL
SESWESwedenSwedish: SVEnglish (U.K.): EN_GB
CHCHESwitzerlandGerman: DE_DEEnglish (U.K.): EN_GB
French: FR
Italian: IT
TWTWNTaiwanChinese (Traditional): ZH_HANTEnglish (U.K.): EN_GB
TJTJKTajikistanEnglish (U.K.): EN_GB
TZTZATanzaniaEnglish (U.K.): EN_GB
THTHAThailandEnglish (U.K.): EN_GBThai: TH
TOTONTongaEnglish (U.K.): EN_GB
TTTTOTrinidad and TobagoEnglish (U.K.): EN_GBFrench: FR
TNTUNTunisiaEnglish (U.K.): EN_GBArabic: AR
French: FR
TRTURTurkeyEnglish (U.K.): EN_GBTurkish: TR
TMTKMTurkmenistanEnglish (U.K.): EN_GB
TCTCATurks and Caicos IslandsEnglish (U.K.): EN_GB
UGUGAUgandaEnglish (U.K.): EN_GB
UAUKRUkraineRussian: RUEnglish (U.K.): EN_GB
Ukrainian: UK
AEAREUnited Arab EmiratesEnglish (U.K.): EN_GBArabic: AR
GBGBRUnited KingdomEnglish (U.K.): EN_GB
USUSAUnited StatesEnglish (U.S.): EN_USArabic: AR
Chinese (Simplified): ZH_HANS
Chinese (Traditional): ZH_HANT
French: FR
Korean: KO
Portuguese (Brazil): PT_BR
Russian: RU
Spanish (Mexico): ES_MX
Vietnamese: VI
UYURYUruguayEnglish (U.K.): EN_GBSpanish (Mexico): ES_MX
UZUZBUzbekistanEnglish (U.K.): EN_GB
VUVUTVanuatuEnglish (U.K.): EN_GBFrench: FR
VEVENVenezuelaSpanish (Mexico): ES_MXEnglish (U.K.): EN_GB
VNVNMVietnamEnglish (U.K.): EN_GBVietnamese: VI
YEYEMYemenEnglish (U.K.): EN_GBArabic: AR
ZMZMBZambiaEnglish (U.K.): EN_GB
ZWZWEZimbabweEnglish (U.K.): EN_GB