Skip to main content

i18n-keyless compared

Prices surveyed on 2026-09-08, read on each product's pricing page on that day. Prices change, some pages show a different currency by country, and most list only the annual-billing figure. Check the linked page before you decide; every row links to it.

The two scenarios, so the numbers are comparable: an app with 1,000 source strings in 5 target languages, then 10,000 strings in 5 languages. Where a product bills words, one string is counted as 8 words: 8,000 and 80,000 source words, 40,000 and 400,000 words across the target languages.

The table

1,000 strings × 5 languages10,000 strings × 5 languagesSelf-hostingLicenceSetupKeysExport
i18n-keyless, hosted (pricing)€4 to €99 / month per project, by monthly active users (€4 up to 1,000 MAU, €9 up to 5,000, €29 up to 50,000, €99 up to 500,000). Strings and languages do not change the price.Same: €4 to €99 / month.— (see the next row)SDKs MIT; server ELv2init with a key and the languages, wrap the strings. No files, no extraction, no CI step.No — the source string is the lookupJSON, every row, one click
i18n-keyless, self-hosted (details)€0 for one project; €30 once for unlimited projects. Plus your server and your AI provider's bill.Same.Yes — the same Docker image as the hosted service, SQLite or Postgres, any AI providerSDKs MIT; server Elastic License 2.0, source publicdocker run, create the admin, paste an AI key, set API_URL in the SDKNoJSON, every row, one click
Crowdin (pricing)Pro, €45 / month: 60K hosted words, 2 private projectsTeam+, €401 / month: 500K hosted words. Team (100K words, €134 / month) plus a hosted-words add-on may be cheaper; the add-on price is not shown as text.Not found on crowdin.com; Enterprise is a cloud plan, price on requestProprietaryKeys and locale files in the repo, the Crowdin CLI or a Git integration to sync them, a project set up on the platformYesYes, JSON and many formats
Lokalise (pricing)Explorer, $144 / month billed annually: 5 projects, a cap of ten target locales, 60K processed words / year. Hosted words are unlimited on paid plans; you pay for words processed (translated, imported, updated).Advanced, $999 / month billed annually (1M processed words / year). 400K processed words exceed Explorer's 60K base and Growth's 225K to 300K ($375 / month). Explorer can be topped up to 500K; the top-up price is not shown.Not offeredProprietaryKeys and files, the Lokalise CLI or a Git integration, a project on the platformYesYes, JSON and many formats
Phrase Strings (pricing)$525 / month billed annually ($6,300 / year), the "Software UI/UX" plan: 15 seats, 1M managed wordsSame, $525 / month: both scenarios fit in 1M managed wordsNot found on phrase.comProprietaryKeys and files, the Phrase CLI, a project on the platformYesYes, JSON and many formats
Tolgee, cloud (pricing)Team, €49 / month billed annually (€59 monthly): 2,000 keys, 4 seats, 10K machine-translation credits. Keys are counted once whatever the number of languages; the free plan stops at 500 keys.Advanced, €499 / month billed annually (€599 monthly): 20,000 keys — or Business at €179 / month plus 5 × "extra 1,000 keys" at €5, €204 / month billed annuallySee the next rowServer Apache 2.0, with an ee folder under the Tolgee Enterprise LicenseKeys and files, the Tolgee CLI or SDK, a project on the platformYesYes, JSON and XLIFF
Tolgee, self-hosted (pricing)€0: the free self-hosted tier has the core features, up to 10 seats, machine translation with your own API keys. SSO and granular permissions need a paid licence, price on request (keys and seats). Plus your server: a Java application and Postgres.Same.YesApache 2.0 (core)Docker Compose with Postgres, then the same client setup as the cloudYesYes, JSON and XLIFF
i18next + files in the repo (GitHub)€0 in licences. The cost is the work: a key for every string, one file per language, and somebody or something to fill them.Same.Nothing to hostMITKeys, JSON files per language, a loader, a CI step if you extract keysYesThe files are the export
i18next + locize (pricing)Growth, $49 / month: 60K words counted across all languages (48K here, source included), a cap of ten locales, 5M CDN downloadsEnterprise, $199 / month + $140 of overage (280K extra words at $5 per 10K) = $339 / month, downloads not countedNot offeredi18next MIT; locize proprietaryi18next keys and files, the locize backend plugin or CLI, a project on the platformYesYes, JSON and other formats

Dollars and euros are as each page displayed them; the difference does not change any row's order. Lokalise's pricing page and its documentation disagree on the Growth plan's processed words (225K vs 300K per year); both are given.

What the others do that i18n-keyless does not

None of this is on i18n-keyless's roadmap; if you need it, take the product that has it.

  • Translation memory — every one of Crowdin, Lokalise, Phrase, Tolgee and locize reuses a sentence already translated. i18n-keyless caches each string, but a new string is a new AI call, with no memory of the previous ones.
  • Glossary and term base — all five. i18n-keyless has context per string, and nothing at project level.
  • In-context editing — Tolgee (alt-click a string in the running app), Crowdin, Lokalise, Phrase and locize all have an editor over the live product. i18n-keyless has a table in the dashboard, and no extension. The equivalent: take a screenshot of the screen with the wrong string and give it to an AI agent connected to the MCP server; it finds the string and overrides the translation for you.
  • Screenshot context for translators — Tolgee, Crowdin, Lokalise, Phrase. Not locize, not i18n-keyless: there is no translator to show it to. A screenshot goes to your agent instead, as above.
  • QA checks (placeholders, length, consistency) — all five. i18n-keyless validates the ICU plural forms it generates and nothing else.
  • A translator workflow — assigning, reviewing, ordering professional translation from a vendor: all five. i18n-keyless has a per-cell "reviewed" mark and members with the same rights.
  • Hand-authored ICU MessageFormat — the key-based libraries let you write the plural and select branches yourself, with exact matches (=0) and nesting. i18n-keyless generates the forms from one sentence (count, ordinal, select) and does not accept ICU written by hand.
  • Fully Apache-licensed server — Tolgee's core. The i18n-keyless server is source-available under the Elastic License 2.0: read it, run it, change it, but do not sell it as a hosted service.

What i18n-keyless does that the others do not

  • No keys, no files. The source string in the code is the lookup. A new string is translated on its first request; a changed string is a new one. There is nothing to extract and nothing to sync.
  • A price that does not move with the strings. Hosted plans are per project by monthly active users; the self-hosted licence is a one-off. None of the rows above meter seats, words or keys.
  • One container to self-host, with SQLite, and any AI provider — the very image behind the hosted service.
  • An MCP server, so an agent can list missing translations, fix one, or set up a project.

Who should take what

  • You have translators, a review process, or legal copy that a person must sign off in every language: Crowdin, Lokalise, Phrase or Tolgee. The translator tooling is the product.
  • You want the server under Apache 2.0 and do not mind running Java and Postgres: Tolgee self-hosted.
  • You already have i18next and files and want a hosted editor for them: locize.
  • An engineering-led team without translators, that writes its copy in the code and wants every language without a workflow: i18n-keyless. Hosted if you do not want to run a server; self-hosted if your strings may not leave your infrastructure.

The one-to-one articles go deeper: vs Tolgee, vs Crowdin, vs Lokalise, vs Phrase, vs i18next, and the roundup of i18next alternatives. The FAQ answers the questions a sceptic asks first.