Translate your game's localization CSV, then read every line back before you ship
Upload one CSV — KAERIS fills every target-language column, then reads each line back to you in your own language and flags the ones worth a second look. Catch the shaky ones before release, not after. Ready for Godot's Localization tab or a Unity string table import, with {0}/{1} placeholders untouched.
Upload your locale CSV
Export the sheet you already use for Godot's Translations resource or Unity's string table, or run kaeris translate translations/strings.csv --langs de,ja,pt-BR.
Pick target locales
46 languages, added as new columns next to your source column — nothing else in the sheet moves.
Ship
Import the CSV back into Godot's Localization tab, or drag it onto a Unity String Table Collection.
Before → after
keys,en WELCOME,"Welcome back, {0}!" ITEMS_LEFT,"{0} items left in stock" SAVE,Save changes
keys,en,de,ja WELCOME,"Welcome back, {0}!","Willkommen zurück, {0}!","おかえりなさい、{0}さん!" ITEMS_LEFT,"{0} items left in stock","Noch {0} Artikel auf Lager","在庫残り{0}点" SAVE,Save changes,Änderungen speichern,変更を保存
KAERIS keeps your keys column and source en column untouched and appends one new column per target locale — the exact shape Godot's CSV import and Unity's table CSV export/import both expect. {0}-style string.Format/tr() placeholders are protected the same way as every other format KAERIS supports.
{0}/{1} placeholder-safe
Numbered format placeholders used by String.Format (Unity/C#) and tr()/String.format (Godot/GDScript) are never dropped or reordered.
Single-file, multi-locale
One CSV in, one CSV out — keys, en, de, ja, … — no per-language files to juggle across a big narrative script.
Engine-agnostic
The same key + locale-columns shape works for Godot's Translation resource, Unity's Localization package tables, or a hand-rolled I2 Localization sheet.
One CLI command
kaeris translate translations/strings.csv --langs de,ja,pt-BR — run it every time a writer adds new lines.
{0}/{1} is never dropped or mistranslated.Beyond Godot/Unity CSV, KAERIS speaks all 11 formats — JSON, YAML, .strings, .po, ARB, Android XML, CSV (incl. Godot/Unity), XLIFF, .properties, .resx and Mozilla Fluent (.ftl) — same placeholder-safe engine across your whole stack.
Ship your game in every market
46 languages, {0}-safe, one CSV in and out. Free to start, no account required.
$ pip install kaeris $ kaeris translate translations/strings.csv --langs de,ja,pt-BR