Detecting an end-user's language from an email message

Detecting an end-user's language from an email message

As described in Setting and detecting a user's language, there are several ways to detect and set an end-user's language.

One of those ways is automatically detecting an end-user's language from an email message sent to your Zendesk.

Here's how it works:

  • If the user is either unregistered (new) or does not currently have a language setting selected, then the text in the email message is analyzed to determine what the language is. If the detected language is one of your supported languages (selected on the Localization tab of the Account page) then the user's language preference is set.
  • If the detected language is not supported in your Zendesk, the language preference is set to the closest match. For example, if you receive an email that contains Hungarian and that is not one of your supported languages, the nearest match, in this case German, is set as the user's language.

Email-based language detection is especially useful if you provide support via email only since your users don't use the Web portal, never sign in, and aren't able to set a language preference. The only other way to handle language for email-only end-users is to have them send email support requests to a language specific email address such as german@support.myaccount.com.

When you have more than one language enabled in your Zendesk, email-based language detection is automatically enabled.

Supported languages

The email language detection feature currently supports the following languages:

  • Arabic
  • Chinese
  • Danish
  • Dutch
  • English
  • Finnish
  • French
  • German
  • Hebrew
  • Italian
  • Japanese
  • Korean
  • Norwegian
  • Polish
  • Portuguese
  • Russian
  • Spanish
  • Swedish
  • Thai

Detection accuracy and resetting the user's language

We do not guarantee 100% accuracy for the language detection. It's typically accurate but there are times when the language detection may not identity the language correctly.

When a user's language is set via automatic language detection, an event is added to the ticket.

If the language was detected incorrectly, click the Report error link and you'll see the Report Detection Error tool:

You can reset the user's language by selecting a different language from the drop-down list and then clicking Submit. When you reset the language, you're also providing Zendesk with feedback about the language detection, which we will use to improve the accuracy of this feature.

Note: Language detection does not always distinguish between variations of a language (for example, traditional and simplified Chinese and Portuguese and Brazilian Portuguese).

Email delimiter for email messages with mixed language

There may be times when you want to allow the use of more than one language in incoming email support requests and also correctly detect the language that the user entered into their message. For example, some companies like to collect data about the user's software configuration (the operating system, the browser they're using, etc.) and include that in the email generated when a user requests support via the Web portal . The text entered by the user into the message may be in any number of languages but the configuration data is only in English.

To support that, you can add a delimiter, {{classifier_delimiter}}, to your email template. All of the text above the delimiter is used to detect the user's language. All of the text below the delimiter is ignored by language detection. For more information about customizing your email template, see Customizing your email templates.

Have more questions? Submit a request

Comments

  • Avatar
    Krissy

    Any chance that this can be enabled for tickets that come in via Web Service (API)?

  • Avatar
    Pierre Grenier

    Hi Krissy, we are always interested in learning more about use cases that we have not yet covered.  Please feel free to share add'l details about your case.  Thanks.

  • Avatar
    Krissy

    We can pass the language setting an end-user has in our game as the 'locale', but we don't have the localization for many languages, and many of our end-users just play using the default English setting. As a result, end-users are writing to us in Traditional Chinese and we are passing their locale as "English" and thus, none of our dynamic content is working. It would be great if we could have ALL tickets, including those brought in via a Web Service API, to be pushed through the auto-detect language feature so that we can make use of our dynamic content on all tickets.

  • Avatar
    Pierre Grenier

    Yes Krissy, we realize that end-users send requests in a language other than their stated language.  So we want to address this problem but I do not have a timeline for you but this is a priority for the localization team.

  • Avatar
    Tarmo Kaljumäe

    Could that possible to set end-users language by domain names, so any one submitting email from *.fi will have Finnish and *.ee will have Estonian language and then after personalized per user?

  • Avatar
    Pierre Grenier

    Tarmo, this is not possible at this time.  Please keep in mind that if a user with .fi sends an email in Finnish our system is very, very likely to recognize it correctly, especially against Estonian.

  • Avatar
    Stephen Smith

    Any updates on Krissy's request?  Almost all of our tickets are generated through our app via your APIs.

  • Avatar
    Pierre Grenier

    Stephen, no change regarding Krissy's request.  However, this is still something that the localization team want to do. 

  • Avatar
    Pierre Grenier

    Stephen, no change regarding Krissy's request.  However, this is still something that the localization team want to do. 

  • Avatar
    Stephen Pryke

    We're currently using an email-only installation and only have known users. For that reason, we bulk import new end-users before they contact us (to set tags, etc), but obviously the locale/language isn't part of this import. 

    It appears that if you check the profile of a new user after the import, Zendesk shows the language as the default language (English in our case), but that when a user submits their first ticket, then Zendesk uses autodetection, even though they are a 'known' user. Can you confirm this is true? 

    Secondly, sometimes we have users from the same email domain (eg firma.de), writing in the same language (eg French), but one has their language changed to French and another to German. How is this possible? Is there something else apart from the text of the email which determines the language? Something in the email header perhaps?

    Thanks!

  • Avatar
    Andrey Sarapulov

    Hi Stephen

    The logic you described is correct. When you import end users via bulk option their language preference is not set. Therefore Zendesk can set language property for such end users following some of your rules. In your case this is email based language recognition.

    As for language recognition process, this "read" email subject and body text and pick up the language which is dominating in the text. Say if email sent by end user will contain 60% Italian and 40% german Zendesk should set user language to Italian. Sometimes this is not very obvious. For example, customer can send "I need help!" in German and have 5 lines of his signature in English. Obviously, that in this situation language will be set to English.

    I am aware that some time ago we used to parse headers, but as far as I know we stopped doing so and start relying on email content.

    Andrey Sarapulov | Customer Advocate | support@zendesk.com

  • Avatar
    Stephen Pryke

    Perfect. Thank you!

  • Avatar
    Pierre Grenier

    Guys, we just made an update to the documentation.  The delimiter was changed

    from: {{classifier_delimiter}}

    to: [[classifier_delimiter]]

  • Avatar
    Michael Prochon

    Unfortunately I do not seem to have this option present in the Email tab on Enterprise. Has anything changed? I find some of the support documents outdated..

  • Avatar
    Brandon K.

    Hello Michael,

    Thanks for bringing this up, it looks like you are correct that this option is no longer in this location. I'll let our documentation team know so we can hopefully get this updated!

  • Avatar
    Nina W.

    Hi, 

    Has there been any update to this? I don´t have the option of: "Select Email-based language detection > Enable"  therefore I´m a bit lost on how to go about setting up automatic language detection for Email only support. 

  • Avatar
    Laura D.

    Hi Nina, 

    Sorry about the delay - I checked on this and we've removed the setting and set the feature to be on all the time. It's no longer something you have to enable, it just works :) Hope that helps! I've also contacted documentation to remind them we need to update the information presented. 

  • Avatar
    Stephen Smith

    Any update to Krissy's request about detecting language from tickets generated through your APIs?

  • Avatar
    Laura D.

    Hi Stephen, 

    I asked Product about this as well and it's still something they want to work on, however there are some projects ahead of this on the list. I know they're keeping an eye this though!

  • Avatar
    Elmer Holmes

    My attempts of setting up Dynamic Content is failing. In settings we have English default with Spanish and French as supported. We have an automated trigger when an email comes in, I have created one for Spanish and it is not working. if language detected in email is Spanish notify requester with text which is in Spanish. The requester is not receiving the English or Spanish email. Thanks

    Elmer
    Polygroup Zendesk Administrator

  • Avatar
    Jessie Schutz

    Hi Elmer!

    Can you please tell me the name of the trigger that you're working with? I wasn't able to see any triggers with a dynamic content placeholder in your "polygroup" subdomain.

Please sign in to leave a comment.