Tolgee is an open-source localization platform with in-context editing, machine translation and a free cloud plan that already includes CDN delivery, so it is a strong choice when translating is the hard part. AirStrings is narrower: it delivers app strings over the air as Ed25519-signed bundles that the SDK verifies on the device, with a protected production environment that only a human can promote to, and a CLI and MCP server built for coding agents.
This page compares the two for one job: changing the text in a shipped app without a new store release, and keeping that change safe.
What Tolgee is
- Open source and self-hostable. The Tolgee platform is Apache 2.0, except enterprise features under
ee/, which have their own license. You can self-host it with Docker, and a paid self-hosted license unlocks the advanced features. - In-context editing. With the JavaScript SDK in development mode you hold Alt (Option) and click any text in your web app to edit its translation in place (Tolgee docs). There is also a Chrome plugin and a Figma plugin.
- Translation workflow. Machine and AI translation, glossaries, tasks, branching and granular permissions, depending on plan.
- Content Delivery. Tolgee exports your translation files to its CDN, automatically after every change or by a publish button. The free plan gets one Content Delivery configuration; paid plans add more and custom S3 or Azure storage. Tolgee notes that a change “can take up to 15 minutes (usually faster)” to reach the CDN (Content Delivery docs).
- SDKs. JavaScript (React, Angular, Vue, Svelte, i18next), a Swift SDK that loads translations from the Tolgee CDN with a fallback to the strings in your app bundle, a Kotlin and Compose Multiplatform SDK, and Flutter.
- MCP server. Tolgee runs a hosted MCP server and a local one, so AI assistants can list keys, edit translations and trigger machine translation (MCP docs).
- Pricing by hosted words. Free is €0 with 30,000 hosted words and 3 seats. Paid cloud plans are Translate €58, Optimise €133 and Manage €373 per month billed annually, each with unlimited seats and 400,000 machine-translation credits; Enterprise is on request. Keys are not a pricing metric (pricing).
Facts above checked on October 6, 2026, from Tolgee’s pricing page, documentation and GitHub repositories.
Comparison
| Tolgee | AirStrings | |
|---|---|---|
| Source | Open source (Apache 2.0 core), self-hostable | Hosted service; SDKs and CLI are open source (MIT) |
| Free plan | 30,000 hosted words, 3 seats, one CDN delivery configuration | 1 project, 1,000 keys, 3 locales, 2 environments, 3 seats |
| Paid plans | From €58/month billed annually | From €29/month (Pro) |
| OTA delivery | Translation files exported to Tolgee CDN or your own storage | Signed bundle per locale and environment on a CDN |
| Content signed and verified on device | Not described in Tolgee’s Content Delivery or SDK documentation | Ed25519 on every bundle, every plan; unsigned or tampered bundles are rejected |
| Production gate | Publishing is automatic or a button per delivery configuration | Production is protected: agents publish to staging, a human promotes |
| Offline first launch | Fallback to strings compiled into the app | Signed bundles committed with airstrings bundles pull, verified before use |
| In-context editing | Yes, in web apps (Alt-click) | No |
| Translation tooling | Machine and AI translation, glossaries, tasks, branching | Keys, locales, environments, CSV import; no translation memory or machine translation |
| Agent tooling | MCP server (hosted and local), CLI | CLI designed for agents (stable exit codes, --json), MCP server, sdk-config for release setup |
| SDKs | JavaScript frameworks, Swift, Kotlin/Compose Multiplatform, Flutter | iOS (Swift), Android (Kotlin), React Native, Web, Go |
Where AirStrings is different
- The signature decides what renders. Tolgee’s CDN serves plain translation files, and HTTPS protects the connection, not the bucket or cache behind it. AirStrings signs each bundle with Ed25519 and the SDK refuses any bundle whose signature does not verify against public keys compiled into your app. The signature covers project, locale and revision, so a bundle cannot be swapped into another project or rolled back.
- An agent can write copy without shipping it. New projects start with a protected production environment. An API key, a CI job or a coding agent can only publish to staging; production changes when a person promotes staging in the dashboard. In Tolgee, with automatic publishing on, every change to the project, including one made through the API or MCP, is exported to the CDN.
- The offline fallback is verified too. Bundles you commit for a first launch with no network go through the same signature check as downloads.
- First-party React Native SDK. Tolgee covers React Native through its JavaScript SDK (its React Native example notes the ICU formatting plugin does not work there). AirStrings ships
@airstrings/react-nativewith signed caching and ICU plurals on Hermes.
When Tolgee is the better choice
- You need to self-host or want open source. Tolgee runs on your own servers. AirStrings is a hosted service.
- Translation is the hard part. Translators, reviewers, machine translation, glossaries and in-context editing are Tolgee’s core. AirStrings has none of that beyond CSV import and a dashboard editor.
- You localize a web app with many languages. In-context editing and the JavaScript integrations are mature, and the free plan is generous by hosted words.
- You use Flutter. Tolgee has a Flutter SDK. AirStrings does not have one yet.
You can combine them: translate in Tolgee, export CSV and publish with airstrings import csv, so delivery to devices is signed and gated while translators keep their workflow.
What it looks like in your app
import AirStrings
let airStrings = AirStrings(configuration: .init(
organizationId: "org_xxx",
projectId: "proj_xxx",
environmentId: "env_xxx",
publicKeys: ["BASE64_ED25519_PUBLIC_KEY"]
))
Text(airStrings["checkout.cta"])airstrings init <staging-write-key>
airstrings strings set checkout.cta en="Pay now" it="Paga ora" --format text --push
airstrings publish
airstrings promote preview
airstrings sdk-config --env productionpublish goes to staging, promote preview shows the diff and the dashboard link where a person applies it to production, and sdk-config prints the production ids and public keys for your release build. Platform guides: React Native and SwiftUI. For other tools, see AirStrings vs Lokalise OTA and Firebase Remote Config for translations.
FAQ
Is Tolgee open source?
Yes. The Tolgee platform is licensed under Apache 2.0, except enterprise features in its ee directory, which have a separate license. You can self-host it with Docker, and a paid self-hosted license unlocks the advanced features. Checked October 6, 2026.
Does Tolgee support over-the-air updates?
Yes. Tolgee Content Delivery exports translation files to its CDN or to your own S3 or Azure storage, and its JavaScript, Swift and Kotlin SDKs can load them at runtime. The free plan includes one Content Delivery configuration.
How much does Tolgee cost?
Tolgee Cloud has a free plan with 30,000 hosted words and 3 seats. Paid plans are Translate at €58, Optimise at €133 and Manage at €373 per month billed annually, priced by hosted words with unlimited seats. Enterprise and self-hosted licenses are quoted.
What does AirStrings do that Tolgee does not?
AirStrings signs every string bundle with Ed25519 and the SDK rejects any bundle that does not verify against public keys built into the app, including the offline fallback shipped with the app. Production is protected by default, so API keys and coding agents publish to staging and a person promotes to production.
Can I use Tolgee and AirStrings together?
Yes. Translate in Tolgee, export CSV and import it with airstrings import csv, then publish. Translators keep Tolgee and devices receive signed bundles.