To provide multiple language support, you can create dynamic content that can then be referenced via a placeholder in automations, macros, triggers and by many of the system generated messages such as those sent in email notifications when a user creates an account.
As an example of how dynamic content is used, the text of a message that you currently add to a macro can be replaced by a dynamic content placeholder.
This text:
If you forget your password, just click the "Help! I don't know what to enter here!" link on the login page.
Thanks and have a great day!
The MondoCam Support Team
Is replaced with this placeholder:
{{dc.password_help}}
When the macro is applied to a ticket, the content is inserted into the ticket. If you're already using Zendesk placeholders, you're already familiar with how this works. The difference between the Zendesk placeholders and dynamic content is that you define the content that is dynamically inserted into your business rules and communications with your customers.
Dynamic content is a combination of a default version of the text (typically in the same language as your default language) and variants for every other language that you support. In the example above, the default variant is in English. If your Zendesk also supports French and German, for example, you create variants for each of those languages. Then, based on the end-user's language, the appropriate variant is automatically used when the dynamic content is referenced and displayed to the end-user.
If the end-user's language is not one of your supported languages, the default variant is used.
Dynamic content provides you with a way to streamline support for multiple languages. You reference one placeholder and the appropriate language is displayed based on the end-user's language preference. How an end-user's language is detected is described in Setting and detecting a user's language.
Of course when you support multiple languages, you must translate your content into the languages you support in your Zendesk. There are a number of ways to manage the translation of your default content. You can create and edit all your language variants directly in your Zendesk or you can export all your dynamic content and send it off to a translation agency. You then import the dynamic content back into your Zendesk and all language variants are added.
If you later update the default content, the variants are flagged as being potentially out of date with the default content. Meaning that if you update the default content you probably need to also update the translations in the variants. When an update is required, you simply repeat the export and import process to update the content. See Managing the translation of your dynamic content.
You can also manually set variants to be inactive so that they are not used. You might do this if your variant isn't ready to be made public (for example, if the translation is incomplete or incorrect).
Finally, how you use your dynamic content in automations, macros, and triggers is tracked so that you have an easy way to monitor their use.
Creating dynamic content
When you create a dynamic content item, you select the default language and enter the text of the dynamic content. You then create variants for each of your supported languages.
The list of languages you can choose from is based on your default language and the additional languages you've chosen to support in the Localization settings page. You can add language variants for all of the languages that Zendesk supports.
- Click the Admin icon (
) in the sidebar, then select Dynamic Content.
- Click Add item.
- Enter a title for the dynamic content.
- Select the default language.
- Enter the text of the dynamic content.
- You can use Zendesk placeholders in your dynamic content. For example, you can add placeholders for ticket and user properties. See Zendesk data object (placeholders) referenceZendesk data object (placeholders) reference. You can also add other dynamic content placeholders.
- Click Create.
When you create a dynamic content item, the detail page is displayed. Below the title of the dynamic content, you'll see the placeholder that you'll use to refer to this dynamic content in your automations, macros, triggers and in system messages.
Once you use the placeholder, you'll see where its been used in the References section.
You can edit the dynamic content title by selecting Edit.
The text of your default content, shown above in the Variants section, can be edited by clicking the Edit button in the table row.
After you create your language variants, they are listed in the Variants section of the page.
Creating variants
Variants are different language versions of the default variant.
- Select Add Variant.
- Select the variant language. The list of languages you can choose from is based on the languages you've chosen to support in the Localization settings page. For more information, see Configuring your Help Center to support multiple languages.
- Set the variant to Active or Inactive.
Active means that the variant will be used as the text for all users of that language. When you set a variant to Inactive, you're disabling its use and users of the inactive language will instead see the default content variant. In other words, if the default content is in English and you make the German variant inactive, German users see English content. Typically, you set a variant to inactive if the variant's content is not ready to be made public (i.e., the translation is not complete).
- You can also optionally set the variant to be the default variant, which overrides the current default variant.
Setting a language variant as the default variant is useful when you want to create dynamic content specifically for a group that supports a language other than your default language. For example, a Japanese language support group can set default variants as Japanese. When you change the default from one variant to another, the status of the other variants changes to Out of date.
- Enter the text of the variant language.
Depending on how you're managing the translation of the content, you can instead first create all your dynamic content in your default language and then export the content and send it to a translation agency. An export file is created for each of the languages that your Zendesk supports. You then import the files back into your Zendesk and all of the language variants are added to the dynamic content. For information about managing the translation workflow, see Managing the translation of your dynamic content.
- Click Create.
Here's an example of the password help dynamic content variant in German (translation courtesy of Google Translate).
When you add variants, they are listed as shown here:
In the list of variants, you'll see that the default content is flagged as the default. You can edit each variant by clicking Edit. You can also delete all the variants that are not the default. To delete the default variant you need to either set a different variant as the default or delete the entire dynamic content item. See Deleting dynamic content.
- Active
- Inactive
- Active (Out of date)
As described below (Filtering the dynamic content list by status), you can quickly view the dynamic content items that contain variants that are out of date.
Managing dynamic content
You can view all of your dynamic content by selecting Manage > Dynamic content. To add variants to a dynamic content item, or to edit an item, click the item's title.
The list of dynamic content items contains the title, the date of the last update, and the status.
- Current, which means that the default content and all the variants are up-to-date.
- Out of date, which means that one or more of the variants are out of sync with the default content. In other words, the default content was updated and one or more of the variants were not. This status gives you a quick way to locate content that may need a translation update.
Filtering the dynamic content list by status
You can filter the list by status. By clicking the drop-down list located at the top left of the dynamic content table, you can filter the list using the following options:
Filtering by the out of date status allows you to quickly see the dynamic content that needs to be updated.
Deleting dynamic content
You can delete dynamic content only if it is not being referenced by your automations, macros, or triggers. How your dynamic content is being used is shown in the References section of each dynamic content item.
By clicking the link to the reference you can edit the business rule and remove the dynamic content placeholder. Once all the references have been removed, you can delete the dynamic content item.
- Click the Admin icon (
) in the sidebar, then select Dynamic Content.
- Locate the item you want to delete
- Click Delete.
- You'll be prompted to confirm that you want to delete the item. Click OK. If there are no references to the dynamic content, the item is deleted. If there are references, the item is not deleted. You can then remove the references and delete the item.
Deleting variants
Any of the non-default variants in a dynamic content item can be deleted at any time. References to the dynamic content placeholder do not affect the variants. To delete the default variant, you need to make another variant the default or delete the entire dynamic content item.
- Click the Admin icon (
) in the sidebar, then select Dynamic Content.
- Locate the item that contains the variant you want to delete and open it.
- Locate the variant and click Delete.
- You'll be prompted to confirm that you want to delete the item. Click OK.
Searching your dynamic content
The content in your dynamic content variants can be searched. The dynamic content search tool is located on the Manage > Dynamic Content page.
You can search for any text string in any of the languages you've used in your dynamic content variants.
Managing the translation of your dynamic content
You can manage the translation of your dynamic content in the following ways:
- You can add translated content when you create the variants in your Zendesk. You can then manage updates to the translated content by editing the variants.
- You can create all the default language versions of the dynamic content and then export them as CSV (comma separated values) files and send them out for translation. When the translations are complete you import the CSV files back into your Zendesk and all the language variants are added.
- You can do a combination of both these approaches; translating and editing some variants in-house and using the export/import process to create and update the language variants via a third-party translation agency.
For information about exporting and importing your dynamic content, see Exporting and importing dynamic contentExporting and importing dynamic content.
Using your dynamic content
The dynamic part of dynamic content is that the correct version of the content is automatically shown to the end-user based on their language. As with the Zendesk placeholders (see Zendesk data object (placeholders) referenceZendesk data object (placeholders) reference), to use your dynamic content you simply reference the placeholder.
Using the 'Password Help' dynamic content as an example, you can use the dynamic content by adding the placeholder into a comment in a macro.
Every dynamic content item has a corresponding placeholder (it's shown below the title of the dynamic content).
In this example, it's {{dc.password_help}}.
When the macro is applied to the ticket, the appropriate language variant text is inserted into the comment. If the end-user's language is not one of your supported languages, the default variant is used.
Dynamic content placeholders can be used in your automations, macros, and triggers.
You can also use your dynamic content for common system messages such as those used in the sign up process. For example, the text contained in the user welcome email message can be replaced with a dynamic content placeholder.
You can use dynamic content placeholders in the following:
- Ticket field names, both system and custom
- Custom drop down labels
- Ticket form names
- Agent signature (see Adding an agent signature to ticket email notifications)
- Help Center (see Adding translated text)
- Satisfaction reasons (See Working with satisfaction reasons)
- Sign-up messages for end-users, including:
- User registration message
- User welcome email
- Email verification email
Note: These sign-up messaging options aren't visible if you started using Zendesk after August 20, 2013 and you haven't enabled Guide yet.
How an end-user's language is set and detected and then used when displaying dynamic content is explained in Setting and detecting a user's language.. You can also find several examples of how to build a workflow based on language in Using a requester's language in your business rules.
32 Comments
Hi guys:) I've just added triggers to auto detect language as well as added dynamic content in several languages. But my problem is . All my existing users has already language (english) set.
Another problem I have is that the software I support - I get requests from superusers being first line support for our software - and same user (in Zendesk) sometimes forward requests in different languages (as we support in three languages). Its basically safe to autoreply in english, but we want this cutting edge vendor on the corner profile - and safe to say - I've hit the wall here.
So I got an idea - create an automation (or trigger) setting language BLANK (to allow auto detection each single time a ticket is received) - but that wasn't possible.
Could you add that to your request list?
I have triggers setting Norwegian if language is Norwegian, Swedish and English. So thought is to allow Automations set language blank. You would still have to make one automation for each language, but next time customer sends a ticket (after automation is run) the detect language function would do its trick.
This would have solved both problems mentioned above.
Seems like I can't use the dynamic content in the Macro title, right?
Or am I missing something?
Hi Giovanni!
Do you mean in the title of the macro itself, or do you mean setting a ticket subject, or something else?
Hi Jessie
I mean the macro title.
The dynamic content is great within the macro but I also need dynamic content in the title as well as not all of our agents are multilingual and I would like to standardize across several borders.
Is there a similar tool for Help Center documents?
For example, when adding additional information to the footer of an article, I would like to add, a link to another article by using a placeholder. That way, if the title of the linked article changes, I don't have to go in an manually change the title in every article where the link appears.
What @Ted Cox is asking for is what I would like to see as well.
Is dynamic content available for forms? I would like to have the user be able to see the form in English only if they are seeing that language.
Because we are bilingual, I would like the alternate language to be displayed, not the current language. Eg. if the content is being shown in English, I'd like to show Francais in the language selector. Can that be done?
Hi Karen! I'm not totally sure I understand your question...
If you have set your Guide up to support both English and French, your users will view your Guide in the preferred language that's set in their user profile. If no preferred language is set, it will default to English. They can also select the language they wish to view your Guide in from a drop down menu at the top of the window, near their profile picture.
This functionality extends to the ticket forms you have in Guide. If your users are viewing your Guide in French, the form they're served through the Submit A Request link will also be in French.
Does that answer your question?
So, according to this, if I would like to do an auto reply email, the system will recognize the local of each sender?
HI Aviv! That's exactly what Dynamic Content is designed to do! Let us know if you need anything else.
Hi, I am unable to find the Admin > Dynamic content menu at my support (I have professional plan). Where can i find this item ?
Thank you !
Hey Sergio -
It looks like this:
Hi
I understand that this article is about using Dynamic Content in triggers and other places in Zendesk Support. However, I would like to raise an issue related to Dynamic Content usage in Help Center templates. Please feel free to suggest a right article where I should post following.
The Dynamic Content's implementation in Help Center templates seems to be wrong, and doesn't comply with what you suggest in this article; and probably doesn't comply with original specification of Dynamic Content. The word "default" means something, and it's not being respected in help-center templates.
I have experienced that default variant is not used as fallback if other variants don't exist, or are active.
Let's say I have a help-center with three languages (English, Dutch and German).
Problem: The moment I change to Dutch or German version of help-center, I see an error being thrown in same place where I expect my phone-number to be shown. This error says that dynamic content variant for the current language doesn't exist; or something like that.
Workaround: I create all other Dynamic Content variants and duplicate the information (a simple phone-number in this case)
I think, it's such a waste of time and resources; and it's pain to update the phone-number because now I have to do it at three different places.
I have raised a ticket for this, but I want to share it here so we can have discussion around it. Do you think, I am doing something wrong?
Thank you
Abdul Qabiz
Team Diziana
Hi Abdul!
I've pinged our Community Moderators to come weigh in on this. To the best of my knowledge, Dynamic Content is meant for use in Support, not Guide/Help Center, so maybe I'm misunderstanding what you're describing here.
@Jessie . DC elements are for use in the Help Center as well! There is a slightly different syntax but it works well and is supported.
@abdul We observe the same behavior. The documentation says if there is no other language variant besides the default then it should display the default. We often see that there is nothing displayed when the browser is set to other language options.
@Jessie: Dynamic Content is pretty useful feature, and it allows a lot of possibility -- not just adding translations for different locale, but also it's sort of storage that allows us to avoid hard-coding things in template.
I am pretty sure the tests for Dynamic Content in Help Center theme missed the case I have mentioned earlier. The dynamic-content should fallback to default variant in absence of a variant for the current chosen language.
@Brendan: Thank you for your comment, it really helps. I hope, Zendesk engineers are reading your and my comments, and fix -- which I think should be a simple one.
Thank you
Hi
I will like to confirm that Dynamic Content fallback (i.e. default variant) works in Help Center when other variant doesn't exist.
We have identified that only time it doesn't work when you are working on templates, and previewing those in Zendesk Theming Center. Probably that's reason, we always thought it doesn't work, and never even bothered to publish and test.
Thank you
Hi,
Is it possible to include formatting in dynamic content? For example, I want to include bullet lists and italics, etc in the text. I can't see a way to do that.
Hi Adelle!
You should be able to use HTML formatting in conjunction with dynamic content within email notification triggers. You would have to input the HTML code yourself.
This following article goes a bit more in-depth regarding this:
HTML/Markdown used in dynamic content does not render in trigger emails
Hope this helps get you started!
@Jon
Ah of course, I think I knew that, but this was just the guidance I needed. Thank you!
Hi, How can I set up the translation of a drop down labels/words? I already know how can I set up the translation for the custom field name but I need to translate the drop down words/labels in it as well.
Where can I put the placeholder for the drop down field values?
Hey Albert!
If you'd like to translate your ticket field drop-down values then you will place your Dynamic Content placeholder in the field value name.
Hi ! I wanted to use dynamic contents to translate my Community into English but it doesn't seem to work.


Isn't it possible?
Hello,
Is it possible to directly access one language version of a dc-key?
For example, instead creating two dc keys survey_en and survey_de, can I create one key survey and access the languages through something like {{dc.survey:en}} or so?
The reason is, that the automatic language recognition is not working so very well.
Thank you
Great question Sebastian. I can see the use case, but unfortunately it will not be possible.
Dynamic Content will be populated from the placeholder dependent upon the users profile language. There is more information on how this language is set right here: https://support.zendesk.com/hc/en-us/articles/115007231608-How-are-users-languages-set-in-Support-
I am sorry to hear that language recognition is not working as expected. Is this affecting end-users regularly? You may need to reset the users languages to allow their language to be set again: https://support.zendesk.com/hc/en-us/articles/115002724767-How-to-reset-all-users-default-language-in-Support
Thanks
Hi Sebastian
Update: I read your question again, and realise you don’t want automatic.
I don’t think you need to create two keys. You just create one key, and add variant for each language.
You use the in template - email or help center, and based on current user’s locale, a right variant (if you created one for that language) is picked up.
If you meant to ask, can you use a different variant (de) while user’s current locale is en? I am not sure about that.
Thank you
Team Diziana
Thanks for jumping in, Abdul!
Thanks for answering.
Most users don't have explicitely or correctly set languages in their zendesk profile, since the majority of tickets come from new users that never wrote with us. So our support staff is checking the language the user is using in the ticket and decides basing on that, which makros will be sent, so which language version.
We plan on importing userdata into zendesk, including the chosen language of our users on our website, however that is not yet implemented and wouldn't work in any case as well, only for those cases where we know the email address from our website. And so the chosen language.
A usecase would be a surveycode I edited. It should show in different languages, however, of course the languagesetting in the useraccounts is not as correct as that dc could decide about the correct language.
So for now I built two versions of dc-elements, survey_de and survey_en. Both versions directly contain the proper languages, however, with a potential survey:de and survey:en it would be possible to only have one dc-key with two languages for the survey. It would be more tidy and duplicate entries wouldn't be needed. i didn't go too much into liquid variables, but maybe it would be possible to forward a language key via variable as well, drawing specific languageversions of dc keys through it.
Well, for now it's just 2 keys. Would be easier when it would be possible to outsource the parts of the surveycode that are different for each languages as well, however, for now it would just mean two new dc keys for each occurence of different languages in the survey code. It would be even worse when I have to add the other languages we support already. Should be around 5 survey dc entries by now.
In any case, dc takes they choice out of the agents hand, even if he would want to use another language. So everything built with dc would be useless or mean much work for an agent.
Thanks,
Sebastian
Hi
I am wondering if you can set requested language via trigger or macro. Once that’s done, right variant (language) of the dynamic component would automatically be used?
You can also check out this (link below) app and see if it’s useful for you. It essentially automated some manual steps I mentioned above.
https://www.zendesk.com/apps/support/requester-language/
Cheers,
Abdul Qabiz
Team Diziana
Hi,
Can Chat support use localization?
For example, hindi language. Is there a way to use Hindi language to provide chat support?
Also, is there any plans to support other Indian languages for tickets and chat both?
Please sign in to leave a comment.