We want to share an important update about how Mattermost handles translations, and take a moment to genuinely thank the people who made our existing localization possible.
Massive thank you to our Weblate contributors
Over the years, 372 contributors gave their time to manually translate more than 370,000 strings and 2 million words. Because of that, Mattermost officially speaks 23 languages. Users around the world open Mattermost every day and see a product that was built with them in mind — because someone who understood their language cared enough to get it right. This global reach would simply not be possible without the foundation built by our community.
What’s changing?
Starting with Mattermost v12.0 (October 2026), Mattermost translations will be generated using an AI-driven pipeline rather than manual contribution through Weblate. This allows us to keep all languages up to date across every release without placing the burden of that work on contributors’ shoulders. Weblate contributions will remain closed as we transition to the new pipeline.
Additionally, the LocalizationSettings.EnableExperimentalLocales configuration setting has been removed, along with several experimental language catalogs that contained low usable translation coverage.
Users may now select from 23 officially supported languages and 6 experimental languages, including:
Bulgarian, Chinese (Simplified), Chinese (Traditional), Croatian, Czech, Danish, Dutch, English (Australia), English (US), Finnish, French, German, Hungarian, Italian, Japanese, Korean, Lithuanian, Norwegian Bokmål, Persian, Polish, Portuguese (Brazil), Portuguese (Portugal), Romanian, Russian, Spanish, Swedish, Turkish, Ukrainian, and Vietnamese.
Native speakers of an unlisted or experimental language who want to help promote it to officially supported status can reach out in the ~i18n channel on Community or contact their Mattermost account manager. Full instructions are in our updated localization contributor guide.
Why are we making this change?
Keeping manual translations perfectly in sync with a fast-moving product is genuinely hard. When strings fall behind, which inevitably happens across many languages and multiple product release cycles, the experience for end users degrades in ways that are frustrating and hard to diagnose.
An AI-driven pipeline unlocks things that simply weren’t possible with manual translation:
-
Always current: Every string, in every supported language, ships with every release. No more strings falling back to English because a release moved faster than the translation process.
-
Complete coverage: Translations will be extended to a much wider suite of products that today aren’t even translatable. Users will encounter Mattermost as a fully localized product, end to end.
-
Uniformity: The pipeline is guided by glossary files that define how Mattermost-specific terms should be handled across every language, bringing uniformity that was difficult to achieve at scale before.
-
No release pressure: Contributors should never have to feel the weight of a release deadline. Every supported language now gets the same treatment, every month, without the burden falling on any individual.
How can I still contribute?
We would love for contributors to still remain part of this process — your language expertise and cultural context is irreplaceable.
While Weblate will no longer be used for submitting translations, there are still meaningful ways to stay involved:
-
Monthly diff review — Each month, you can review the diff for your language’s JSON file and submit a pull request directly to the repository on GitHub for any inaccuracies you spot.
-
Glossary maintenance — Help maintain the glossary files that guide how translations map Mattermost-specific terms. Getting these right has an outsized effect on translation quality across the board.
Full instructions are in our updated localization contributor guide.
Questions or feedback?
Drop them in this thread or in the ~i18n channel on our community server. We’ll be present and responsive as we make this transition together.