Trusted by great companies. Used by 40 000+ users.










Up and running in three lines
Install the SDK, wrap a string, run the app. New keys show up in your Tolgee project on their own. Works in server components and client components.
> npm install @tolgee/react
What you get as a developer
App Router and server components
Translate in server components with a translate function, in client components with the T component or the hook. Both from the same SDK.
No flash of untranslated text
Translations are loaded on the server and passed to the client. The first paint is already translated.
Locale routing your way
Works with your existing locale strategy, whether it is a path segment, a cookie or a header. Tolgee does not take over your routing.
ICU plurals and placeholders
Plurals, gender, numbers and dates through ICU message format. HTML in translations is handled safely.
Same SDK as React
It is the same @tolgee/react package, so anything from a plain React app carries over. Plain React? There is a dedicated page for that.
CLI, API and standard formats
Push and pull translations in CI, import and export JSON, .po, XLIFF and more. Your data is never locked in.

QuickFit app
Workouts that fit your schedule, goals, and lifestyle.
Workouts that fit your schedule, goals, and lifestyle.

Quick translation
Homepage-subtitle
Workouts that fit your schedule, goals...

Entrenamientos que se adaptan a tu…

My app
Learn more
Start now
Quick translation
Button_key_name
Start now

My app
Learn more
Start now
Open source, self-hostable, no lock-in
Apache-2.0 licence, 4 000+ stars on GitHub. Run it on our cloud or on your own servers. Import and export any time.
Drew Hoover
Product Developer at Curipod
We were seeing hundreds of React crashes per day from browser translation. Tolgee brought that number to zero overnight.
FAQ
How do I add new keys?
You can add new keys in the Tolgee Platform using the Native SDKs, CLI, or REST API. For JavaScript frameworks like React, Angular, Vue, etc, we recommend adding keys using in-context editing, which is part of the Native SDKs.
How can I handle plurals?
We recommend using the ICU message format for pluralization. It enables you to render the correct plural forms in every known language.
E.g.
The `few` variant in the example above is not required in English. However, in the Czech language, providing this form is necessary to display a grammatically correct string for any number.
ICU message format handles this for you.
Tolgee Platform visualizes plurals so users, like translators, do not have to face the ICU syntax.
Tolgee Platform can export visualized plurals to various file formats supporting pluralization, like .po, Ruby .yaml or i18next.
Which machine translation providers are supported?
Tolgee currently supports
DeepL
Google Translate
Amazon Translate
Microsoft Cognitive
How can product managers, designers or other non-developer team members edit the strings?
Team members who care about precise wording can reliably edit the strings directly inside the product using Tolgee Native SDKs and its in-context editing feature.
Users can open the in-context edition dialog by alt+clicing the string in the development mode app.
Even live production applications can be turned to development mode using the Tolgee Chrome plugin.
Such an edit is very simple and reliable because the user knows what string is edited and that they're not editing a different string. Also, they don't have to search for the string in the source code, localization files, or huge localization data sets.
Is my application dependent on Tolgee Servers?
No. In a production environment, you should not use Tolgee as a source for localization data or leak your API key this way.
Instead, you should use data exported as static assets or Content Delivery (CDN).
How can I export the data for production?
You can export the data
using the Tolgee Platform UI
using the CLI
using the REST API
or you can publish the data to the CDN
Is my API key exposed in the production?
When your app is live in production, there is no need to use the API key. Your app does not fetch data from Tolgee REST API; instead, it fetches data from static assets or Content Delivery (CDN).
You should never leak your API key. That's why developers should store the API keys in environment files (.env) in the .gitignore file.
What formats are supported by Tolgee?
Tolgee supports all significant formats storing localization data such as JSON, XLIFF, .strings, .arb, .po and many more. Read about all supported formats here.
What's the difference between development and production mode?
When running your app in development mode with the Tolgee Native SDKs, localization data are fetched from the Tolgee REST API. You can edit the strings using the in-context tools, generate screenshots or review translations.
On the other hand, in production mode, Tolgee uses static assets or data published to Content Delivery (CDN). In production mode, no one can modify the app's strings unless they provide their API key using the Tolgee Chrome plugin.
Can I use strings created for web app for mobile and other apps?
Yes. When conversion to Tolgee ICU placeholders is enabled, you can reuse the exact data for any supported platform.
For example, you can use data created for web applications for your iOS or Android mobile app and vice versa.
How can I automate exporting data from the Tolgee Platform?
You can use your favorite CI/CD tool, such as GitHub Actions or GitLab CI/CD, while embracing Tolgee CLI's pull command or Tolgee REST API's export endpoint to automate data exporting.
Try it on your next Next.js project
Not sure it fits your setup? Write to info@tolgee.io or book a call.

