Admin GuidesCourse Languages

Course Languages

This guide explains how to offer a course in more than one language using language declinations. A declination is a version of your course in another language that keeps exactly the same structure — the same modules, in the same order, with the same completion rules — while every module’s content (the SCORM package, video, document, quiz questions, or live sessions) is provided in that language.

Learners choose their language once, when they enrol. Their progress, completions, certificates, and your compliance reports all count against the one course — a completion in French and a completion in English are the same completion of the same course.


How declinations work

  • Your course has a base language — the language it was authored in. It defaults to your organization’s default language.
  • A declination mirrors the base structure automatically. You never rebuild the course in the other language; you only supply each module’s content. Adding, removing, or reordering modules always happens on the base course, and every declination follows.
  • What you provide per module depends on the module type:
Module typeWhat the declination needs
SCORM / cmi5 / AICCits own package file in that language
Video / audio / documentits own file in that language
Quizits own questions and answers, rebuilt in that language — the passing score, attempt limit, and time limit always come from the base course, so the bar is identical in every language
Web content (lesson pages)translated text for each text block, edited in place in the lesson editor
ILT / VILTits own sessions — real dates, rooms, and instructors for that language’s cohort

Adding a language

  1. Open the course in Courses and go to the Modules tab. The tab strip at the top shows every language the course has — the first tab is always the base language, where the course structure (which modules exist, their order) is managed.
  2. Click + Add a language at the end of the strip and pick the language — for example French Canadian (fr-CA). A new tab appears for it. (You can also add languages from the Languages card under Settings.)
  3. The new tab lists the same modules as the base, each marked Missing until you provide its content in that language:
    • File modules (SCORM, video, documents…): upload that language’s file. The base file’s name is shown as a reference.
    • Quiz modules: build that language’s quiz. The passing score, attempt limit and time limit always come from the base quiz.
    • Live sessions (ILT/VILT): schedule that language’s own sessions — its cohort, dates and instructors.
    • Pages: translate each text block side by side — the base text on the left, your translation on the right.
    • Where your platform has it enabled, Translate with AI drafts the text blocks and quiz questions for you to review and save — see AI Course Translation.
  4. A counter on the tab (for example 3/5) tracks coverage, and a banner at the top of the editor reminds you while any language is incomplete. When every module is Ready, offer the language to learners from Settings → Languages → Offer.

Switching between language tabs keeps your place — the same module stays open — so you can compare the base and the translation back and forth at no cost.

A language can only be offered to learners when it is complete — there is no partial mode. This is deliberate: a learner must never hit a module that has no content in their language.

Course and lesson titles

Each language has its own course title, short description and description, and its own title for every lesson. Learners see them in the catalog, on the course page, in the player, on their home page and My learning, on their transcript and certificate, and in course emails.

  1. On the language’s tab in Modules, the Course and lesson titles section is at the top.
  2. Type the course title and descriptions in that language. The original text is shown under each field.
  3. Type each lesson’s title. The original title is shown as the field label.
  4. Select Save titles.

Where your platform has it enabled, Draft titles with AI fills the empty fields with drafts marked AI draft. Review them, then select Save titles — nothing is saved until you do.

  • A field left empty shows the original text to learners.
  • A new language can only be offered once it has a course title and a title for every lesson — Offer to learners names what is missing.
  • A language that is already offered keeps working with missing titles: publishing is never blocked, and the banner at the top of the editor counts the titles still to translate. Learners see the original title where one is missing.
  • Changing a lesson’s title in the base language does not change its translations.

Lesson pages count text blocks

A lesson page is Ready in a language when every text block on it has text in that language. Image, video and embedded-quiz blocks show the same content in every language, so they never need a translation. A page with no blocks at all is not ready — add its content on the base language tab first.

Languages offered before 2026-09-24. Until then, lesson pages were counted as translated even when their text blocks had no translation (LMS-1047). A language that was already offered stays offered: you can keep publishing new versions, and the banner at the top of the editor tells you how many lesson pages still have no text in that language — learners see the original text on those pages until you add it. Nothing is switched off for you. The rule does apply in full the next time the language is offered — a language that is paused and then offered again must have text on every lesson page first.

The “may be outdated” indicator

When someone edits a module’s base content after its translation was last touched, that module shows a may be outdated warning on each declination. This is a reminder, not a block — publishing base fixes is never held up by translations, but new modules are different: a new course version that adds a module cannot be published until every offered language has content for it.


Removing a language

A language that is currently offered to learners must be deactivated before it can be removed. Removing a language does not delete learners’ history; re-adding the same language later restores it in draft state.


Instructors and language cohorts

For ILT/VILT modules, each language has its own sessions with their own instructors. An instructor assigned to a session automatically sees that session’s roster, attendance, and QR check-in — even if they are not an instructor on the course itself. Course-level instructors see the whole course, in every language.

If your organization needs completely separate instructor teams and reporting per language, create two separate courses instead of using declinations.


Configuration reference

FieldWhereMeaning
Base languageCourse → Details tab (and at creation)The language the course is authored in. Defaults to the organization’s default language; editable until the first learner enrols, then locked (enrolment records depend on it).
Language codeLanguages card → AddBCP-47 style, e.g. en, fr-CA, es
Coverageper languageHow many modules have content in that language
Course title, short description, descriptionModules → language tab → Course and lesson titlesWhat learners see in that language; empty shows the base text. The course title is required to offer a new language
Lesson titlesModules → language tab → Course and lesson titlesEach lesson’s title in that language; all are required to offer a new language
Statusper languagedraft (being prepared), activated (offered at enrolment), deactivated (no new enrolments)

Troubleshooting

“A declination for this language already exists” — the language is already listed (possibly further down the card). Each language can only be added once per course.

“The course is already authored in this language” — you tried to add the base language as a declination. The base course is that language’s version.

“Deactivate the language before removing it” — the language is currently offered to learners. Deactivate it first; existing learners finish their course, new enrolments in that language stop.

A module shows “missing” but I added the file — check you uploaded it to the declination’s slot for that module, not to the base module. The base module’s content belongs to the base language.

“This language is missing content for: …” names a lesson page — at least one text block on that page has no text in the language. Open the page on the language’s tab and fill in each text block (or use Translate with AI where enabled), then save.

The banner says a language is offered but lesson pages have no translated text — the language was offered before lesson text was counted (see Lesson pages count text blocks above). Publishing still works; add the missing text so learners stop seeing the original text on those pages.

“This language is missing titles for: …” — a new language needs its course title and every lesson title before it can be offered. Add them in Course and lesson titles on the language’s tab, then select Offer to learners again.

The banner says titles are not translated yet — the language is offered, but some titles are empty. Learners see the original titles there until you add them.

The coverage total changed on its own — a new version of the base course added or removed a module. Declinations always mirror the current structure, so the counter follows it.