What is Fallback Locale?
A fallback locale is the locale the translation layer consults when the active locale has no value for a key. If a French user hits a key that exists only in English, they see the English string instead of a raw key or an error. Fallbacks keep partially translated apps shippable while coverage catches up.
Laravel configures this as fallback_locale in config/app.php, and JSON-style translations fall back naturally because the key is the source text. Fallback chains can be more nuanced than a single hop: a common pattern is region to language to default, so pt_BR falls back to pt before en.
The trap is that fallbacks hide gaps. Users see mixed-language screens nobody reports, and nothing fails loudly. Treat the fallback as a safety net, not a strategy: track translation coverage per locale explicitly, and alert on missing keys rather than discovering them in production screenshots.
// config/app.php
'locale' => 'fr',
'fallback_locale' => 'en',
// Key missing in fr, present in en:
__('billing.invoice_ready'); // returns the English string