Skip to content

Software Localisation One interface, usable in every language.

Software localisation translates the UI strings, error messages and notifications that sit inside resource files and code. We return the translated strings in the original format, with placeholders and plural rules preserved, ready for your next build. Request a quote.

Quote in ~10 minutes (within business hours) · 220+ languages · ISO 17100 · since 2007
ISO 9001 Quality Management ISO 27001 Information Security ISO 17100 Translation Services ISO 18587 Post-Editing Four ISO certifications
A resource file with key-value strings and placeholders is localised and rendered into app interfaces in English and Japanese. Placeholders and plural rules are preserved, and string length is fitted to the interface. de.json "btn.save": "Speichern" "greeting": "Hallo, {name}" "items": "{count} Artikel" "error.404": "Seite nicht gefunden" "nav.home": "Start" Placeholders preservedPlural rules correct L10n EN Save JA 保存 String length fitted to the UINo truncated button,tested via LQA in context.

Translation partner for demanding companies

tolingo reference clients: logos of companies such as Amazon, Audi, Allianz, Vodafone, TUI, Novartis, idealo and zalando.
 
We work in your resource files We work directly in JSON, XLIFF, PO, RESX, XML and other formats, keeping placeholders and code intact.
 
Linguistic, cultural, technical Text, plus date, number and measurement formats as well as plural rules and reading direction, matched to the target market.
 
Keeping pace with every release Continuous localisation via API: new strings go into translation automatically and come back.
Software localisation at tolingo: the essentials
  • What it is: Adapting an application to a language market: UI strings, messages and in-app text, done linguistically, culturally and technically.
  • Formats: Working directly in resource files such as JSON, XLIFF, PO, RESX, .strings, Android XML, ARB and Properties.
  • Integration: Continuous localisation via API and system integration, timed to your releases.
  • Scope: For your public web presence in the CMS, website translation is the right service; here it is about the product itself.

File formats and platforms
We work where your strings live

Software text rarely arrives as a finished document. It sits in resource files that separate key and value and keep code apart from language. We translate directly in these files, without breaking structure, tags or placeholders, and return them in the same format. That way the result drops into your next build with no rework.

Platform / environment Typical formats Notable point
Web apps & SaaS JSON (i18next), XLIFF, YAML, PO Key-based strings, often without context
iOS & macOS .strings, .stringsdict, XLIFF Plural rules via stringsdict
Android strings.xml, XLIFF Plurals and placeholders in the XML
.NET / Windows RESX, XLIFF Resources per culture (de-DE, fr-FR)
Java / Flutter / other .properties, ARB, XML, YAML ICU MessageFormat for plurals

We also localise embedded systems, firmware interfaces and industrial controls. If your format is not listed here, we will place it in the initial call. More on the technical side under tolingo API and system integration. For background on a specific format, see our article on YAML localisation.

The common pitfalls
Where software localisation goes wrong when it is treated like document translation

Translate software like a document and you produce errors that only surface in the live product. Five points come up again and again, and this is exactly where our process starts.

  1. String length overruns the interface

    German is often 30% longer than English, Japanese noticeably shorter. A button that fits in the original gets truncated once translated. We check lengths in context and shorten where the interface demands it.

  2. Placeholders and variables get lost

    In a string like "Hello, {name}" or "%d items", the placeholder must not be translated or moved, or the display crashes. Our translators know this syntax and leave the code untouched.

  3. Plural rules get ignored

    Other languages have other plural forms. Arabic distinguishes six, Polish three. A file with a single plural form is simply wrong in the target market. We localise via ICU MessageFormat and each platform's own plural mechanisms.

  4. Missing context leads to wrong choices

    A single "Open" can be a verb or a state. Without context, the translation guesses. We work with key names, comments and, on request, screenshots or a test build, so every string lands right.

  5. Reading direction and format go unaddressed

    For Arabic and Hebrew the interface has to be mirrored, plus local date, number and currency formats. For us this cultural and technical adaptation is part of localisation, and not something left to rework.

Internationalisation and continuous localisation
Localisation as an ongoing cycle that keeps pace with every release

Software never stands still: every release changes strings. To keep localisation in step, internationalisation (i18n) first separates text from code. After that it runs as a cycle: new strings go into translation automatically via API and come back ready to use. A translation memory cuts follow-up costs by up to 70%.

A cycle in four steps: on a new release, changed strings go automatically via API into translation together with Linguistic Quality Assurance and come back in the original format into the build, from where the cycle starts again. At the centre, a translation memory delivers up to 70% savings and consistent terminology. The basis is internationalisation, which separates text from code. New releasenew & changed strings Out via APIautomatic, no copy-paste Translation + LQAnative-speaker, in context Back into the buildoriginal format, ready to use ↻ CONTINUOUSTranslation Memoryup to 70% savedconsistent terminology Basis: internationalisation (i18n) separates text from code

From resource file to localised app
Three steps, from export to a ready-to-use build

01 You supply

Strings & context

Your resource files, the target languages and the platform. On request, screenshots or a test build, so every string sits in context.

JSON / XLIFF Target languages
02 We localise & test

Translation plus LQA

Native-speaker specialist translators carry over the strings, with placeholders and plural rules kept intact. In Linguistic Quality Assurance we check length and context.

ISO 17100 LQA
03 You receive

Files in the original format

The localised resource files in the same format you supplied, ready for deployment or the next build. Automated via API on request.

Original format Build-ready

Natively usable in the target market An application that feels, in every language, as if it was built for it. The basis is clean specialist translation to ISO 17100.

Ready to make your software work globally?

Describe your project: platform, formats, target languages and release rhythm. We recommend the right route and give you scope and price.

Free · No obligation · Response in ~10 minutes (within business hours)

Frequently asked questions about software localisation
Scope, formats, context, AI and cost

What is software localisation?

Software localisation is the adaptation of an application to a language market. What gets translated is the text in the software itself, that is UI strings, error messages, onboarding and notifications. On top of that come cultural and technical adaptations such as date and number formats, units, plural rules and reading direction. The work happens directly in resource files, not in a text document.

What is the difference from website translation?

Website translation carries over your public web presence in the CMS, that is pages, product text, blog and meta data. Software localisation concerns the product itself, that is the text in the application. A SaaS product often has both: a marketing website and the actual app. Then the two projects run in parallel, each with its own process.

Which file formats and platforms do you support?

We work in JSON, XLIFF, PO, RESX, .strings and .stringsdict, Android strings.xml, ARB, Properties and YAML. That covers web apps and SaaS, iOS and macOS, Android, .NET, Java and Flutter as well as embedded systems. If your format is not listed here, we will place it in the initial call.

How does the translator get context for individual strings?

Key-based strings are ambiguous without context, an "Open" can be a verb or a state. We use key names, developer comments and, on request, screenshots or a test build. In the final Linguistic Quality Assurance we check the strings in the context of the interface.

Does my software have to be prepared for localisation?

Ideally, yes. In internationalisation (i18n), text is separated from code, moved into resource files, and room is planned for longer translations. Once that is done, localisation runs predictably. We advise on the preparation if the separation is not yet complete.

Can AI localise my software?

Machine translation helps with large, uniform sets of strings, but often fails on missing context, placeholders and plural rules. For visible, interactive text we recommend post-editing to ISO 18587 or plain specialist translation. That keeps the speed of AI without breaking the interface.

What does software localisation cost and how long does it take?

It is billed per word: post-editing from €0.05/word, specialist translation from €0.12/word. Via translation memory you save up to 70% on recurring strings. Duration and price depend on scope, platform and target languages. After a short analysis we prepare a timeline and quote, usually within a few minutes during business hours.

Glossary
Terms around software localisation

Internationalisation (i18n)
Technical preparation of software for multiple languages: text is separated from code, moved into resource files, and room is planned for longer strings.
Localisation (L10n)
Adaptation of the prepared software to a specific market: translation of the strings plus formats, plural rules, reading direction and cultural conventions.
String / resource file
A text unit addressed by a key, and the file those units sit in, such as JSON, XLIFF or strings.xml.
Pseudo-localisation
A test method that artificially lengthens strings and adds special characters to find space problems and missing externalisation before the real translation.

Software that feels at home everywhere.

Send us your resource files and target languages. We localise strings, formats and interface and return everything ready to use in the original format.

ISO 17100 · ISO 18587 · Translation Memory included · Response in ~10 minutes (within business hours)
 
Written by
tolingo editorial team
Software Localisation & Engineering
Last updated: 9 July 2026