Internationalization is what lets a product be used by people in different countries. Perhaps the most visible form of internationalization can be seen when traveling abroad. If you’ve ever been in another country and seen an American chain restaurant in your host country, you’ve seen internationalization in action. Whether it’s a simple translation of a menu or an offering that’s entirely different from what you might find at home — Brazilian coxinhas at a São Paulo coffee shop instead of egg sandwiches — internationalization lets a product be enjoyed by a broader audience.

It’s more than simple translation, though, particularly when the product being internationalized is software. It’s a philosophy, and it’s the first step in helping a product deepen its reach.

What Is Internationalization (i18n)?

Broadly speaking, internationalization is the process of preparing a product to be used or sold in international markets.

In the context of software, which is our focus here, internationalization refers to developing software from the ground up in a way that eventually helps it be used as intended by people from different cultures who understand different foreign languages. Within the world of software developers, internationalization may also be called i18n (internationalization begins with the letter i, ends with the letter n, and has 18 letters between those two letters).

Key Takeaways:

  • Internationalization broadens the potential audience and scope of a product; here, we’re discussing internationalization in terms of software.
  • The internationalization process lays the groundwork for the step that lets a piece of software be used by people from different locales, a process known as localization.
  • In an increasingly global market, products that aren’t internationalized may lag behind.

Internationalization Explained

The internationalization process supports a piece of software in reaching more people by helping the software adapt to the needs of different locales. Instead of asking the people using the software to adapt their behavior or understanding, software developers can design their programs in a way that supports customization for different cultures.

Imagine a piece of software that was created with only people from the United States in mind. The software would be coded so that text would be read from left to right. Any reports it would generate would use the month-day-year standard (i.e., 7/4/1776 to denote July 4, 1776). Fields such as ZIP codes might allow numbers only, surname fields might have an 18-character limit and reject special characters such as hyphens. Privacy notices would adhere to US standards.

If that software were to be exported, local engineers may have to significantly reconfigure parts of the software for it to make sense to the new audience. People in Arabic nations would need any text sliders to be read from right to left; British people would need the postal code to include letters; people in Thailand would regularly run up against the character limit in the surname field — and most people around the world would need reports generated in the day-month-year style.

Internationalization mitigates these problems. When software developers work with internationalization in mind, the product is built to adapt to different audiences.

Internationalization vs. Localization

Internationalization lays the groundwork for software to be used appropriately in different cultures. Localization is what actually makes the software usable. It’s the process of adapting the software so that it makes sense in a given locale.

Think of it this way: A piece of software could, theoretically, be localized without internationalization. In practice, though, localization follows internationalization. An engineer could manually identify everything that needs to change within the software, then change each factor individually. They could change all date fields to be day-month-year instead of month-day-year, or could manually change all text sliders to be read from right to left instead of left to right. But without the internationalization process, that localization would be a lot more laborious, and the end result still might not be as usable as it could be.

Internationalization makes localization easier, because it means that software is designed with localization in mind. When software is internationalized, localization becomes more straightforward as companies begin expanding globally.

supply chain internationalization
Translation might be the most obvious face of internationalization, but it’s just one way that the globalization cosmos comes to life. Globalization is the concept; internationalization is the planning; localization is the process; and translation is just one end result of this chain of principles and actions.

The Value of Internationalization

Internationalization gives software potential to be more usable for a greater number of people, which can help overcome some of the challenges of international expansion. It’s an investment upfront that can pay off down the line by making a business more competitive across nations and different audiences.

Why Internationalize?

Let’s flip this question around: Why not internationalize? That is, given the choice between designing a product that has potential for global reach and a product that would require considerable resources to hit that same level of potential, why would a developer go for option B?

Remember, internationalization is different from localization. Developing a product from an internationalized mindset just means that it can easily become localized. The product itself may never leave its home shore. Internationalizing just leaves that door open.

Benefits of Internationalization

The internationalization process increases the potential of software by making it more usable. Specific benefits of internationalization can include:

  • Transferability across locales: At its core, this is the top benefit of internationalization — the ability to reach more people across locations in a usable way.
  • Easier translation: When software developers account for different languages as they’re building a product, the end result won’t read like a bot translated it, with awkward syntax and seemingly random capitalization. It will read more like the product was built with the user’s language in mind — because, in a way, it was.
  • Better user experience: Simple translation might allow international users to use the base functionality of your product, but internationalization allows them to use it as intended without the added cognitive load of “translating” currencies and date formats.
  • Reduced support costs: Instead of working with multiple versions of the software, support teams can work with the base internationalized code. From there, it’s easier to plug-and-play into the localized versions. The same is true of product maintenance.
  • Stronger market competitiveness: In addition to being easily adapted to international markets, products that have been internationalized can reach those markets more quickly than competitors.
  • Improved risk management: Diversifying the locations where your software can take root helps protect your business from fluctuations in world markets.

Tips for Successful Internationalization

  1. Make sure all team members understand the goal. When people understand the intrinsic purpose for internationalization, the better they can measure their own success. Plus, the more that people understand the importance of internationalization, the likelier they may be to tie the process to broader organizational goals such as innovation and efficiency.
  2. Codify the internationalization process before you begin. The point of internationalization is to avoid an ad hoc approach to localization, so having a process is integral to achieving that goal. If you don’t start with organized source code, for example, you risk replicating the very problem that internationalization seeks to avoid.
  3. Remember that best practices are in continual evolution. The rapid-fire pace of change for technology necessitates frequent evaluations of KPIs. That’s standard for software in general, and with internationalization it’s complicated by cultural factors. Cultures might be slower to morph than technology, but they do change, and these shifts may affect how you approach internationalization.
  4. Work with localization specialists from the start. While internationalization and localization are different, the point of internationalization is to allow for localization. The sooner the experts can understand your product and its goals, the sooner they’ll be able to spot opportunities and blind spots. Localization specialists can also help you identify compliance and legal issues across potential markets, giving you a chance to proactively address those concerns.
  5. Allow time for pseudolocalization testing. The “dress rehearsal” for localization, pseudolocalization helps internationalization teams test whether their goals are met before handing off code to localization teams. It’s a chance for your team to troubleshoot its work, and skipping it could cost you time down the line.

What Can Go Wrong in Internationalization?

  • Poor timing. Plan internationalization too late and you’re forced to retrofit your product, wasting time and other resources. But internationalize too early and you risk missing critical problems in the core product that need addressing before it can be successfully internationalized.
  • Misallocating budget. You know you need to internationalize, so you secure resources in the development stage to do so. That’s great, but if the big picture doesn’t include other aspects of internationalization — say, promotion in the intended markets — your efforts could be for naught.
  • Poor consideration of global risk. Expanding into global markets brings risk along with reward. Political instability, corruption, civil unrest, currency fluctuations — all of these have potential to thwart your internationalization and localization plans.
  • A misunderstanding of the essence of internationalization. It’s more than translation. It’s more than design. It’s more than cultural nuance, and it’s more than code. It’s all of these factors and more, and if your team has tunnel vision about what internationalization means, it will show in your product.

Internationalization Examples

Places where developers would code and consider internationalization include:

  • Multiple languages: Developers externalize all user interface (UI) text, messages, and labels into resource files that can be translated into different languages, using placeholders that reference these external files instead of hardcoding text.
  • Bi-Directional (BiDi) language support: Some languages, like Arabic and Hebrew, are written right-to-left (RTL), and internationalization involves ensuring the UI supports both left-to-right (LTR) and RTL text directions.
  • Number and current formatting: Different regions display numbers, currencies, and percentages differently across regions, such as using commas vs. periods in prices. Internationalization requires developers to implement locale-sensitive formatting for these.
  • Date and time formats: Various regions represent dates and times in different formats, and internationalization makes sure that date and time formats are displayed according to the appropriate locale, based on the user. Text length, to accommodate for character space of foreign languages in translation.
  • Unicode (UTF-8) support: Non-Latin scripts such Japanese, Chinese, and Cyrillic require different character sets, and developers ensure that the software uses UTF-8 encoding to support multilingual characters.

NetSuite Is the Platform for Global Business

NetSuite helps companies develop business processes that are consistent across even complex multisubsidiary organizations — a bedrock of internationalization well beyond software development. Currency conversions and fluctuations, tax guidelines, regulatory requirements: All of these become more manageable with the aid of NetSuite ERP.

How to Select the Right ERP for You

In an increasingly global business world, organizations that sequester themselves will fall behind. Building your products from the ground up with the right tools and the right partners will help you stay at the fore of cross-cultural connections — and cross-cultural opportunities.
Start tracking your success(opens in a new tab)
thumbnail cro

Internationalization FAQs

What are the reasons for internationalization?

An organization may choose to internationalize its products to create the potential for global reach and thus global profit; to be more accessible to people with varying needs; to develop a better user experience across the board; to reduce back-end costs incurred by retrofitting products to local markets; to reduce maintenance costs; to remain competitive; and more.

What is the difference between internationalization and globalization?

Globalization is the strategy an organization pursues to create paths for a product to reach new, global markets. Internationalization is the process of building those products so that they will be able to effectively reach those markets. Just as internationalization precedes localization, globalization precedes internationalization.

Why is it called i18n?

Internationalization is often referred to in the software world as i18n. This is a numeronym, or number-based “word,” and it refers to the number of letters in the word internationalization. The word begins with the letter i and ends with the letter n, and there are 18 letters between those two letters: i18n.