Translating Your App With ChatGPT or DeepL: What Breaks and How to Fix It

By The strings.dev team · Last updated

Who it's for

  • Indie & small-team iOS / Android developers
  • Native .xcloc / strings.xml localization
  • One free language; unlimited languages at $20/mo

Who it's not for

  • Website / marketing-copy translation
  • App Store Connect metadata localization
  • Flutter .arb / React Native JSON, enterprise seats

Frequently asked questions

Can I just translate my app with ChatGPT?

For a few placeholder-free strings in one language, yes. Beyond that, chat-based translation tends to corrupt format specifiers like %@ and %1$s, flatten .xcstrings and Android <plurals> quantity categories, and drift on brand terms across files — problems you often don't notice until QA or a crash report. strings.dev keeps the native file intact end to end.

Why is my app translation wrong even though the text looks fine?

Usually it's structural, not linguistic. A reordered positional placeholder (%1$s vs %2$s) prints the wrong variable, a mismatched iOS specifier crashes on format, and a plural block missing the 'few'/'many' categories is grammatically wrong for numbers like 2, 3, or 21 in languages like Russian and Polish. These pass a visual glance but fail at runtime.

Does DeepL handle iOS and Android string files?

DeepL translates text well, but it isn't built around native mobile string formats. As of 2026 (check their current product), you're still responsible for protecting %@/%s placeholders, preserving .xcstrings plural variations and Android <plurals>, and reassembling the file yourself. strings.dev takes the .xcloc or strings.xml file directly and returns the same format.

How does strings.dev handle .xcstrings plural translation?

It reads String Catalog plural variations and Android <plurals> natively and emits the complete set of quantity categories each target locale needs — for example zero/one/two/few/many/other for Arabic — rather than copying the two categories English uses.

Is there a free way to try this?

Yes. The Indie tier is free: 1 project, 1 language, unlimited word translations, with app and brand localization — enough to run a full native-file round trip. Unlimited languages, 2 projects, brand context, and the QA & analytics dashboard are Indie Plus at $20/mo, or $10/mo billed annually.

Related

Try a real file free