#1,112 – Internationalization vs. Localization

Internationalization and localization both deal with adapting software to run as expected under a variety of different languages and/or geographic regions.

Internationalization, typically abbreviated as “i18n”, is the process of making changes to an application so that it could potentially later be adapted to one or more languages or regions.


  • Encompasses the things that you do just once, rather than once per target language/region
  • Must be done before localization
  • Includes activities like
    • Storing strings as Unicode
    • Being aware of regional settings when converting between numeric data and strings
    • Moving localizable resources into “satellite assemblies”
    • Removing hard-code constraints for certain UI elements

Localization, typically abbreviated as “l10n”, is the process of adapting an application for a specific language or region.


  • Is done once for each targeted language/region
  • Includes activities like
    • Translating strings for a particular language
    • Adjusting UI, as needed, to fit translated elements