Skip to content

Moving off Texterify in 2026: what to check, and how to migrate

If you are moving off Texterify: what to look for in a replacement, how Transglot compares, and a format-by-format path to migrate your strings.

by transglot team
published January 12, 2026
8 min read

If you landed here, you are probably running a localization workflow on Texterify and weighing a move. This post is a straight-talking comparison: what Texterify does well, what to actually check for in a replacement, and a concrete migration path, not a marketing puff piece.

What Texterify does well

Texterify earns loyalty from developer-heavy teams for a few specific reasons: it is open source, it supports the file formats developers actually ship (JSON, Android XML, iOS strings, and friends), and it does not force a heavyweight "enterprise TMS" workflow onto small teams. Any replacement has to hold that combination, not just match it on a feature list.

The mistake most teams make when picking a replacement is optimizing for feature-count instead of for the three things that actually make a tool like this sticky: format fidelity, a way back out that needs nobody's permission, and an editor that does not get in your way.

What to check for in a Texterify replacement

  • No lock-in: your strings should come back out in the same formats they went in, whenever you ask for them.
  • Native support for the file formats you already ship, not a lossy CSV round-trip.
  • A translation editor built for volume: thousands of strings should not mean a laggy table.
  • A real API for automation, so localization can be part of your normal build, not a manual side-quest.
  • Transparent, predictable pricing with a genuinely usable free tier.

How Transglot compares

Transglot was built for exactly this audience: developers and localization teams who want control over their strings, their formats and their pipeline. A few specifics that map directly onto the checklist above:

  • Native import and export for twenty formats: JSON flat and nested, Laravel PHP and JSON, Android XML, iOS .strings, .stringsdict and .xcstrings, Flutter ARB, XLIFF 1.2 and 2.0, gettext .po, YAML, CSV, XLSX, Java properties, RESX, Markdown, Unity CSV and Unreal PO. Seven of them carry plurals, and a file comes back in the shape it went in.
  • A virtualized, keyboard-first translation editor (built on TanStack Virtual) that stays smooth even on large projects, with optimistic cell saves, fuzzy search, and per-CLDR-category plural editing.
  • A REST API (api.transglot.ai/v1) to pull, push, and trigger AI translation, authenticated with scoped project access tokens, plus HMAC-signed webhooks for batch.completed / batch.failed events.
  • AI translation from Glossa as a first-pass option, with a translation memory that reuses exact matches at no quota cost. Useful, but entirely optional if you just want a place to manage strings.
  • Transparent pricing: Free ($0, 100,000 words to start and 10,000 a month after, 3 seats, 1 project, 14 target languages) up through Business ($149/month). Free is self-serve and takes no card, but it cannot mint a project token, so the API, CLI, Action and webhooks start at Starter ($19/month).
Transglot automates in CI/CD with a first-party CLI, a GitHub Action, and the REST API, so a migration setup is a few lines of YAML, not a hand-rolled script. The caveat to weigh before migrating: Transglot is a hosted application and its source is private. Packaged and air-gapped self-hosting is on the Enterprise roadmap, and until it ships we do not describe it as available.
Being upfront about what is different

A practical migration path

Migrating a localization project is really a three-step job: get your existing strings out in a format you can get back in, stand up the new project structure, and rewire your build/CI to point at the new source of truth. Do it format by format rather than trying to move everything in one sitting.

  1. Export your current strings in whichever native format your app already uses: JSON, Android strings.xml, iOS .strings/.stringsdict, Flutter .arb, or Laravel PHP/JSON files. These are the same formats most i18n frameworks read natively, so this step usually requires no transformation.
  2. Create a new project per app/product and import the exported files. Because the formats are capability-aware (a simple JSON file just skips plural handling instead of erroring), you can import incrementally without reformatting first.
  3. Add languages and let the platform auto-backfill missing keys when you add a new locale, instead of hand-copying rows.
  4. Generate a scoped project access token (with pull/push/manage abilities, sha256-stored, revealed once) and wire your build or CI step to pull the latest translations via the API before you package a release.
  5. If you rely on Texterify webhooks for "translations changed" notifications, recreate that with an HMAC-signed webhook on batch.completed, which fires whenever an AI translation batch finishes, and check the delivery log if a redelivery is ever needed.
Pulling the latest translations for one locale via the APIbash
curl -s \
-H "Authorization: Bearer $TRANSGLOT_TOKEN" \
"https://api.transglot.ai/v1/pull?format=json_nested&locale=en" \
-o locales/en.json

That single request is usually the crux of the whole migration: once your CI can pull fresh translations on demand, the rest of the workflow (adding keys, translating them, reviewing them) is just day-to-day usage of the new editor.

What about self-hosting?

This is the decision Texterify users are used to making, so here is the straight answer: Transglot is hosted only. There is no packaged image, no installer and no air-gapped build, and packaged self-hosting sits on the Enterprise roadmap rather than in the product today. What you get instead of a deployment choice is the right to leave whenever you want: the pull endpoint and the CLI hand your strings back in the same formats you put in. If your project is public and maintained, the OSS grant carries everything the $49 Team plan has, granted rather than bought.

If you are mid-migration and something in your specific format or CI setup does not map cleanly onto the steps above, reach out and we will work it through with you.

about this post

Who wrote this, and what to read next

wrote this

transglot team

The byline on this post has no profile yet. Author profiles are managed alongside the posts themselves.

Product
keep reading

Localization as code: automate translations in CI/CD

Treat translations like any other build artifact: pull, push and trigger AI translation from CI with the Transglot REST API and signed webhooks.

February 24, 2026
7 min read
keep reading

Terminology at scale: glossary-enforced AI translation

Product names that must never be translated, forbidden terms that must never appear: how a project or org-wide glossary keeps Glossa on brand.

March 17, 2026
7 min read
works with what you already run

41 connectors, already built.

the pipeline this post describes

Try it on your own strings. Free, no card.

Free plan: 100,000 words to start, then 10,000 a month, 15 locales including your source, 3 seats.