Guide
Text to Speech Emotion: How Emotion Control Works
How emotion control works in text to speech: style prompts, inline tags, and reference audio, plus a model-by-model look at what to expect locally on a Mac.
Free plan with Kokoro voices, scripts up to 1,500 characters · 3-day Pro trial, then $49 once
Direct answer: in text to speech, emotion is not one setting but three levers: a written style instruction, an inline tag placed in the script (such as [whisper] or [laugh]), or a reference recording whose mood the model copies. Expect a direction rather than a precise dial, because the same cue can land differently across voices and some models ignore emotion controls completely. This guide explains how each lever works, which Murmur models support which one, and how to test a line before a full read.
The three ways to control emotion in text to speech
Every capable engine uses one or more of these three levers, and they are not interchangeable. A style instruction steers a whole passage. An inline tag changes a single moment. A reference recording sets a baseline you can build on. Knowing which lever a model actually supports saves you from typing tags that the model will simply read out loud.
| Lever | How you use it | What it changes | Where it works best |
|---|---|---|---|
| Style instruction | Write a description such as a warm, reassuring voice, or a delivery note such as read this like a news anchor. | The broad tone, mood, and reading style of the passage. | Voice design and models that accept a style prompt. |
| Inline tag | Type a cue in the script exactly where the delivery should change, for example [whisper] or [laugh]. | Local emphasis, emotion, and non-speech sounds at that point in the line. | Models built to parse tags, typically expressive or second-generation families. |
| Reference recording | Clone a voice from a sample that already carries the mood you want. | Timbre plus the speaking style and emotional tendency of the sample. | Cloning workflows, when you can record the feeling you need. |
The levers overlap in practice. Punctuation, word choice, and sentence length already move delivery before any explicit control appears: a short fragment after a period reads heavier than the same words inside a flowing clause. That is why a voice can sound more emotional even when you change nothing but the writing. When a tool also offers a formal control, use the writing first and the control second, and reach for a tag or a style prompt only when the plain text cannot get you close enough.
What to expect: emotion is a direction, not a dial
Treat emotion control as a direction you point a voice toward, not a value you set with confidence. Vendor documentation says this plainly. ElevenLabs notes that its audio tags are not perfect and that a tag can occasionally be interpreted as a request for a sound effect rather than a delivery change, and its guidance for earlier models suggests conveying emotion through narrative context and dialogue tags instead. Resemble documents that a higher Chatterbox exaggeration value tends to speed up speech and needs a compensating setting to keep the pace deliberate. These controls move several things at once, so a stronger emotion is rarely only a stronger emotion.
There is also a practical trap. A model that does not parse tags will usually speak them: paste [laugh] into an engine that only reads plain sentences and the listener hears the word inside the brackets. Before you write emotion cues into a long script, run one test line through the exact model you plan to use and listen for whether the tag was performed or pronounced.
- The same tag can sound different on two voices, so audition the line on the voice you intend to use before a long read.
- Delivery can drift as a passage continues, so check the middle and the end, not only the opening line.
- A tag that a model does not parse may be spoken aloud as text, so match the tag to the model.
- Stronger is not automatically better: pushed settings can add artifacts or rush the pace.
- Punctuation, capital letters, and sentence length change delivery even when you add no tag at all.
Which Murmur models handle emotion
Murmur ships several model families, and they do not expose the same emotion controls. Kokoro, the bundled lightweight option, is built for clear preset narration rather than emotional direction, so it has no inline tags. The expressive and cloning families carry emotion in different ways. The table below summarizes what each model provides; check the model list in the app for the current set, since installable models change. Murmur is a local-first macOS voice studio for Apple Silicon and Intel Macs running macOS 15 or later, so every model below runs on your own machine.
| Model | Emotion control | Notes |
|---|---|---|
| Kokoro | No inline emotion tags | Bundled preset voices with speed control; shaped for clear narration. |
| Chatterbox Turbo | Inline reaction tags such as [laugh] and [sigh] | English voice cloning; the tags are typed directly into the script. |
| Chatterbox Multilingual | Cloning across 23 languages | Inline reaction tags are hidden for this variant. |
| Fish Audio S2 Pro | Inline expression tags typed in the script | Cloning model with fine-grained expression control. |
| Breeze TTS 2 | Style instruction, voice design, and vocal events | English and Chinese; a written direction sets the tone. |
| Voice Design (Qwen3) | A voice described in natural language | Designs a voice from a prompt instead of cloning one. |
For building a voice from a description rather than a recording, the guide to voice design prompts for creators shows how to write a prompt that actually changes the output. To choose between a cloned voice, a designed voice, and a converted one, voice cloning versus voice design versus conversion maps the differences. If you want the expressive open models compared on the same ground, Moss TTS versus Chatterbox versus Zonos2 is the head-to-head.
A worked example: one line, three readings
Here is the same sentence handled three ways. The first two need a model that accepts a style prompt or inline tags; the third works on any cloning model.
Neutral line: We need to tell the team the launch has slipped to Friday. Reading 1, style instruction: Read this with a calm, steady tone, the way you would deliver bad news you have already accepted. Reading 2, inline tags: [calm] We need to tell the team the launch has slipped to Friday. [sigh] But we still have the weekend. Reading 3, reference recording: Use a sample of someone speaking quietly and evenly, then keep the same words. The model copies the steady, low-energy delivery along with the voice.
Original sample lines for illustration
Notice what each version asks for. The style instruction sets a tone for a whole passage, which is useful when a paragraph should feel consistent from start to finish. The tags change specific beats, so the voice can drop into a sigh and then lift, which suits dialogue and short-form delivery. The reference recording asks for the least instruction and the most setup: you first have to capture a sample with the mood you want. Inline cues such as [calm] and [sigh] are only performed by models that parse them, and on a model that does not, those brackets become spoken words.
A practical workflow for emotional narration
Work in this order so that each step stays cheap to redo.
- Write the plain script first and read it aloud. Fix the sentence that carries the emotion before you add any control.
- Pick the model that fits the job: a tag-aware expressive model for beats, a voice design model for a described tone, or a cloning model when a recording sets the mood.
- Generate two versions of one difficult line, one with a tag or style note and one without, then compare them on the same voice.
- Keep the tag list short. One clear cue per sentence is easier to control than several stacked together.
- Check the middle and the end of the passage, not only the opening line, because delivery can drift as the model continues.
- Lock the settings that worked, render the full read, and spot-check a few lines before you export.
When a line still misreads, the fix is usually punctuation and wording rather than the model, and the guide on skipped words and punctuation fixes covers that cleanup. For a delivery that needs a recording's energy changed rather than a script rewritten, the speech to speech voice replacement and emotion walkthrough covers the conversion route. If you want to hear how a voice holds up across a longer emotional passage before you commit, the emotional documentary voice test is a useful reference.
When Murmur is not the right choice
Murmur is a desktop app for Apple Silicon and Intel Macs running macOS 15 or later, and for 64-bit Windows 10 and 11 as a beta. It will not help if you need a phone or browser app, live or real-time streaming speech, or several people editing one project in a shared cloud workspace. It also does not transcribe speech, so it cannot turn a recorded emotional performance into a script. And when a project genuinely needs a trained actor with a director in the room, no local model replaces that. Murmur fits best when you want private, repeatable emotional narration that you can regenerate line by line on your own machine, with no per-character fees.
Frequently asked questions
Sources
- ElevenLabs: Text to Speech best practices (audio tags and emotion)Accessed 2026-10-14
- Fish Audio: Emotion Control documentationAccessed 2026-10-14
- Resemble AI: Chatterbox TTS model card (emotion exaggeration control)Accessed 2026-10-14
Direct emotion in your narration with Murmur
Murmur is a local-first voice studio for Apple Silicon and Intel Macs running macOS 15 or later, with text to speech, voice cloning, voice design, and multi-speaker projects that run on your own machine. The website edition is $49 one-time, with a free plan and a 3-day Pro trial, and a 7-day refund policy. Listen to the public samples before you buy.
macOS 15+ · Apple Silicon and Intel Macs · Windows beta · 7-day refund policy