Quick answer: Unity Localization package returning ‘[Missing]’ in build? The String Table for the locale isn’t included — mark tables as Addressables and ensure the locale is selected at startup.

Strings show as ‘[Missing]’ in the build despite working in editor. The localized table isn’t in the player’s data.

Tables Are Addressables

The package stores tables as Addressables. Each locale’s table goes into the addressable group. Build → Update a Previous Build to ship language updates without a full app rebuild.

Default Locale Selection

LocalizationSettings.SetSelectedLocale(LocalizationSettings.AvailableLocales.GetLocale("en"));

If no locale is selected at runtime, lookups can’t resolve. Initialize the locale before the first UI loads.

Pre-Load on Startup

Add Locale + Localized String table loading to your boot scene. InitializationOperation completion is when strings become safe to read.

Verifying

The build shows localized strings in all configured languages. Missing keys raise warnings only for typos, not the entire table.

“Localized tables ship as Addressables. Select a locale at startup or [Missing] every key.”

Wire the localization init into your loading screen progress — users see the language switch happen, and missing-data crashes go away.