You're reading for free via Ben Davies-Romano's Friend Link. Become a member to access the best of Medium.
Member-only story
How to write string descriptions to improve your product’s localised UX
Provide your translators with the context to find the best words in each language.
A few years (*cough 15 years shhh cough*) ago, one of my main freelance gigs was translation with a focus on product copy. Clients would send over a spreadsheet with strings, and I would… spend hours trying to find those strings in their apps to get enough context to find the right words.

So imagine my delight when one day, I received a spreadsheet not just with strings, but with screenshots and notes about the purpose of each string. It didn’t only save me hours, but it gave me much more confidence that my English translations were appropriate.
Context is key in ensuring we’re not just translating the individual words, but rather the UX as a whole. Without context, all that hard work your whole product team puts into creating a superb product is flushed down the toilet for any users who don’t speak English. To say that’s a waste is an understatement!
Fast forward to now, and one of my responsibilities as a content designer is working with translators to localise our product copy. And since that delightful spreadsheet, there’s a lot more info out there on providing string descriptions to give context. Indeed, most string and translation management systems have fields specifically to provide context now.
Here, I’ll share what I’ve found useful to include as context for strings to ensure translators can do the best job possible, and I’ll provide a template for a sheet at the end to build up your base of strings and descriptions for localisation in case like me, you don’t have access to a fancy TMS. Let’s go! 🌈
UI components and screenshots
It’s a basic one — give your translators a screenshot of the UI! As much as you should include character limits and other details about how the text will be implemented, a screenshot speaks a thousand words.
Even better, give your translators access to your Figma file and let them translate directly there and then copy and paste their solutions into your sheet or TMS! If that’s not possible, a screenshot suffices:

As you can see in this example, I’ve highlighted the string in question just to make it extra clear.
I’ve also included a brief description of which UI component this is, so here, it’s a description. This can help translators ensure they approach the same kinds of components consistently, e.g. so all buttons are phrased as verbs in the imperative.
When will the user see this string?
Where in the user flow does the string in question appear? Is it part of an error message, or an empty state? What is the sequence of actions that leads to the user reading this? What comes after? What’s the user’s current Job To Be Done?
All of these details can influence not only what we communicate, but how we communicate. Yes, the English text does this too, but now, as the translator, I understand the rationale for the words chosen for the English text, and I may make decisions to communicate a little differently in my language depending on the context to fully fit.
For example, in the empty state from the example shown above, I might include the following details:
Empty state on Tickets screen. Shown when a user has signed in, but there are no tickets to display that been purchases associated with their email address.
So, I’ve explained what kind of message this is, and why the user is seeing it.
What’s the purpose of the string?
In UX copy, every string has a very clear purpose. So, why not be crystal clear about what this purpose is with your translators?
Even better — you can try out “acceptance criteria” to very precisely define what each string must communicate and accomplish, especially if it’s a trickier string that’s critical in the user flow. Check out my advice on using acceptance criteria for UX copy. (Self-plug, shameless, I know.)
Again, this will give translators a very clear way to evaluate whether or not their translations are fitting — and it’s perfect for proofreaders to use as a reference too.
Additionally, if you ever get reports of issues related to translations, even if you can’t speak the language, if you know where in the flow the issue was, you can look up the strings, and see if the feedback relates to the purpose not being achieved. If so, it’s a lot smoother to improve those strings and address the feedback, much more so than just sending over a bunch of strings and saying “pls make these better 🥺”.

How should it be communicated?
We’ve covered the where and the what. How about the how? (That’s quite a sentence, isn’t it.)
By that, I mean how are we addressing the user here? What tone are we using? Are we being super playful and encouraging? Or are we keeping things straightforward and concise?
It goes without saying that tone can HUGELY impact how something is communicated.
For example. if I want to translate the word “smile” in German, I would probably just say “lächeln”. If I want to translate the word “smile” in a delightful, upbeat and slightly marvellous manner to actually make the reader smile, I might instead go with “grinsen wie einen Honigkuchenpferd”, which means “to grin like a honey-cake-horse”.
What I’m saying is that without that additional detail on tone, your product may well be devoid of honey-cake-horses forever, and that’s a very sad thing. 😢

Any technical limits
This one’s simple: include any limitations! For example:
- What’s the character count? You can mention the number of lines — it’s easier to visualise with a screenshot, but it’s not the same as character count. And remember, characters in non-latin script languages may take up more room soooo… be cautious with your count.
- Are there any linebreaks that should be included? Ask your translators to include these so you don’t accidentally split words or phrases awkwardly.
- Will the text be formatted in any specific way, e.g. bold, italics, in quotation marks?
- Will there be any embedded links? If so, ask the translators to underline the part of their translation that should be linked.
- Should there be any dynamic text variables included, e.g. references to a user’s inputted name? Mention what these are and how the translators should reference them in their solutions.
Just a selection of questions, there are more. If in doubt, include it!
Any other notes
Yep, we have a “miscellaneous” category here. Is there anything else to mention? Trust me when I say there almost always is. To give a few examples:
- Does the text include any “set terminology” or product names? Point these out, and ideally, link to a glossary or include how these are translated into other languages if you have that to hand. If it’s a new term that’s going to need to be consistently translated, ask your translator to consider this and provide a recommendation for the term for you to add to your glossary or termbase.
- Are there synonyms or alternatives that may work for a string? Point them out! These alternatives may be easier to translate. For example, if you have a button labelled “Try again”, but it refreshes the page, you could say that “Refresh” is also fine.
- Is the string in English used in multiple different places? Super, the translator needs to know that. And you should also include those other places so that if a different solution is needed somewhere for a language, they can already let you know.
Check out my template with examples
If you don’t have a fancy TMS and you’re in spreadsheets, #solidarity. I’ve prepared a template aligning with all these details in Google Sheets, along with a couple of lines of examples. Feel free to make a copy if it’s useful.
If you do have a TMS, check out if there’s a place for contexts and screenshots, and add the details. If there isn’t, consider exporting strings to a sheet to add context too for your translators.
And just a note, because I know what you’re thinking: yes, this does take a fair amount of time. However, it can have an ENORMOUS impact on your non-English UX. Poor quality localisations can not only make your UX tricky to use, but it can cause churn, impact your brand perception negatively, and prevent your business from growing abroad and your company’s bottom line. And I’m not just talking a little bit here.
So YES, it’s more than worth the time. Build it into your product development processes. If you have a huge base of strings, teach your team how to write good string context, and make a day out of it. Listen to some music in the languages your product is available in. Order food from the different countries. Make an event of it!
And lastly, check out the following pieces for some other perspectives, and share your thoughts in the comments:
The Importance of Context in Localization: Best Practices for Accurate Translations from Locize.
Tips on Providing Context for Translation from Transifex.
Ben Davies-Romano has a decade of product and UX experience, helping companies develop experiment-led cultures to create valuable and meaningful digital experiences. They’re the Founder at Tech Outcasts, a company building a community for individuals looking for their tribe in tech in addition to premium consultancy and online courses.