SiteTran
LearnWorlds One school. Every language.

Translate your LearnWorlds school, course player included

SiteTran makes your LearnWorlds school multilingual with one Widget Code. Course pages, checkout, the learner dashboard and the lessons inside the course player are translated as learners see them, in 187+ languages, without building a second school.

  • Free plan, no card needed
  • Unlimited languages on every plan
  • Instructors can review their own courses
Courses › Photography
Bestseller
Food Photography Masterclass

Light, style and edit dishes that look as good as they taste. Shoot with any camera.

$149One-time payment
You're enrolled. Opening your course
187+languages, including right-to-left
~3 minto install in LearnWorlds' Site custom code
1school and one set of courses, in any number of languages
$0to start on the Free plan

Driving growth for companies with millions of users

Alignment Neil Patel Exomonitor Cyfe Instructified
How it works

Add SiteTran to LearnWorlds in three steps

The Widget Code goes into your school's Site custom code, in the two <body> slots. That's the placement LearnWorlds loads on your site pages, its built-in pages and the course player.

1

Create your SiteTran site

Sign up free and add a site for your school's domain. SiteTran gives you a three-line Widget Code that loads the translator and places the language dropdown.

2

Paste it into both body slots

Open the Site Builder, then Site custom code. Paste the whole Widget Code into <body> logged in and again into <body> logged out, then save.

Website›Design›Edit Website›Site›Site custom code
3

Translate and go live

Open your school signed out, then as a learner, and switch language. SiteTran discovers text as pages are viewed. Translate it with AI, your instructors, or a translator, then publish.

What the Widget Code looks like
<script>var sitetran = {site_id: your_site_id};</script>
<script src="//c.sitetran.com/widget/v3.js"></script>
<div id="sitetran_translate_element"></div>

SiteTran gives you your own ready-to-paste code, with your site ID already in it. The div is where the language dropdown appears.

Body, not headLearnWorlds doesn't inject the <head> slot into the course player. Code in <body> logged in reaches it.
Both logged in and logged outEach slot runs for one kind of visitor. Use both, so prospects and enrolled learners both get the dropdown.
Site custom code, not page codePage custom code applies to a single page. The site template slots cover the whole school.
Built for LearnWorlds

What gets translated, from first visit to final lesson

SiteTran translates what LearnWorlds shows in the browser on your school's domain, including its built-in interface texts. Here's the whole learner journey.

  1. DiscoverTranslated

    Course pages and catalog

    Landing pages, course pages, bundles, the course catalog and course cards, pricing sections and your blog. These are the pages prospects see while signed out.

  2. Sign upTranslated

    Sign-up and sign-in forms

    Form labels, placeholders, buttons and messages. What learners type, such as their name and email, reaches LearnWorlds exactly as entered.

  3. BuyTranslated

    Checkout

    LearnWorlds' payment page is a built-in page on your domain, so it loads the body code. Prices, plan options, buttons and messages are translated, so learners buy with confidence.

  4. LearnTranslated

    Course player and eBook units

    The course outline, unit titles, eBook text, navigation and completion messages, as long as the code is in <body> logged in. The learner's language choice carries over from your site.

  5. PracticeTranslated

    Assessments and quizzes

    Questions, answer options and feedback LearnWorlds displays. Learners' own answers stay as they typed them. Test each question type with a learner account before launch.

  6. BelongTranslated

    Built-in learner pages

    Profile, Account, Inbox, People and Community pages are translated like the rest of your school. Exclude learner posts and names so you only translate your own text.

  7. MediaTitles translated

    Videos, SCORM and PDFs

    Lesson and file titles in the course outline are translated. Pair them with LearnWorlds' AI subtitle tools to give your videos captions in each language.

  8. ProgressTranslated

    Progress and completion

    Progress labels, completion messages and popups are translated as they appear. Use variables for counts like "3 of 24 units complete" so one translation covers every learner.

  9. On the goTranslated

    Phones and tablets

    SiteTran runs in any web browser, so learners who open your school on a phone or tablet keep their language from the course page to the last lesson.

Compare your options

Every way to make a LearnWorlds school multilingual

LearnWorlds lets you change your school's interface language, run a separate school per language, or connect a translation service. Here's what each approach involves.

One school per language

Set each school's Site Language and write or copy every course into it. Clear separation, but every course update has to be repeated in each school.

One school, translated as it loads

A translation layer such as SiteTran shows each learner their language on the same school. New lessons are picked up as they appear.

Site LanguageSettings › Site Language A school per languageLearnWorlds Multiple Schools Weglot integrationSettings › Integrations › Multiple languages SiteTranWidget Code in the body slots
What it does Sets the language of LearnWorlds' interface texts. You write your own content in that language. A separate school, domain and course copy for each language. Translates the school in the browser through a native integration with an API key. Translates the school in the browser, including LearnWorlds' interface texts.
Languages at once One. 19 preset languages, or edit every text by hand. One per school. Depends on the Weglot plan, from 1 to 20 translated languages. Unlimited on every plan, including right-to-left languages.
After you update a course Not applicable. Repeat the change in every school. New text is detected automatically. New text is discovered when viewed, and can be machine translated automatically.
Course player Interface texts only. Whatever you build in each school. Translated, except SCORM, videos, legacy eBooks and PDFs. Translated through the body logged in slot, including eBook units and assessments.
Cost Included. Each school needs its own LearnWorlds subscription. A separate Weglot subscription, priced by words and languages. Free plan, then from $3 per month. Unlimited languages and teammates.
Language URLs No. Yes, a domain per school. LearnWorlds supports Weglot's JavaScript integration only, and says its subdomain option may need to be turned off. Same URL by default. Static Translation API with a proxy for public pages.
Review workflow Edit texts in settings. Edit in each school's editors. A translation dashboard with human editing. Translators and reviewers per language, Glossary, Translation Rules and publishing.

LearnWorlds details are from its help center, and Weglot plan limits from weglot.com/pricing, as of October 2026. LearnWorlds' AI authoring tools can also translate an assessment or eBook text inside a course, which is useful for building a separate language version. Check each provider's current plans.

Translation quality

AI drafts in minutes, reviewed by people who know the subject

Course content is full of terms that general translation gets wrong. Start with machine translation, then let instructors or translators review the lessons and assessments that matter.

  • Machine translation from DeepL, Google and OpenAI

    Get suggestions for any phrase, or turn on Machine Translation Auto Translate so new lessons get a translation right away. Machine Translation Auto Approve decides whether it goes live without review.

  • Instructors and translators per language

    Invite a bilingual instructor, a freelance translator or a training partner for one language, with or without reviewer rights. Add AI Translation Review for a second opinion.

  • Glossary, Translation Rules and Similar Phrases

    Keep your academy name, course names and technical terms consistent with the Glossary, set a tone such as informal "du" in German with Translation Rules, and reuse earlier work through Similar Phrases.

  • A dropdown that fits your school

    Choose Styled Select, Dropdown List or Bare Select, with or without flags, and add your own CSS. Learners are switched to their browser language automatically.

Translate your LearnWorlds school into 187+ languages

SpanishGermanFrenchPortuguese (Brazil)ArabicJapaneseItalianDutchPolishTurkishHebrewHindiIndonesianKoreanChinese (Simplified)Greek+ 170 more
Launch checklist

Before you open your academy to a new language

Six checks worth doing before learners see a new language.

  1. Keep Site Language as your source language

    Set LearnWorlds' Site Language to the language you write in and leave it. SiteTran translates from it, including interface texts, so you don't edit each text in settings for every language.

  2. Pick fonts that cover your languages

    Check that your theme fonts include the characters of each language, especially Japanese, Chinese, Arabic and Greek. SiteTran switches right-to-left languages to a right-to-left layout.

  3. Leave learner content out

    Add the notranslate class to community posts, comments and profile details, or list their selectors in sitetran.ignore_selectors. You keep your word count for your own courses. Protect personal data.

  4. Use variables for names and numbers

    Greetings like "Welcome back, Maria" or "3 of 24 units complete" change for every learner. With variables, one translation covers every value.

  5. Walk through as a learner

    Enroll a test account and open a lesson, an assessment and the payment page in each language. SiteTran discovers text when it's shown, so this also collects every phrase to translate.

  6. Plan media, certificates and emails

    Add translated subtitles to your videos in LearnWorlds, decide whether certificates should be bilingual, and update the school emails that mention your course names.

SEO for LearnWorlds schools

Multilingual SEO for your LearnWorlds school

Search engines index the pages anyone can open without signing in: your course pages, landing pages and blog. Here's how SiteTran prepares those pages for search in every language.

Included as soon as you install

Everything search and social previews read

When a visitor switches language, the page's metadata switches with it, so a shared course link previews in the reader's language.

  • Page title and meta description
  • Open Graph and Twitter tags for link previews
  • Image alt text, tooltips, placeholders and ARIA labels
  • The page's lang attribute, set to the selected language
Advanced setup

Language URLs for your public pages

By default, every language uses your existing school URL and the learner's choice is remembered. For a separate, indexable page per language, SiteTran's Static Translation API returns translated HTML for URLs like these:

academy.example.com/course/food-photographyEnglish
academy.example.com/es/course/food-photographySubdirectory
es.academy.example.com/course/food-photographySubdomain

LearnWorlds hosts your school, so those URLs need a proxy or edge worker in front of it. Only public, signed-out pages belong there: don't cache signed-in pages or the course player. We'll help you plan it.

Talk to us about LearnWorlds SEO

Want the click-by-click version?

The integration guide, Translate LearnWorlds with SiteTran, has screenshots of each step in the LearnWorlds Site Builder, from copying your Widget Code to testing your first language.

Read the setup guide
Troubleshooting

Quick fixes for your LearnWorlds setup

Most setup questions on LearnWorlds come down to which slot the code is in, whether you're signed in, or a language that isn't live yet.

1The dropdown shows on my site but not in the course player

  1. The code is probably in a <head> slot or only in <body> logged out. The course player loads <body> logged in.
  2. Paste all three lines into <body> logged in, click Update, then Save.
  3. Reload the course as an enrolled learner, not only in the editor preview.
Position the dropdown →

2The language dropdown doesn't appear at all

  1. Check that the code is in Site custom code, not Page custom code for one page.
  2. Make sure the div line is included. The widget needs it to place the dropdown.
  3. In SiteTran, make sure the language is both Active and Live.
  4. If Hide All Widgets On Site (dev mode) is on, add ?sitetran=on to the URL.
Language not appearing in the dropdown →

3There are two language switchers

  1. Check Settings › Integrations › Multiple languages. If another service is still active there, deactivate it before switching to SiteTran.
  2. Look for an older translation snippet in the head slots or in Page custom code.
  3. If you use a cookie banner, test with it accepted and declined.
Hiding the language dropdown →

4Some text is still in the original language

  1. SiteTran discovers text when it's shown, so open the lessons, assessments, popups and built-in pages you need translated.
  2. A translation appears only after it's approved and published.
  3. Translation data can take up to 30 seconds to update, and browsers can cache it for up to 10 minutes.
  4. Turn on Machine Translation Auto Translate so new lessons get a translation right away.
New translations aren't appearing →
Pricing

Simple pricing, whether you sell one course or run an academy

Every plan includes unlimited languages and teammates. Start free and upgrade as your catalog and learner numbers grow.

Free

$0

For small sites and testing

  • 7K words in site
  • 3K translated pageviews / month
  • 7K machine translations

Starter

$3/mo

For sites with moderate translation needs

  • 30K words in site
  • 15K translated pageviews / month
  • 30K machine translations
Most popular

Pro

$35/mo

For larger sites or several smaller ones

  • 90K words in site
  • 45K translated pageviews / month
  • 90K machine translations

Business

$75/mo

For large-scale international sites

  • 250K words in site
  • 125K translated pageviews / month
  • 250K machine translations
Annual billing: 2 months free · Enterprise plans for 1M+ words See all features
FAQ

LearnWorlds translation questions

Launching an academy or a corporate training program in several languages? Our team is happy to help with your LearnWorlds setup.

Email support
How do I add SiteTran to my LearnWorlds school?
Create a free SiteTran site and copy your Widget Code. In LearnWorlds, go to Website, then Design, and click Edit Website. From the top bar, open Site, then Site custom code, and paste all three lines into both the <body> logged in and <body> logged out slots. Save, then open your school and pick a language from the dropdown.
Why use the <body> slots instead of the <head> slots?
LearnWorlds does not inject the <head> slot into the course player, but it does inject <body> logged in there and on built-in pages such as Profile, Account and Inbox. The Widget Code also includes a div that places the language dropdown, which belongs in the body. Using both body slots covers visitors and signed-in learners.
Which LearnWorlds plan do I need?
You need access to Site custom code in the LearnWorlds Site Builder. LearnWorlds' pricing page does not list custom code by plan, so check that the Site custom code editor is available in your school before you start. SiteTran itself has a Free plan, and conditional Liquid code is not required.
Does SiteTran translate the course player?
Yes, when the Widget Code is in the <body> logged in slot. Text the course player shows on your school's domain, such as the course outline, unit titles, eBook units, assessments and buttons, is translated as learners see it. A learner's language choice is saved, so someone who picks Spanish on your course page keeps Spanish in the player.
Can SiteTran translate LearnWorlds quizzes and assessments?
Questions, answer options and feedback that LearnWorlds displays in the course player are translated like any other text. Learners' typed answers are left exactly as they wrote them. Test a full assessment with a learner account before launch, especially question types that use images or embedded content.
What about videos, SCORM packages and PDFs?
Their titles in the course outline are translated, and for videos in the LearnWorlds video library you can add subtitles in other languages with LearnWorlds' AI subtitle translation. Like every website translation tool, SiteTran works on page text, so for SCORM packages and PDFs, upload a version per language if you need one.
How do I handle certificates and school emails?
Like every website translation tool, certificates and school emails are handled by LearnWorlds rather than shown on your page. Edit school email text under Communication, then School Emails, and design certificate text that works for your audience, for example bilingual.
Does it work in the LearnWorlds mobile app?
SiteTran translates your school in every web browser, on desktop, tablet and phone, so learners on mobile get their language too. LearnWorlds' branded mobile app is a separate native app with its own language settings.
Should I change LearnWorlds' Site Language?
Set Site Language once to the language you write your courses in, then leave it. SiteTran translates from that language, including LearnWorlds' interface texts such as buttons and form labels, so you do not need to edit each interface text by hand for every language.
Is the LearnWorlds checkout translated?
Yes. The payment page is one of LearnWorlds' built-in pages on your school's domain, so it loads the <body> logged in code and its text is translated. Prices, plan options, buttons and messages appear in the learner's language.
Will learner names and community posts be translated?
Only if you let them. Exclude names, profile details and community posts by adding the notranslate class to those elements or listing their selectors in sitetran.ignore_selectors in your Widget Code. For greetings such as Welcome back followed by a learner's name, use variables so one translation covers every learner.
Do translated LearnWorlds pages get their own URLs for SEO?
By default, every language uses your existing school URL and the learner's choice is remembered. For indexable language URLs such as /es/ on public pages like course landing pages and blog posts, SiteTran's Static Translation API returns translated HTML, which needs a proxy or edge worker in front of your school. Book a call and we will help you plan it.
Can I use machine translation and still review it?
Yes. You can get machine translation suggestions from DeepL, Google Translate or OpenAI, automatically translate new phrases, and decide whether those translations are approved automatically or reviewed first. Invite your instructors or professional translators as translators and reviewers for each language, and use AI Translation Review for a second opinion.
Can I test translations before learners see them?
Yes. A language stays hidden from visitors until you set it to Live. You can also turn on Hide All Widgets On Site (dev mode) under Settings, then Publishing, and add ?sitetran=on to your school's URL to preview the language dropdown yourself.
Is there a free plan?
Yes. The Free plan includes 7,000 words in your site, 3,000 translated pageviews per month and 7,000 machine translations, with unlimited languages and teammates. Paid plans raise those limits and start at $3 per month.

Teach the world from one LearnWorlds school

Paste one Widget Code, pick your languages, and keep building courses in the language you know best. Start with your best-selling course on the Free plan.

Start translating free Book a call Free plan · Unlimited languages and teammates