Before you start to read, here is a [related question](https://stackoverflow.com/questions/191066/how-do-you-manage-the-string-translation-process), however I am afraid it lacks details...

My situation is very simple, I am working on website which is translated in a number of languages. We have variants of the website customized to clients needs and they opt for the languages that best target their intended audience.

However, we have a problem with the translation process. The problem is not about versioning (we are programmers after all) or the database layout, I am really speaking about managing translation, the cost, and the mishaps.

I think we have identified 3 steps in the process so far.

**1. Preparing the documents to be sent**  

Typically, you want this to be automatic. It's a pain to waste human resources on this recurrent task

**2. Translating**  

It is not so easy to actually translate, there are various (and open) problems there: the lack of context for example since natural languages can be ambiguous and the use of synonyms does not help (especially since we are required to give English as a base language and we are a French team so we may not use idioms) 

**3. Integration / Feedback**  

Typical problem is a single word (used for a button) translated to a whole sentence, oups my layout gave way... we ask the translators not to increase the length by more than 25% but sometimes even this may break all hell and sometimes it really restrict them when there is space.

I would like to know how YOU handle this important step of internationalization. We have several brainstorming on this but nothing conclusive got out.

I'll give you our current process in an answer below, so that the question and the answer may be voted / commented independently.

Regards.