Switch from Tolgee
Bring your Tolgee strings and translations. Host them free, leave whenever you want.
Import every string and existing translation from Tolgee into Glossa. Hosting is free and unlimited, your own agents can audit, fix and fill them for free, and you can export everything again at any time. You pay only if you ask Claude to translate for you.
Let your agent do the move
Run this in your repository. Claude Code or Codex sets up Glossa, exports from Tolgee, imports every file in agent mode so nothing is billed, checks the import, then audits and fills your translations itself.
claude "$(curl -fsSL https://getglossa.dev/switch/tolgee/prompt.txt)"codex "$(curl -fsSL https://getglossa.dev/switch/tolgee/prompt.txt)"Move our app's strings and existing translations from Tolgee to Glossa (https://getglossa.dev), then audit them. Hosting, imports, exports and audits are free on Glossa; keep this move free by using agent mode, so nothing is machine-translated or billed.
1. Set up Glossa. In Claude Code run `/plugin marketplace add MeterApp/glossa-plugins` then `/plugin install glossa@glossa`; in Codex run `codex plugin marketplace add MeterApp/glossa-plugins && codex plugin add glossa@glossa`. That adds the Glossa MCP server and skills; sign in through the browser when asked. Without a plugin, use the CLI: `npx @meterapp/glossa login` opens my browser to sign in, and `npx @meterapp/glossa ops` lists every operation.2. Get the newest translations. If Tolgee holds translations that are not committed here yet, export them first: tolgee pull --path ./tolgee-export (Set the format in .tolgeerc to one your app reads; in the web app, use Export.) If Tolgee's CLI is not configured, ask me for access; never commit or print API tokens.3. Find every translation file in this repository: the source language and every target language. List them with their locales and ask me only if the source language is unclear.4. Create one Glossa project per app with agent mode and its target languages, e.g. `npx @meterapp/glossa create_project --json '{"name":"Web","slug":"web","target_locales":["es","fr"],"translation_mode":"agent"}'`. Agent mode leaves missing strings for you instead of translating them with AI.5. Push each source-language file first, then every target-language file: `npx @meterapp/glossa push locales/en.json --project web`, then `npx @meterapp/glossa push locales/es.json --project web` (add `--locale` when the path does not name it). Existing translations are stored as imported, and AI never overwrites them.6. Check the import: `npx @meterapp/glossa pull --project web --out glossa-preview`, then diff glossa-preview against our files. Report every key, placeholder or plural that differs.7. Audit every target language for free with the codebase in view: page through `list_translations_for_audit` (MCP tool, or `npx @meterapp/glossa list_translations_for_audit --locale es --project web`), read the call sites in this repo, and correct wrong translations with `submit_translations`. Start with the flagged ones (placeholder_mismatch, glossary_miss, same_as_source).8. Fill the gaps yourself: `npx @meterapp/glossa missing --project web --locale es --out missing.json` lists untranslated strings with their file paths, glossary and rules; translate them and write them back with `npx @meterapp/glossa fill translations.json`.9. Save a .glossa.json with the project and source files so `npx @meterapp/glossa pull` and `npx @meterapp/glossa check` work from now on. Then summarize: files imported, translations per language, issues fixed and strings still missing. Leave Tolgee's configuration and CI in place until I confirm the switch.Or do it by hand
1. Export from Tolgee
tolgee pull --path ./tolgee-exportSet the format in .tolgeerc to one your app reads; in the web app, use Export. Export in a format Glossa reads: JSON, YAML, XLIFF, gettext PO, Android XML, .strings, .xcstrings, ARB, .properties, RESX or CSV (formats). Leave untranslated strings out, so source text does not import as a translation.
2. Import into Glossa
npx @meterapp/glossa loginnpx @meterapp/glossa create_project --json '{"name":"Web","slug":"web","target_locales":["es","fr","de"],"translation_mode":"agent"}'npx @meterapp/glossa push locales/en.json --project web # the source language firstnpx @meterapp/glossa push locales/es.json --project web # then every translation you haveAgent mode means nothing is machine-translated on push. Existing translations are stored as imported and AI never overwrites them. Identical strings across your apps share one translation.
3. Audit and translate with your own agent, free
npx @meterapp/glossa list_translations_for_audit --locale es --project web # your agent reads and fixes thesenpx @meterapp/glossa missing --project web --locale es --out missing.json # what is not translated yetnpx @meterapp/glossa fill translations.json # write your agent's translations backlist_translations_for_audit gives your agent every translation with the keys, file paths, glossary and rules behind it, flagged where placeholders or glossary terms do not match. With the codebase in view it fixes what is wrong and fills what is missing, for your whole library, without counting a single AI word. Prefer to let Claude do it? Switch the project to ai mode and pay only for the new words it translates.
4. Leave whenever you want
npx @meterapp/glossa pull --project web --out ./locales # every language, in its original formatYour files stay in your repository. Pulling is free, unlimited and needs no export request.
Tolgee and Glossa side by side
| Topic | Glossa | Tolgee |
|---|---|---|
| What you pay for | Free to host; priced by AI-translated words. | Plans are metered on hosted words plus machine-translation credits; seats are unlimited. |
| A bigger library costs more? | No: hosting is free and unlimited; reused strings are free. | Yes: hosted words count every translated language. |
| Free plan | Unlimited hosting, 20,000 AI words a month, 3 members. | 30,000 hosted words and 3 seats. |
| Paid plans from | $49/mo for 200,000 AI words | €58/mo, billed yearly |
| Agents | A hosted MCP server, CLI and REST API with every op, plus plugins for Claude Code, Codex and Cursor. | An official hosted MCP server. |
| Getting your files out | glossa pull, every language in its original format, any time. | tolgee pull --path ./tolgee-export |
Tolgee details from its public pages, checked 2026-10-29: Tolgee pricing, Tolgee CLI push and pull, Tolgee MCP server. Corrections welcome at jonathan@getglossa.dev.
When staying on Tolgee may make sense
- You need to self-host an open-source platform.
- You use its in-context editing in your web app.
Not sure? Import a copy anyway: it costs nothing to keep your strings in both while you compare. See every tool compared.
Move off Tolgee for free
Import your strings and translations, audit them with your agent, and export them again whenever you like.