We’ve been working on an update to our customer portal translation process recently, and I thought it would be useful to share a few tips and tricks. Translating your customer portal increases customer satisfaction and decreases support costs, so it’s really worth doing. Tricky terminology, UI limitations, and ongoing development mean there are some unique challenges. Never fear, follow my top tips on how to translate your customer portal and you will make your life a lot easier!
1. Take care with the terminology when you translate your customer portal
Your customer portal is probably packed with product and company-specific terminology. Getting this right is critical to your customer’s experience. What may seem obvious to you may not be to a translator who doesn’t know your products and services. You need a Terminology Database to manage your key terminology and make sure translators only use approved translations. By the way, your Terminology Database also drives consistency with translated support documentation and product descriptions, so it plays a key role in making sure your customer understands you.
2. Design extra space into your UI for translation expansion rate
The last thing your developers are thinking about is translation, and I guarantee they are going to get grumpy when you tell them they have to redesign buttons and menus to accommodate translations! Well, life is tough, and it’s better to build this into your UI design up-front. When you translate your customer portal, the number of characters will grow — this is known as the Expansion Rate. Even trickier, languages like German combine multiple words into one long word, which means you need even more space. “Product description”, for instance, is “Produktbeschreibung” in German!
Some UI challenges may be fairly simple to fix. For example, you can often make buttons and headings bigger without much difficulty. Others are harder, such as horizontal menus and embedded widgets. Bottom line: your developers need to allow more space in these areas, or you may struggle to find a suitable translation.
3. Review completed translations in-context before you go live
An in-context check of your translations is essential before you go live. The in-context check will identify:
- translations which don’t fit within the available space
- special characters (e.g. accents) which aren’t displaying correctly
- terminology which doesn’t work in-context
Someone who knows your business well and is a native speaker of the language is best-placed to complete the in-context check. Where that isn’t possible, your translation services partner can complete this step for you.
4. Separate translatable content into translation strings before you translate your customer portal
Translatable content has no place buried in code! Separate translatable content into translation strings so that’s it’s easy to find new strings to translate. Translation strings also make it easy to add new languages to your portal. This process makes sure you don’t accidentally leave content untranslated — not a good look!
Each string sits in a block which can contain attributes useful to the translator — for instance, context about where the text will appear. If the string has to fit in a limited space, you should add a maximum length attribute. Context information and maximum length must be visible to the translator while they are translating your strings.
5. Put your translation strings into a separate branch in your code repository
Your translation strings will ultimately appear throughout your repository branches, but it’s best practice to put them into their own static branch for the translation process. This static branch allows you to create a systematic translation workflow that only picks up strings once they are locked down and ready for translation. It also makes integration with your translation services partner (see point 6 below!) easier and more secure.
6. Connect your code repository with your translation management process
If you are regularly updating your customer portal, then you need to connect your code repository with your translation management workflow. We connect our GitHub repository with our own translation workflow and automatically identify new strings for translation in line with our monthly release schedule.The translated literals are automatically returned into the static branch in your code repository. It’s a simple, reliable process which takes the drama out of the translation process.
I hope that you found this short guide useful! Remember, customer portal translation can be tricky but get your process right and it will save you lots of time and money. Oh, and you’ll sleep better too!