TechnicalJanuary 22, 20257 min read

A Developer's Guide to App Store Connect Locales

Everything you need to know about App Store Connect's locale system, from language codes to regional variants.


The Locale System Explained

App Store Connect uses a specific locale system that can be confusing at first. Understanding how it works is essential for effective localization.

Each locale is identified by a code like en-US, de-DE, or zh-Hans. These codes follow a pattern: language code, followed by region or script identifier.

Language vs. Region

Some locales are language-only:

  • `ja` - Japanese
  • `ko` - Korean
  • `vi` - Vietnamese

Others specify regions:

  • `en-US` - English (United States)
  • `en-GB` - English (United Kingdom)
  • `en-AU` - English (Australia)

And some use script identifiers:

  • `zh-Hans` - Chinese (Simplified)
  • `zh-Hant` - Chinese (Traditional)

Why Regional Variants Matter

You might think "English is English"—but that's not true for App Store optimization.

A user in the UK searching for "colour picker" won't find your app if you only have US English with "color picker" in the keywords. Regional spelling, terminology, and even cultural references differ.

The same applies to Spanish (es-ES vs es-MX), Portuguese (pt-PT vs pt-BR), and French (fr-FR vs fr-CA).

The Complete Locale List

App Store Connect supports 40 locales:

European Languages:

  • English: en-US, en-GB, en-AU, en-CA
  • German: de-DE
  • French: fr-FR, fr-CA
  • Spanish: es-ES, es-MX
  • Italian: it
  • Dutch: nl-NL
  • Portuguese: pt-PT, pt-BR
  • Swedish: sv
  • Norwegian: no
  • Danish: da
  • Finnish: fi
  • Polish: pl
  • Turkish: tr
  • Czech: cs
  • Slovak: sk
  • Hungarian: hu
  • Romanian: ro
  • Ukrainian: uk
  • Croatian: hr
  • Greek: el
  • Hebrew: he
  • Russian: ru

Asian Languages:

  • Japanese: ja
  • Korean: ko
  • Chinese: zh-Hans, zh-Hant
  • Thai: th
  • Vietnamese: vi
  • Indonesian: id
  • Malay: ms

Other:

  • Arabic: ar-SA
  • Hindi: hi
  • Catalan: ca

Character Limits by Field

Every localizable field has character limits:

FieldLimit
App Name30 characters
Subtitle30 characters
Keywords100 characters
Promotional Text170 characters
Description4,000 characters
What's New4,000 characters

These limits apply regardless of language. But because character density varies by language, you'll find German descriptions hitting limits while Japanese versions have room to spare.

App-Level vs. Version-Level

This distinction trips up many developers:

App-Level Fields (persist across versions):

  • App Name
  • Subtitle
  • Privacy Policy URL

Version-Level Fields (specific to each release):

  • Description
  • Keywords
  • Promotional Text
  • What's New

When you submit a new version, you're editing version-level fields. App-level fields require a separate update.

Primary vs. Secondary Locales

Your primary locale is the default fallback. If a user's device is set to a language you haven't localized, they'll see your primary locale content.

Choose your primary locale strategically. For most developers, this is en-US, but if your main market is elsewhere, adjust accordingly.

Practical Tips

  • **Start with your analytics** - Check where your current users are located
  • **Consider revenue potential** - Some markets have higher average purchase values
  • **Group similar locales** - Update all English variants together, all Spanish variants together
  • **Test keyword performance** - Use App Store Connect's search ads to test keyword ideas before committing

Understanding the locale system is the foundation for effective App Store localization. Once you grasp how it works, the actual localization process becomes much clearer.

Ready to localize your app?

Start reaching international markets today with AI-powered localization.

Get Started Free