Wooden map of the world with pins

Internationalisation and localisation tips

Globalisation, internationalisation, localisation and translation (GILT) are not just buzzwords. Six billion (80%) of the world's population and nearly one million (3.5%) of Australia's population find English a barrier.

Emmanuel Tissera

14 November 2019

4 minute read

Photo by Brett Zeck on Unsplash

This post is a follow-up to my recent presentation on internationalisation and localisation. Here are some of my top pro tips when internationalising and localising your website or software.

1. A blueprint

Always have a plan in place. Your blueprint should include the following as a minimum:

  • What is your default language? 
  • What happens to untranslated content?
  • Which URL format will you use? 

Document all the decisions related to these questions and make sure you follow them through.

2. Don't append

“I am ” + age + “ years old.”;
“මම ” + age + “ වයස අවුරුදු.”;

When translating text in code, never append. It doesn’t end well. For example, if you append this sentence to be “I am 18 years old”, the Sinhala translation will read “මම 18 වයස අවුරුදු.”. That’s not grammatically correct in Sinhala. If translated back to English it would read as “I 18 old years”.

2.1. Concatenate strings

string.Format(“I am {0} years old.”, age); 
string.Format(“මට වයස අවුරුදු {0} යි.”, age);

As in the example above, always concatenate strings. You might need to train your content editors. It will save you six months of rework. I know, I’ve been there.

3. Consider dates and times

  • Where is your server located?
  • Where are your clients located?
  • Daylight Savings Time (DST)?

When it comes to dates and times, think about the location of your server and the location of your clients. Always think of daylight savings. I’ve had passengers turning up to the airport an hour early due to a DST mistake. We were lucky they were early and not late.

4. Measurements

  • Metric
  • Imperial

Think of whether you use metric or imperial measurements. Just imagine getting 22 thousand pounds of jet fuel when you need 22 thousand kilograms of jet fuel. You definitely don’t want to run on less than half a tank of fuel up there in the sky. Read up on the Gimli Glider incident if you are curious.

5. Translation lengths differ

  • Views (1x)
  • 조회 (0.8x)
  • Visualizzazioni (3x)

Be aware that the lengths of translated text will differ. Over here the word “Views” is 100% in English, 80% in length in Korean and 300% in Italian. Does your design accommodate for these varying lengths? 

6. Compound nouns

  • Input processing features
  • Eingabeverarbeitungsfunktionen

The phrase - “Input processing features”  is three words in English. But in German, "Eingabeverarbeitungsfunktionen" is a compound noun which is 30 characters long. Will that text fit in your design?

7. Character width/horizontal space

  • Desktop
  • デスクトップ

Your design also needs to accommodate for horizontal space. The word desktop is seven characters in English. The translation in Japanese is six characters. But it takes more space due to the character width.

8. Character and line-height

Comparison of character line-heights in English and Thai

The next one is character and line-height. The line-height of the Thai translation with the glyphs is more than the English text for easy readability.

9. Abbreviations

  • FAQ
  • Perguntas freqüentes
  • Preguntas frecuentes

How about abbreviations? The word FAQ fits inside a small space in English. But in Portuguese and Spanish this is going to be pretty tricky.

10. RTL layouts

  • Mixed content is hard
  • Estimate generously

If you are supporting Arabic, Hebrew or Persian languages, you need to consider Right to Left (RTL) layouts. RTL layouts are hard, having mixed content in them is even harder. So estimate generously.

11. Translations

  • Automated
  • Translation memory

When you think of translations, don’t just leave it up to Google Translate or any other fully automated system. It’s just not going to cut it. You might even end up with a hilarious translation like "Eating carpet strictly prohibited".

At Emirates, I worked with a translation software called SDL Trados which uses translation memory. Any sentence or phrase which is translated is stored and reused the next time. This allowed for faster, cheaper translations for Emirates as the translation memory grew with time.

12. Data should be granular

  • Family name
  • Given name

When integrating with other systems such as frequent flyer programs or CRMs, remember to keep the data as granular as possible. 

But you also need to remember that some cultures do not even have a concept of a "last name". For example, I know of a person named Ali from the Sumatran island of Indonesia. He doesn’t have a "last name" or a "family name". 

Design your integrations to avoid these pitfalls.

13. Localise your images

Table setting with an alcoholic beverage

Table setting with an alcoholic beverage

Table setting with non-alcoholic beverages

Table setting with non-alcoholic beverages

Remember your images need to be localised too. Alcohol is fine for an Australian audience. But it would need to be fizzy drinks and apple juice for Saudi Arabia if you are culturally sensitive.

14. Production deployments

  • Global users
  • Zero-downtime deployments
  • Global traffic management

Outage windows for production deployments are a relic of the past. If you have an unexpected outage tonight, Sydneysiders may be asleep, but New Yorkers will be awake. So do think of your global audience. Global data centres, load-balanced servers or deployment slots should be your best friends.

15. Legalese

  • Local rules
  • Regulations

Don’t forget the legal aspect of localisation. Remember to follow the legal rules and regulations of your new locale. The best example is adhering to GDPR when you expand to the EU. 

16. Second language

  • uʍop ǝpᴉsdn ɥsᴉlƃuƎ
  • 13375PEek
  • Alas! Speak pirate

If you are not proficient in a second language but still want to test, you can do what the Facebook developers did. Use English upside down. You can also use leet speak or pirate speak to test out your localisation.


There are many more tips and tricks when internationalising and localising your website. Contact us at Luminary to learn more of our expertise in this area.

Want to tap into the expertise of an agency that’s been in operation since 1999?

Get in touch

Keep Reading

Want more? Here are some other blog posts you might be interested in.