Managing custom translations in the Zendesk Bot

The new custom translations for the Zendesk Bot make it possible to combine automatic translations for all your flows and answers, while making sure that specific replies or words do not lose their context in a bad translations.

Managing custom translations in the Zendesk Bot

Zendesk always has had a deep support for languages in its platform. The Help Center supports translated variants of articles, the Agent Workspace can be translated to fit the language of the Agent, and macros, intents and triggers can be customized to detect and use to reply with the right language to end-users.

Traditionally most of the translations in Zendesk were either done manually (in the case of Help Center articles) or via Dynamic Content placeholders for forms, triggers and macros. Both these options offer you the ability to translate the content yourself with tight control over tone of voice and words used, with the downside that everything needs to be translated manually before it can be used as a translated variant.

One outlier of this has been the Zendesk Bot. Instead of offering the ability of adding your own translations, the bot launched with the convenience of automatic translations. This meant you could write your flow and articles in one language, and the bot takes care of offering that content in other, enabled, languages.

The upside of this approach is easy to measure. Built once, and make other locales available with the click of a button. The downside however is that you lose control over your translations.

Some system translations might lose context and tone of voice, and your brand or product names might get lost in translation. I've heard stories of Windows (the brand) get translated into literal translations of windows (as in doors and windows) when used in a bot. Similar, a famous retailer in Europe saw its French name being translated to crossroads. Not ideal.

My thanks for Knots.io for sponsoring this month's Internal Note newsletter.

Custom Translations

New in Zendesk Messaging is the ability to add manual translations to your bot flows. This allows you to overwrite the machine translation for any step or response of your bot with a fixed manual translation.

Managing languages in a conversation bot
What’s my plan? This functionality is part of AI agents. Conversation bots include language settings that allow you to specify a default language and let you configure them t…

Take a look at the flow below. It contains an English welcome message, and it's automated translation in Dutch and French

However, when reading those messages they don't feel right for me. With the new manual translations feature we can however add a specific reply for some languages, while keeping the rest of the bot and locales auto-translated:

When we have our French and Dutch customers talk to our bot now, we get custom translations for our welcome message, while the rest of the buttons and actions are still machine translated.

This becomes even more powerful when we dive into custom answers. These flows often contain very specific steps, and interface buttons or product names might be different in specific countries or languages. For example, in the flow below the second screenshot shows an automatically translated response of our reset password flow. The reply contains a rather clumsy inlog-ID translation for the English login ID.

This login ID would be better translated with the same term as the English version as we did in the last screenshot. We can dive into the flow builder and add a manual translation to our flow for the response as such:

Impact

This new option fixes a lot of issues customers' were seeing with the Zendesk Bot, and removes the need for workarounds around the lack of manual controls for translations.

I've seen customers add a brand per language with a unique bot per brand in order to add specific translations per country. Similarly I've seen customers that add a "What language do you speak" at the start of every flow, and then create a branch per locale.
All of these hacks can now be removed and replaced with the manual translations option for those languages.

One thing I really like about this flow that it's an option and you're not required to translate the entire bot, like you have to do in Ultimate's bot. Being able to trust the machine translations, and only dive into the settings for the few options where you want to add nuance or fix a translation is way less work and easily manageable.

There's one feature you currently loose though, and that's the Generate variants option for the basic bot behavior steps like the greeting and clarification steps. When you enable manual translations, the system will no longer generate a unique variant of your welcome message. This is understandable since the entire point of the manual translation is giving you control over what's send to the customer. But in the scenarios where you want to use the translations to fix a single word (brand name, button, product), it's a shame Zendesk AI can't just take the translated text as input to create variants in that locale.

Dynamic Content

One question this new feature prompted for me was: will this replace Dynamic Content? Dynamic Content is one of the oldest pieces of Zendesk still in use and its UI harkens back to the old Zendesk UI from ~10 years ago when Buddha's were still a thing.

Dynamic Content was never added to Messaging, doesn't show up in the Zendesk Bot, is not available to use in newer features like Content Blocks in Guide and honestly, feels like an old feature now.

Seeing this new manage translation feature makes me wonder: why don't we have this for fields and macros? Manual translations and placeholders were nice in a time when AI and LLMs weren't a thing yet, but not that Zendesk showed us what's possible for the bot, I want this everywhere!

Take a look at the layout below: we've got the ticket field editor in Admin Center, but added the translation features from the Zendesk Bot. You'd be able to auto-translate dropdown options and labels, or overwrite a specific labels' value with a custom translation. Would be nice to have no?

That being said, I understand that Zendesk Bot and Messaging are a clean slate for Zendesk to start building on. They don't need to worry about compatibility with active installations, there's no migration paths or a dozen years' of existing setups to handle. Messaging and the Zendesk Bot started three years ago as very basic solutions and gradually worked towards feature parity with the existing Chat features Zendesk already had, while taking the time to reinvent and reimagine how things like escalation, translation or "being online" work.

Similar to how Apple used iPadOS to reinvent file handling, multitasking and other productivity features, Zendesk seems to use Messaging to rebuild their feature stack on modern technology. With the big difference that where Apple still needs to proof iPadOS is a real platform to do work on, Zendesk already did that with Zendesk Bot. 🤖