For indie app developers

How to localize an App Store listing

To localize an App Store listing, translate the app name, subtitle or short description, full description, keyword field, and screenshots into each target language, then enter every translation into that language's own metadata slot in App Store Connect or Google Play Console rather than editing one shared listing.

No credit cardFree tier with 200 AI creditsCancel anytime

39
App Store locales supported
86
Google Play locales supported
5
Listing fields per locale
The short answer

Both stores index and display metadata per locale, so a shopper only sees a translated product page if a translation exists for their exact locale code. On the App Store, anything left blank falls back to your app's primary language. On Google Play, a shopper can choose to view an automated translation instead of the untranslated default. Forvibe's ASO Agent finds the markets where an App Store listing has no local language, translates it with a keyword field built from what that market searches, and writes it into the version being prepared once you approve, while its AI localization tool translates and publishes on demand for both stores. The underlying job is the same whether a person or an AI does it: pick which locales matter, translate every field the store actually indexes, and keep each one current as the app changes.

The symptoms of an unlocalized or badly localized listing

One storefront converts noticeably better than a similar one right next to it, even though both product pages are marked as translated.

Native speakers flag the copy as machine translated: grammatically correct, but stiff or oddly formal, not how a real person in that market would phrase it.

The keyword field or short description was translated word for word from the English original, so it no longer contains the terms people in that market actually search for.

How App Store Connect and Google Play Console handle locales

App Store Connect and Google Play Console store each language as a separate, independently edited listing. Skip a locale and the store fills the gap for you, not with a translation you control.

Per-locale storage
Each language variant gets its own name, subtitle, description, keywords, and screenshots, addressed by a locale shortcode such as en-US.
App Store coverage
Forvibe supports 39 App Store locale codes; skip one and that locale falls back to your app's primary language.
Google Play coverage
Forvibe supports 86 Google Play locale codes; skip one and a shopper can view an automated translation instead.
No cross-locale carryover
Each locale is edited and reviewed independently in both consoles, so nothing you write in one carries over to another.
Read the full explanation

App Store Connect stores metadata as a set of per-locale localizations: each language variant gets its own name, subtitle, description, keywords, and screenshots, addressed by a locale shortcode such as en-US or ja, the scheme Apple documents for managing metadata by locale. Forvibe currently supports 39 App Store locale codes for this metadata, and if you don't add a localization for a given locale, the store falls back to your app's primary language for anyone browsing in it. Google Play Console works the same way in principle: Forvibe currently supports 86 Google Play locale codes for store listing translations, and for any locale you skip, a shopper can choose to view an automated translation of the listing instead of your default language version. In both consoles, each locale is edited and reviewed independently. Nothing you write in one locale carries over to another.

Locale coverage by store

StoreLocalesWhere metadata is set
App Store39 codes Forvibe supportsApp Store Connect, inside each version's localized metadata
Google Play86 codes Forvibe supportsGoogle Play Console, inside the store listing's translations

The sequence that covers what both stores index

  1. Decide which locales are worth it

    Start from where your downloads, impressions, or ad spend already concentrate, not from the full list of locales a store supports. A handful of well-translated locales outperforms a long list of thin ones.

  2. List every field the store actually indexes

    That's the name, subtitle or short description, full description, and keyword field (App Store) or description text (Google Play). Screenshot overlay text counts too if it carries words a shopper reads.

  3. Translate the keyword field as a list, not a sentence

    The App Store keyword field is a set of individual search terms, so it needs term by term research in the target language. A literal translation of the English keyword string usually wastes most of its characters.

  4. Enter each translation into its own locale slot

    In App Store Connect, add a localization for each target locale under the app version and fill every field. In Google Play Console, add a translation for each language under the store listing.

  5. Check what a native speaker actually sees

    Preview or view the live listing in the target region, or have someone who speaks the language read it, before you consider that locale finished.

  6. Or let the ASO Agent find the gaps and fill them

    Forvibe's ASO Agent checks which of your markets have no App Store listing in their language, translates the listing with a keyword field packed from that market's own searches, and writes it into the version being prepared after your approval. For Google Play, or any locale on demand, the AI localization tool translates and publishes to both consoles. Screenshot overlay text is Screenshot Studio's job, not this step's.

How the two approaches compare

Doing it by hand
Doing it in Forvibe

Finding the missing locales

Compare the countries downloads come from against the locales already published

The ASO Agent flags markets with no App Store listing in their language and proposes a translation

Keyword field translation

Manual research per language, or a literal translation that misses local search terms

Translated as a term list for each locale, not as a literal sentence translation

Locale coverage

Usually limited to a handful of locales a team can realistically manage by hand

Every field can be generated for any of the supported locales; you choose which to publish

Publishing

Copy and paste into each locale slot in App Store Connect and Google Play Console

Written directly into both consoles for each locale you select

Keeping locales current

Requires remembering to revisit every locale on every content change

Re-run the translation for the fields that changed and republish

Questions, answered

Translate it. The keyword field is a list of search terms, not a sentence, and its job is to match what people in that market actually type. Reusing the English keyword field means the localized listing keeps competing for English queries and gains nothing in that locale's own search results.

Start with the locales where you already have downloads, impressions, or ad spend, even in an unlocalized state. That data shows demand already exists, so translating the listing removes friction that's currently costing you conversions there, instead of guessing at a new market cold.

Each locale you publish is indexed and shown separately: the App Store matches a shopper's device language and region to the closest localization you've added, and searches against the name, subtitle, and keyword field you entered for that specific locale. If you haven't published a given locale, App Store Connect falls back to your app's primary language for that shopper, and that fallback page is not optimized for local search terms.

It stays live and keeps showing whatever you last published: name, subtitle, description, keywords, and screenshots included. It doesn't revert to English and it isn't removed. It just drifts further from your current app with every release you don't translate, until the screenshots show an old UI or the description mentions a feature you've since renamed.

It's a reasonable starting point and better than an unlocalized listing, but raw machine translation on marketing copy tends to read stiffly to a native speaker, and it handles the keyword field particularly badly because it translates a comma-separated term list as if it were a sentence. Treat it as a first draft: worth publishing over nothing, worth reviewing before you consider the locale finished.
How Forvibe does this

AI Localization

Listings, screenshots and pages in every store language

See AI Localization

Ready to put this into practice?

Start free. When you're ready to grow, Forvibe's ASO Agent takes the ongoing App Store work off your hands.