Building Multiple Language Versions in One Course?

Jun 06, 2012

I'm wondering if anyone has any good ideas on how to build a course that delivers the content in multiple languages. 

I have a client that wants to build one course and deliver it to their global workforce (with one or two additional languages in addition to English). Is it just as simple as building a button(s) on the intro screen that will allow learners to choose their language? This would then branch to the language version of their choice.

My only concern is that the couse would become too large in file size.

Any other ideas would be appreciated!



57 Replies
Jeffrey Riley

Does anyone else think there should be an easier way to have multiple languages in one course? Unfortunately, the LMS my client uses has to have both languages in one course to track it as one course. This is my first shot at two languages but it is not working. I am trying to get the Result slides to report to a common slide for tracking but that is not working either. At this time, there is an error with SL3 results slides. If you move the slide, the variables disappear.

I will try some of these solutions but this needs a better solution given more and more companies need at least two languages for their courses. A search of the Articulate data shows how many companies need this. I do appreciate this community and the great ideas difficult or not!

Wendy Farmer

Hi Jeffrey

I agree. I have just had to combine 4 languages for 4 modules (so far) for a client.  It has taken hours to work out the logic, do the variables and triggers and test to make sure every possible combination works.

Attached is the first sample I built for the client to test in their LMS.  It was a simplified version that contained only 5 questions per language and no retry or review button on the result slide and used the built in player navigation. The result slide only reported in English. It uses a variable called UserScore to tabulate the results which are sent to LMS in a JS trigger on the result slide. The User Score was multiplied by 2 to get the correct result. The player side menu has been left for testing only to show how the slides are progressing depending on the language selected...I ended up removing the player tabs altogether as only one language can be chosen.

Fast forward a couple of weeks:

The updated version now uses custom Submit/Next buttons for Review,  and a Result slide with 8 layers (2 per language for success and failure), the Results, User Score and Passing Score is translated into each language when the result slide displays. There are 11 triggers on each quiz slide and 14 on the first quiz slide.  

All in all the amount of regression testing has taken the most time.  Each time I added a trigger I would test the whole module to make sure it was returning expected behaviour.

Anyway, hope this simple attached version helps you


Julie Pochik

Hi Tom, I am trying to find your demo on this. I need to build one storyline file with multiple languages and am not quite sure if this is the right thing to do or to build multiple storyline files. I know how to create the trigger and then branch, but then you have the assessment issue as well. Can you please send me a link where I can figure out the best way to do this is please....

Mark Lentz

Jennifer, thanks for this simple javascript method -- we are doing a 3-language course in Storyline 360, Classic Player, HTML5, but I can't get this method to work.  Are you still using it?

Ideally we'd like to use the same method to change the course title, and most ideally of all would be to just do it once, when the user selects their language, than doing it at the start of every page.

I know I can instead use one of the other methods proposed in this thread, but this way would be the most efficient...

Hillary  Robinson

Can you explain how you use the translation tool to just change one language via states? My use of export/import changes all text in the file to that language, not just states for a specific language. So I am not fully understanding how you are using this feature to change only certain elements? Can you give any further explanation on this maybe I am missing something? 

Katie Riggio

Hi there, Hillary!

I'll defer to the community to weigh in with their thoughts, but here is more insight from Tom on his approach:

I built a demo at a conference once where I created a default shape that had states for each language. I added triggers to the shape to change state based on the language variable.

Then whenever I wanted to add something to the slide, I duplicated the shape. This copied the triggers. Then I added my content.

I could export the word doc and then add my localized content where needed. And everything was a lot easier. I didn't have to build a bunch of versions. I just had to add my translation to the pre-established states.

It doesn't work for all possible use cases, but is viable with some forethought.

Let me know if that helps.

Additionally, feel free to use the Contact Me button on Lloyd's profile page to reference the plugin! 

Nicole Mueller

Hi Tom,

thanks for the input, I just implemented your approach successfully. 

I have a question regarding the translations to 17 languages. Is there (your solution was publishes quite some time ago) a possibility to export and import the text in "states" for translations of several languages? I tried it out with the "normal" translation feature but this is not possible for several languages.

Thanks for your support,



Hi all,

I have a different approach. I think each module should be designed for 1 language, to set the default player language, navigation bar etc, and designed in a storyline file.

The solution is to let each module communicate with the LMS.

But before launching a module, it is not forbidden to create a page in html, which offers the possibility of choosing its language, then to launch the chosen module.

The trick, is to use the imsmanifest.xml file, and to redirect it with the html page, of choice of the language.

I hope this approach will give some ideas.



Nicole Mueller

Dear Articulate Team, 

we have been buying such a Language-setting landing page as a Scorm Format from a vendor. So basically it is a Mutliscormpackage, where there is every language in there. User arrives to language site-->chooses language-->jump to correct Scorm-->at the end LMS gets signal that the course is done.

So this is a WORKAROUND. As Articulate is the biggest DIY-Elearning program, you have to start working on that issue - big time. Community is asking for that since 8 years!!! Nothing has changed, this disussion goes on and on and on. I have seen a vendor with automatic build in translation mode. Only because they only have basic inteactivity functions (yet!) I have not changed to this vendor. Especially big companies like I am working in with more than 30 countries involved will be lost soon for you -as soon as a vendor invents something with multilanguage approach and translation possibilities.

So PLEASE Articulate do something - NOW.

Thanks a lot,