Planning a localization timeline: when to start, and what breaks if you don't
Localization is often treated as a task that happens 'near the end,' after the game itself is done. In practice it has its own schedule, with dependencies on the rest of development that are easy to miss until they cause problems — a translator working from a script that changed the next day, or a review pass with no time left before launch.
This article covers what needs to happen before translation can realistically start, how to run it alongside development instead of after it, and the difference between shipping every language on day one and adding languages later.
What has to happen before translation starts
Translation needs a stable, exportable source of text. That means your strings live somewhere a translator can read and write back to — not scattered across code — and that the text you hand over is close to final, not a placeholder draft that will be rewritten next week.
It also needs context. A translator working from a bare list of strings with no notes on who is speaking, in what tone, or what a variable will be replaced with produces guesses, not translations. Preparing that context — character notes, glossary terms, screenshots or mockups of where text appears — is itself work that has to happen before the text goes out, not after issues come back.
Why text freeze exists
A text freeze is a point after which a given batch of text will not change in meaning or wording, even if the surrounding game keeps evolving. It exists because translation is not instantaneous: by the time a translator finishes a line, a source line that changed after they started means their work is now translating something that no longer exists in the game.
Without a freeze, a few things break in predictable ways: translators redo work on lines that changed underneath them, the source and translated files drift out of sync so nobody is sure which version is current, and review time gets spent catching mismatches instead of catching translation quality issues. None of this requires a freeze on the whole game — only on the specific text batch being sent out at that time.
Running translation in parallel versus after
Sending an entire game's text to translation only after development wraps up is the safest choice in terms of avoiding rework, but it also means translation, review, and testing all queue up at the very end — right when the schedule has the least slack.
Running translation in parallel, in batches, as content is finished and frozen section by section, spreads that work across the whole development timeline instead of compressing it into the final weeks. It does require more process — tracking which batches are frozen, translated, and reviewed — but it turns localization from a single high-risk phase into a series of smaller, lower-risk ones.
Review and in-game testing take real time
Translated text is not done when the translator delivers it. It still needs to be checked in the actual game — not a spreadsheet — for lines that run off screen, placeholders that render incorrectly, text that overlaps other UI elements, and meaning that reads wrong once it is next to the art or the voice line it accompanies.
This pass takes time proportional to how much of the game there is to click through, and it usually surfaces issues that require a translator to revise a line, which means another round of review. Planning zero time for this step is one of the most common causes of a rushed, visibly broken localized release.
Simultaneous release versus a later language patch
Shipping every language at once means every language goes through the full schedule above before launch, with no slack to slip a language if it falls behind — a delay in one language can delay the whole release.
Adding a language after launch, as a patch, decouples that language's schedule from the original release. It lets you launch on time with the languages that are ready, and it gives a new language its own freeze, translation, and review cycle without pressure from the original launch date. The tradeoff is that players in that language wait, and any store page or marketing localized before the patch should be honest about which languages are in-game today versus coming later.