Bad pronunciation makes paid TTS feel cheap
Paid TTS is not only text becoming audio. It is a viewer buying a live moment. If the voice mangles the streamer's name, reads an emote like a normal word, stretches a username into nonsense, or turns a sponsor name into something embarrassing, the moment stops being funny for the wrong reason.
That does not mean every TTS message needs perfect voice direction. The rough edges are part of the joke sometimes. The problem is when the same rough edge keeps happening and the streamer has to explain it every stream. A pronunciation dictionary is how you turn repeated annoyances into a reusable rule.
StreamableBot can treat TTS like a moderated production queue instead of a blind audio pipe. The dictionary sits next to approval rules: pronounce this name this way, replace this emote with this word, never read this phrase, hold this kind of message for a mod note, and replay only after the corrected version is ready.
- Creator names and cohost names.
- Frequent viewer usernames that TTS breaks.
- Channel emotes, memes, and chat shorthand.
- Sponsor, charity, or event names that need clean pronunciation.
- Words that should be skipped, replaced, or held for review.
- Inside jokes that are funny only when read a specific way.
Start with the words chat already uses
Do not build the dictionary from theory. Pull it from the stream. Look at the last few paid TTS messages, chat commands, emotes, user names, common jokes, and moderator notes. The best entries are the ones that solve repeated live problems.
For example, a streamer with a hard-to-pronounce handle may need the handle written phonetically. A creator with a recurring guest may need that guest's name locked. A community with lots of emote spam may need emotes converted into short readable words instead of a long string of letters.
Keep the first version small. Ten to twenty entries are enough to make the stream feel more cared for. A dictionary with two hundred stale rules will slow moderators down and cause weird replacements nobody remembers approving.
- Add names that appeared in recent paid TTS purchases.
- Add emotes that viewers expect the streamer to understand.
- Add sponsor or event words before a sponsored stream.
- Add common misspellings only when they happen often.
- Remove rules that have not mattered in weeks.
Separate pronunciation from safety moderation
A pronunciation fix is not the same as a safety decision. A dictionary can make a word sound right. A moderation queue decides whether the message should play. Keep those jobs separate so mods do not accidentally approve unsafe text just because the pronunciation is known.
Twitch chat and chatbot docs make it clear that bots can receive messages, see deletions, and perform moderation actions when properly authorized. YouTube's live chat API also exposes message resources and moderation actions. Those platform tools are useful, but paid TTS still needs its own overlay-level judgment before audio hits the stream.
Write dictionary rules in three groups: pronunciation, replacement, and block or hold. Pronunciation changes how a safe word sounds. Replacement turns a safe shorthand into a readable word. Block or hold tells the queue that a message needs moderator action before playback.
- Pronounce: says the same word differently.
- Replace: swaps harmless shorthand for listener-friendly wording.
- Hold: sends the message to a moderator before audio.
- Block: prevents known unsafe phrases from becoming public audio.
- Note: gives the streamer context without showing the note publicly.
Make usernames readable without removing identity
Usernames are hard because they are part identity, part chaos. A name with numbers, underscores, repeated letters, or a foreign-language spelling may be obvious to chat and terrible for TTS. If the voice reads every character literally, the paid moment can become twenty seconds of garbage.
Use display-name rules for frequent supporters. If a viewer named xXSk8r_2009Xx is known in chat as skater, let the TTS say skater. If a username contains a word that should not be read aloud, the mod should be able to approve the message while hiding or replacing the spoken display name.
Do not over-normalize. Some viewers like hearing the silly version of their name. The rule should protect readability and safety, not flatten the community. Give mods the choice to use display name, spoken name, or anonymous support when needed.
- Known supporter: use their normal spoken nickname.
- Unreadable username: shorten only the spoken version.
- Risky username: hold for mod review before audio.
- Guest segment: read sender names only if the guest-safe mode allows it.
- Replay: correct the spoken name before replaying a failed TTS moment.
Treat emotes and slang like production copy
A lot of TTS weirdness comes from emotes. Chat understands them visually, but a voice model may read the letters like a word, spell them out, or say something that sounds unrelated. Decide which emotes should be spoken, skipped, or turned into a short cue.
For common emotes, a spoken cue can be better than literal reading. LUL can become laughs. KEKW can become laughing. A custom channel emote can become the joke name the streamer already uses. If an emote does not add anything in audio, skip it.
Slang needs the same treatment. A phrase that is fine in chat can sound harsher when spoken by a voice over the stream. If it would make a guest, sponsor, or new viewer uncomfortable, put it in manual review. Paid audio has a different weight than text scrolling by.
- Speak high-context emotes only when the streamer expects them.
- Skip emote chains that would be boring as audio.
- Replace repeated letters with one clean reaction.
- Hold slang that changes meaning when spoken out loud.
- Pause emote-heavy TTS during guest, sponsor, and serious segments.
Use modes for different stream segments
The same dictionary should not behave exactly the same all night. A late-night Just Chatting segment can allow more inside jokes. A guest interview needs cleaner names and fewer interruptions. A charity or sponsor segment should use stricter replacement and hold rules.
Use modes such as casual, guest, sponsor-safe, charity, IRL, and paused. The dictionary entries can stay the same, but the approval behavior changes. A joke nickname might play during casual mode and hold during guest mode. A sponsor name might be locked during sponsor-safe mode.
This is where StreamableBot should feel like a production tool, not a toy. Mods should see the current mode, the original message, the corrected spoken line, and the reason a message was held. The streamer should hear the funny version only after the queue has done the boring work.
- Casual: inside jokes and known emotes can play faster.
- Guest: names, questions, and references need stricter review.
- Sponsor-safe: brand words and claims are locked.
- Charity: donor intent and sensitive stories get priority.
- IRL: location clues and private details hold automatically.
- Paused: paid audio waits until the producer reopens it.
Replay rules matter
A failed TTS moment is not always a refund issue. Sometimes the voice mispronounced a name, the audio source was muted, or the stream was on a recovery scene. The replay rule should say when mods can replay, when they should credit, and when they should leave the message fulfilled.
If the voice misread a dictionary entry that should have existed, correct the entry before replaying. If the viewer submitted intentionally unreadable text, do not reward it with three attempts. If the message played over a scene where paid audio was supposed to be paused, credit or replay based on the stream's public rules.
Log corrections. If three viewers in one week need the same pronunciation fix, it belongs in the dictionary. If one viewer keeps buying messages that depend on breaking the voice, it belongs in moderation rules.
- Replay after a system mistake.
- Credit after a moderation or scene-state mistake.
- Reject if the message was intentionally unreadable or unsafe.
- Correct the dictionary before replaying the same line.
- Do not replay during privacy, reconnecting, sponsor, or guest-safe scenes.
Other resources
Use these references when connecting chat events, moderation decisions, browser-source audio, and paid TTS playback.
- Twitch Developers: Chat and Chatbots.
- Twitch Developers: EventSub subscription types.
- YouTube Live Streaming API: LiveChatMessages.
- YouTube Help: Moderate live chat.
- OBS Studio: Browser Source.
- StreamableBot features.
Quick answers
What is a TTS pronunciation dictionary?
It is a list of names, emotes, slang, replacements, and hold rules that tells the paid TTS workflow how text should be spoken or moderated before it plays on stream.
Should every viewer username get a pronunciation rule?
No. Add rules for frequent supporters, hard-to-read names, safety issues, and repeated mistakes. Too many stale rules make moderation slower.
Can a pronunciation dictionary replace moderation?
No. Pronunciation makes safe messages sound better. Moderation decides whether a message should become public audio at all.
Where does StreamableBot fit?
StreamableBot can keep paid TTS in a queue with modes, pronunciation fixes, moderator notes, replay rules, and OBS browser-source playback instead of sending raw text straight to audio.
