














Realtime TTS-2
built for people
It is the first speech model with reasoning.










Try it now
Open the playground ↗Ask your agent to add Inworld.
Realtime TTS-2
TTS docs ↗A new frontier voice model that feels as human as it sounds. Direct it in plain English, in about 500 languages and dialects.


"text": "I can't believe you actually did that.", "instruction": "delighted and laughing as you say it barely able to get the words out"
I can't believe you actually did that.
The conversation so far: a joke just landed
Okay, so what do you want to do next?
"voiceId": "Ashley", "language": "en-US"
Hi, I'm Ashley. A native voice, in every language you need.
"voiceDesign": { "designPrompt": "Warm, low-pitched woman in her late thirties with a slight rasp, like a late-night radio host" }Good evening, night owls. Pour something warm, we've got three hours of slow songs ahead.
Clone a voice from as little as 3 seconds of audio. Professional voice cloning is in beta.
Get word and character timings for captions, and visemes to drive lip-sync.
Put a tag such as [laugh] or [sigh] in the text where the sound should happen.
Add pauses with break tags, and use custom pronunciation or verbatim tags so names and booking codes are read correctly.
POST /v1/audio/speech takes OpenAI’s request format, so code written for OpenAI’s speech API works once you change the base URL and use an Inworld model and voice.
With zero data retention, Realtime TTS-2 and Flash process your text and audio without storing them.
Realtime TTS-2 decides how each line should sound. Speech Reasoning reads the meaning and picks the delivery, no direction needed.

Illustration: a written direction, not Speech Reasoning output
Sure. That's fine. Do whatever you want.
Written direction dismissive and slightly annoyed
Illustration: a written direction, not Speech Reasoning output
You left the stove on. Again.
Written direction exasperated and slightly judgmental
Illustration: a written direction, not Speech Reasoning output
Happy birthday, Dad. I wish you could have been here.
Written direction soft, wistful, and heavy with grief
For teams building for people
Case studies →


Inworld voices in LiveKit Agents, with no second API key.
“I've never seen steering work like this before TTS-2. The output is extremely natural and faithful to the steering prompt, even when it's hyper-specific.”
Creston Brooks, Co-founder and CTO, Luvu“The subtle details like natural pausing make it hard to differentiate between AI and human.”
Nash Ramdial, Developer Relations, Stream“We've always believed language learning should have no borders. TTS-2 just made that a lot more real.”
Dimitri Dekanozishvili, Co-founder, Talkpal“Realtime TTS-2 pushes further on a dimension VoiceRun customers care about: directability.”
Nick Leonard, CEO and Co-Founder, VoiceRunStart building
API reference ↗Realtime TTS-2 Flash from $5 per million characters. Pay as you go, and every plan lowers the rate.
curl -N -X POST https://api.inworld.ai/tts/v1/voice:stream \
-H "Authorization: Basic $INWORLD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "Okay, last one. You have got this.",
"voiceId": "Ashley",
"modelId": "inworld-tts-2",
"instruction": "warm and encouraging, a little playful",
"audioConfig": { "audioEncoding": "LINEAR16", "sampleRateHertz": 48000 }
}'
# NDJSON: one JSON object per line, base64 audio in result.audioContentSet INWORLD_API_KEY to your key from platform.inworld.ai.
Realtime TTS-2 built for people runs on Inworld. Who are you building for?
Questions
What is Realtime TTS-2?
Realtime TTS-2 is a new generation of text to speech model from Inworld AI, built for realtime conversation. It uses the conversation so far as context and takes natural-language voice direction the way developers prompt an LLM. It speaks about 500 languages and dialects with on-the-fly switching while keeping one voice identity. Realtime TTS-2 Flash is the fastest model in the family.
What is new compared to Realtime TTS 1.5?
Inworld AI's Realtime TTS-2 text to speech model now takes earlier turns of the conversation as context, so it adapts to what was just said. Voice direction is a natural-language string instead of a fixed emotion enum. Crosslingual switching keeps one voice identity across about 500 languages and dialects inside a single generation. Advanced Voice Design creates a saved voice from a written description. Customers on Realtime TTS 1.5 upgrade by changing the model ID.
How fast is Realtime TTS-2?
Inworld AI's Realtime TTS-2 Flash text to speech model returns first audio in as little as 50 ms, and Realtime TTS-2 in as little as 90 ms at P90. Realtime TTS-2 Flash is the fastest model in the family. On Coval's public board, Flash's first audio is as low as 50 ms, up to 3× sooner than ElevenLabs Flash v2.5.
How much does Realtime TTS-2 cost?
Realtime TTS-2, Inworld AI's text to speech model, costs $25 per million characters on demand and $12.50 on the Growth plan. Realtime TTS-2 Flash costs $15 on demand and $7 on Growth. On Enterprise, Realtime TTS-2 goes down to $10 per million characters and Realtime TTS-2 Flash down to $5, which is up to 16× less than the $80 per million characters that Eleven v4 lists.
What languages does Realtime TTS-2 support?
Realtime TTS-2, Inworld AI's text to speech model, speaks about 500 languages and dialects, and it can switch language inside a single generation while keeping the speaker's voice identity. You can give each language a voice native to it, or keep one voice across all of them. Inline language tags switch the language partway through a sentence. Realtime TTS-2 Flash covers fewer languages.
How do I control emotion and delivery in Realtime TTS-2?
Voice direction in Inworld AI's Realtime TTS-2 text to speech is a natural-language string, so you steer emotion and delivery the same way you prompt an LLM. Write the direction in plain words in the request's instruction field, such as "tired but warm, like she just got home" or "frantic, breathless, urgent". Use inline brackets only when the delivery changes partway through a line. The model layers that delivery on top of whichever voice you have chosen, and sounds such as [laugh] and [sigh] go in the text where they happen.
How do I migrate from another provider like ElevenLabs, Cartesia, or Google?
Moving to Inworld AI's text to speech API from ElevenLabs, Cartesia or Google usually means swapping the endpoint, changing the model ID and recloning your voices. Reclone from your original reference audio rather than a previous model's output, which preserves more fidelity. Code written for OpenAI's speech API also works once it points at https://api.inworld.ai/v1 with an Inworld model and voice. For ElevenLabs, a free migration tool, published on GitHub, moves your cloned voices across in a batch.
Can I use Realtime TTS-2 in a voice agent?
Yes, Inworld AI's speech to speech API uses Realtime TTS-2 or Realtime TTS-2 Flash as the voice of a live agent, on one connection that listens, reasons and talks. Open a WebSocket to wss://api.inworld.ai/api/v1/realtime/session with a session ID and protocol=realtime, authenticating with your API key from a server or a session token from a browser. Send a session.update event that sets session.audio.output.voice and session.audio.output.model, and read the audio from response.output_audio.delta events. Audio is PCM16, 24 kHz mono, base64. The docs include complete Node.js and Python example projects.

































