> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gmicloud.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# inworld-tts-2-flash

> API usage guide for inworld-tts-2-flash.

**Model ID**

```bash theme={null}
inworld-tts-2-flash
```

**Calling method:** sync

# Inworld Realtime TTS-2 Flash API Usage Guide

## Overview

**Realtime TTS-2 Flash** (`inworld-tts-2-flash`) is Inworld's fastest and lowest-cost voice
model, built for latency-critical, high-volume workloads such as realtime agents, support
lines, and game characters.

It shares the Realtime TTS-2 voice inventory and language coverage with `inworld-tts-2`,
trading natural-language steering for roughly 2.5x lower end-to-end latency and a lower
price per character.

### Key features

* **282 built-in voices** across 15 language groups, 200+ languages and locales supported
* **Lowest latency** in the Inworld family: 20 ms P90 time-to-first-byte server-side;
  measured \~0.7 s end-to-end for a short line versus \~1.7 s on `inworld-tts-2`
* **Word and character timestamps** with phoneme-level timing and viseme symbols for lip-sync
* **Eight audio formats**: MP3, LINEAR16, WAV, PCM, OGG\_OPUS, FLAC, ALAW, MULAW
* **Inline non-verbals**: `[laugh]`, `[breathe]`, `[sigh]`, `[cough]`, `[yawn]` and more render
  as real sounds rather than spoken words
* **SSML pause control**: `<break time="1s" />` anywhere in the text, up to 20 breaks per request
* **Verbatim spelling**: `<verbatim>AHAA7771Z</verbatim>` reads alphanumerics character by character
* **Text normalization**: automatic expansion of currency, dates, phone numbers, emails, symbols

### Choosing between TTS-2 and TTS-2 Flash

|                                                              | `inworld-tts-2`      | `inworld-tts-2-flash`                |
| ------------------------------------------------------------ | -------------------- | ------------------------------------ |
| Natural-language steering (`instruction`, `[shouting]` tags) | Yes                  | **No, instruction tags are ignored** |
| Delivery mode (STABLE / BALANCED / CREATIVE)                 | Yes                  | No                                   |
| Latency (short line, end to end)                             | \~1.7 s              | **\~0.7 s**                          |
| Price                                                        | \$25 / 1M characters | **\$15 / 1M characters**             |

Use `inworld-tts-2` when delivery has to be directed. Use `inworld-tts-2-flash` when latency
and cost dominate and the voice itself carries the performance.

## Request notes

* **`text` is capped at 2,000 characters** per request; longer input returns HTTP 400.
  Markup tags count toward the limit, and toward billing.
* **`voice_id` is required.** All 282 voices work with this model.
* **`sample_rate_hertz` is codec dependent.** MP3 accepts 16000, 22050, 24000, 32000, 44100
  and 48000, but **not 8000**. ALAW and MULAW are 8000 only. LINEAR16, WAV, PCM and OGG\_OPUS
  accept 8000 through 48000.
* **`bit_rate` applies to MP3 and OGG\_OPUS only** (32000-320000). Low bit rates force the
  encoder down to a lower output sample rate.
* **Steering is not available on this model.** `[shouting]`, `[whisper]` and the request-level
  `instruction` field are accepted but produce no audible change; the tags are stripped from
  the text and never spoken. Non-verbal sound tags such as `[laugh]` do work. Use
  `inworld-tts-2` when you need directed delivery.
* **`temperature`** (0-2) is available on this model. Inworld's docs list temperature as
  unsupported on `inworld-tts-2`, not on Flash. It has no default here: omit it and the
  vendor applies its own default of 1.0.
* **`enhance_generation`** applies denoising to the output to reduce background noise
  and artifacts. Defaults to false.
* **`pitch` and `seed` are real fields that Inworld does not document publicly.**
  `audioConfig.pitch` is validated server-side (out-of-range returns "audioConfig.pitch
  should be within the range of -5.0 to 5.0.") and `seed` is a recognised request field.
  Because they are undocumented, Inworld may change or remove them without notice, and
  `seed` in particular does not make output reproducible.

## Output

Audio is returned as a GCS URL in `outcome.audio_url`, with `outcome.medias[0].url` carrying
the same URL in the unified media format. When `timestamp_type` is `WORD` or `CHARACTER`,
alignment data is returned as an additional `medias` entry under `timestampInfo`.

## Pricing

\$15 per 1,000,000 characters (on-demand) = 15,000 micro-USD per 1,000 characters.
Billed on input text length counted in Unicode characters, including markup tags.
Source: [https://inworld.ai/pricing](https://inworld.ai/pricing) (verified 2026-08-31).
