How to Cut Translation Costs in Software Development

I have worked for six software firms and in all of them the complaint was always the same: the high cost involved in translating the application and related documentation. And they were right, if a company needs to translate its application into several languages, it better be careful about the number of “translatable” words that are included in that application, otherwise, the translation costs would skyrocket. Bear in mind that every time a developer or technical writer inserts a new word that will need a subsequent translation, it will cost (if a translation agency is used), an average of 0.15 EUR per word and language (this is an approximate figure that may vary depending on the language (not all of them costs the same) and the translation agency (not all of them charge the same rates)). If one multiplies the number of words contained in a given application (software strings and online help, user guides and training manuals) by each of the required languages into which it is translated, the result is a cost that many companies consider unacceptable.

Software Development Translation_1Translations can be performed either internally (in-house) or outsourced to a translation agency. The latter case is simply great, as they take care of everything, but they are also very expensive. What can software companies do to cut translation costs? My proposal is, first, to integrate the translations into the software development process, then, standardize “translatable” texts by using the corresponding guidelines, patterns and templates, use translation memory-based programs (similar to Trados or Wordfast) and, finally, recruit and use a team of freelance translators. Now let me go into each of these possible solutions more in detail.

When translations are integrated into the software development process, all the parties involved are informed of the circumstances surrounding the translation phase. The different “Project Managers” are aware of how translations work, what tools are used. The Translation department informs of actions to be implemented in order for translation costs to be as low as possible, among them, the use of translation memory-based programs and how they can be used to optimize the translations. But in order to make the most of these translation memories, the texts that must be translated would need to be revised previously and standardized by the application of writing guidelines, patterns and templates. As we are talking about texts that are quite repetitive, if you try to express them in a uniform manner, translation memories can turn “no match” texts into “fuzzy matches” or, even, into “perfect matches” and, as a result, costs would be reduced. I take for granted that many of you know how translation memories work, but let me give you an example of this.

If no guidelines are used while writing software strings and each developer is free to enter strings at his/her own will, then cases like those mentioned below may appear:

To save the vehicle record, please click Save.
Click Edit to edit the record.
If you click Save, the record will be saved.
Please save the record before closing the application.
Click Delete if you want to delete the record.

These are just examples, but all of them could be reduced to just one, for instance:

To XXX (save, edit, delete) the record, please click XXX (Save, Edit, Delete).

This way, by expressing strings in a generic manner, they could be reused in the different modules of the application, and texts reused by translation memories, if they are fuzzy matches, will have a lower cost (as they are not “no match” texts) and, if they are exact matches, they will not have any cost or just a minimum cost.

Another alternative for reducing costs is using freelance translators instead of translation agencies. This measure can make you save a lot of money. Using freelance translators involves the previous work required for their location, testing and final selection. In addition, you would need to select several of them for each required language as one translator may not always be available. It is exactly what a translation agency would do, but in this case it would be performed internally, and, as such, the Human Resources department could be of great help for this purpose.

In order for all these actions to work successfully, a competent translation manager would be needed, someone who knows about translation requirements and is capable of communicating them efficiently to the Development Manager. The solutions I have proposed in this article, such as, standardization of texts in order to use subsequently translation memories that, in turn, optimize the translations when they are submitted to qualified, experienced freelance translators, may involve some prior work, but they will no doubt result in a substantial reduction of translation costs and, at the same time, an internal system will be established, one that will be easier to track and supervise.

Rubén Pedro López

Traductor Freelance: Ing > Esp > Ing Freelance Translator: Eng > Spa > Eng


  1. Hola Rubén, me ha parecido un post muy bueno. Coincido plenamente en todos los puntos descritos, uno a uno. Yo no soy experto como tu en traducción informática, pero en una ocasión para un cliente que me encargaba traducciones desde hace muchos años tube que hacer una.
    Las herramientas como Trados, naturalmente, facilitó enórmemente el trabajo y bajó notablemente el coste del proyecto de traducción.
    Como bien dices, también noté (y así se lo hice saber al cliente) que existían muchas frases y expresiones que quería decir lo mismo pero con distintas palabras, y que si se unificaban, tendríams como resultado una única frase o texto a traducir.
    Muchas gracias y saludos.

  2. One of the main issues with software translation is that the translator does not have information on context. Translators are given a list of strings to translate and don´t see where those strings are used.
    Case in point:
    A past version of Excel showed in the status line the message “Opening xxx” when you opened a file. The Spanish translation was “Inauguración xxx”.
    The output of the robocopy command in Windows has a line abbreviated as
    “Dirs excl.” which is directories excluded. In the Spanish version it appears as “Dirs. de ejecutables”. These are just two of them. There are more.
    (Side note: One of my pet peeves is the translation of function names in Excel formulas. Isblank, Iserr, and Iserror where translated as Esblanco, Eserr, Eserror. But Isodd, Iseven were translated as Es.impar, Es.par. Y Ceiling es Multiplo.superior. All with those intermediate dots added.)
    A solution might be to give translators a screen capture of the location where the string is used, or do the beta testing in each of the language pairs to be used.
    What has been your experience in this regard translating software?

    • Hi Simon,
      Thank you for your reply. Yes, I’ve experienced this issue before, but it is very easy to solve. You just need to ask for context to the developers in charge of the project. They will be happy to help. They may provide screenshots (as you suggest) or other. Maybe a translation engine was used in the translation, and that should be avoided. Translators should never translate a string without knowing what it is for, and for this, one usually asks developers. Hope this helps. Regards

Leave a Reply

Your email address will not be published. Required fields are marked *