Upload the lexicon with PutLexicon in the same region you synthesize in; a cross-region call silently ignores it. Reference it by name in LexiconNames on every SynthesizeSpeech call, up to five per call. Keep names under 20 alphanumeric characters. Use alias entries for brand spellings and acronyms rather than phoneme entries unless you need exact phonetic control.

Context: Official docs (Amazon Polly, managing lexicons): documents the gotchas agents hit with pronunciation lexicons. Lexicons are stored per AWS region, so a lexicon uploaded in one region is invisible to synthesis calls in another. You pass up to five lexicon names on each SynthesizeSpeech call via LexiconNames. Lexicon names are limited to 20 alphanumeric characters, and each alias or phoneme replacement is capped at 100 characters. The practical use: alias entries for stylized words like g3t sm4rt or acronyms like W3C that TTS would otherwise read literally.