Google shipped two Gemini text-to-speech models on September 23, 2026 that share one API contract: Gemini 3.8 Flash TTS (gemini-3.8-flash-tts) for studio-grade acting and dialects, and Gemini 3.8 Flash-Lite TTS (gemini-3.8-flash-lite-tts) for high-volume, cost-sensitive voice work. If you are wiring agents, podcasts, or product narration, the useful question is not which launch demo sounds cooler. It is which model should own each request under latency, language, and fidelity constraints.
In short
- Both models use the same TTS schema. You route by changing the model ID.
- Flash prioritizes voice fidelity, acting nuance, regional dialects, and long-form multi-turn stability across 130 languages.
- Flash-Lite prioritizes throughput, lower latency, and cost across 101 languages, and is the documented replacement for
gemini-3.1-flash-tts-preview. - Migration matters: input text is a verbatim transcript. Put sustained style and speaker labels in
speech_metadata, or stage directions may be spoken aloud. - Unary 3.8 responses default to WAV (
audio/wav). Streaming defaults to headerless L16. Old PCM-to-WAV wrappers can break if you leave them in place. - Voice design and 30-second replication exist on both models, with consent checks, SynthID watermarking, and published AI Studio geo limits for replication.
- Scripted TTS is not a full-duplex Live voice runtime. For interruptible agent conversations, keep TTS and realtime stacks separate.
Flash vs Flash-Lite in one table
Google's model cards put the split in a single routing table. Both models accept text and return audio, support caching, and share token limits of 8,192 input / 16,384 output tokens.
| Dimension | Flash TTS (gemini-3.8-flash-tts) | Flash-Lite TTS (gemini-3.8-flash-lite-tts) |
|---|---|---|
| Primary strength | Maximum voice fidelity, acting nuance, dialect coverage | High throughput, low latency, cost efficiency |
| Best fits | Audiobooks, studio narration, complex multi-speaker dialogue, heavy vocal-burst acting, difficult pronunciation, regional dialects | High-volume production, real-time voice agent cascades, read-aloud, voice replication, everyday single-speaker generation |
| Languages | 130 | 101 |
| Role vs 3.1 | New flagship creative tier | Recommended replacement for gemini-3.1-flash-tts-preview |
Official cards: Gemini 3.8 Flash TTS and Gemini 3.8 Flash-Lite TTS. The speech-generation guide repeats the same when-to-use rules and shows single-speaker, multi-speaker, streaming, and format controls.
Google's launch post frames Flash as a creative studio for character design and line-by-line direction, and Flash-Lite as the scale lane for dubbing, audio content, and expressive voice agents. That marketing split matches the API docs: same knobs, different quality/cost tradeoff.
Routing checklist for agents and creators
Use this checklist before you pin a default model ID in production.
- Start with Flash-Lite when the surface is a high-QPS agent cascade, IVR-style turns, read-aloud, or bulk generation where cost and latency dominate.
- Promote to Flash when listeners hear acting gaps: weak dialect performance, mushy dual-speaker scenes, heavy vocal bursts, or long narrations that drift.
- Gate on language count. If the locale is outside Flash-Lite's 101 languages, you need Flash's 130-language list (or another vendor).
- Keep voice design / replication on either model, then A/B the resulting
voice_...ID. Docs list replication as a Flash-Lite strength for everyday production, but brand-critical personas may still prefer Flash after design. - Do not confuse TTS with Live duplex. Gemini TTS is for exact text recitation with fine style control. Interactive, interruptible voice agents belong on a realtime stack. If you are comparing duplex agent runtimes, see GPT-Live-1 in the API.
Practical pattern: Lite as the default lane, Flash as an overflow or premium lane keyed off content type (audiobook chapter, dialect scene, two-host podcast script) rather than a global "always Flash" switch.

What changed in the 3.8 speech_metadata migration
If you are moving from gemini-3.1-flash-tts-preview, treat this as a schema migration, not only a model rename.
- Text is verbatim. Strings like
Say cheerfully: Hello!orSpeaker 1: Hello!may be spoken. Move sustained delivery intospeech_metadata.styleand speaker labels intospeech_metadata.speaker. - Angle-bracket tags are for point-in-time vocal events (laughs, sighs, short pauses). Whispering or "out of breath" across a whole turn belongs in
style, not inline prose. - Every multi-speaker turn needs an explicit
speakerthat matches a configured speaker. - Design personas upfront with Voice design, then pass a
voice_...ID. Long "Director's Notes" blocks are a common drift source. - Unary output defaults to WAV with a RIFF header. Earlier models returned headerless L16 by default. If your code wraps PCM into WAV, remove that wrapper for unary 3.8, or set
response_formattoaudio/l16/ mu-law / A-law when your pipeline needs headerless audio. Streaming still defaults to headerless L16 chunks.
Multi-speaker in one request supports up to two speakers with prebuilt voices. Combining custom designed or replicated voices in multi-character dialogue requires synthesizing turns individually and concatenating 24 kHz PCM frames.

Voice design, 30-second replication, and SynthID risk
Both 3.8 TTS models plug into the same voice ecosystem:
- 30 prebuilt studio voices (Kore, Puck, and the rest of the published set)
- Extended Voice Library via
GET /v1beta/voices(Google's launch post also cites 2,000+ production-ready voices) - Voice design from natural-language prompts (persistent
voice_...IDs) - Voice replication from about 30 seconds of reference audio plus a consent recording
Trust controls called out in the launch post: consent verification before replication, SynthID watermarking on Gemini Audio outputs, and C2PA credentials on the replication path. AI Studio voice replication is not available in Illinois, Texas, the EEA, the UK, Switzerland, and India. Stateful custom voices are capped at 200 per project with a 1-year TTL; optional stateless voicekey_... replication keys last 7 days.
Google reports that Flash TTS took the #1 overall spot on Hume AI's Voice Design Benchmark (71.4) and led accent modeling (60.8), with Flash and Flash-Lite placing #1 and #2 on Hume's Overall Quality Index. Treat those as Google-reported third-party placements from the launch post, not as an independent re-score in this article. Flash-Lite's exact Overall Quality Index number is not printed in the launch prose.
Pricing and latency signals (what is published)
Official Gemini API pricing (Standard paid tier, as fetched 2026-09-24):
| Model | Text input / 1M | Audio output / 1M | After 2026-12-31 |
|---|---|---|---|
| Flash TTS | $0.50 | $9.00 | $1.00 text / $18.00 audio |
| Flash-Lite TTS | $0.50 | $6.00 | $1.00 text / $12.00 audio |
| 3.1 Flash TTS Preview (compare) | $1.00 | $20.00 | (legacy preview rates) |
Published rates are per 1M tokens (text input and audio output). Google's pricing page does not document a tokens-per-second meter for Gemini 3.8 TTS, so this post sticks to per-1M figures only. Batch and Flex list lower audio rates for overnight or non-interactive jobs (Flash $4.50 then $9.00; Lite $3.00 then $6.00 per 1M audio tokens). Priority is higher (Flash $16.20 then $32.40 audio; Lite $10.80 then $21.60; Priority text $0.90 then $1.80 on both).
Google does not publish a Flash vs Lite latency SLA table in the model cards reviewed here. The published signal is positioning: Lite for high-throughput agent cascades; Flash when fidelity wins.
Practitioner check: Simon Willison shipped a bring-your-own-key Gemini 3.8 TTS playground the same day, noting about 20 seconds to generate 1 minute 18 seconds of Flash TTS audio for roughly 2.74 cents. That is an anecdote, not a vendor benchmark.
Pricing and plan details are as published by the vendor around 2026-09-24 and can change - confirm on the official site before you buy or ship.
How practitioners call it
A minimal single-speaker path (Interactions API shape from the docs): send the verbatim transcript with a speech_metadata annotation for style, set response_format to audio, and pick a voice in generation_config.speech_config. For two-host scripts, configure mode: "conversational" with two speakers and annotate each turn's speaker + optional style.
Google AI Studio exposes an audio playground for voice design, replication (where allowed), and dual-speaker screenplay direction. Simon's BYOK playground is useful when you want bookmarkable compose URLs and request/response inspection without leaving your own keying model.
FAQ
Can I route one language to Flash and the rest to Lite in the same app?
Yes. Keep one request schema and swap only the model ID per locale or per turn. Use Flash-Lite as the default cascade, then promote specific languages or high-stakes lines to Flash when dialect or acting quality misses the bar. Re-listen after each swap - the API shape is shared, but fidelity is not identical.
After the promo ends on Jan 1, 2027, does Batch or Flex still make sense for overnight audiobook jobs?
Often yes for non-interactive jobs. When Standard promo rates end, the pricing page's Batch and Flex audio columns stay worth comparing for overnight narration and bulk agent script generation. Confirm the post-promo Standard rates ($1.00 text / $18.00 Flash audio and $1.00 / $12.00 Lite) against Batch/Flex before you lock a budget.
Can I ship voice replication to UK, EEA, or India users through the API if AI Studio blocks it there?
Google's launch post lists AI Studio voice replication as unavailable in Illinois, Texas, the EEA, the UK, Switzerland, and India. It does not publish a matching public API geo matrix in the sources cited here, so treat Studio blocks as confirmed for Studio UX only. Do not assume the API unlocks - or mirrors - those regions. Verify current API geo and consent rules with Google before you ship replication-dependent UX there.
Should I use a stored voice_... or a stateless voicekey_... for short-lived agent sessions?
Prefer a short-lived voicekey_... (replication with store=False, 7-day TTL in the docs) when the voice should not linger in the project. Use a stored voice_... (store=True, prompted or replicated) when the same persona must return across days - stateful custom voices share a 200-per-project cap and a 1-year TTL. Match retention to your privacy model; do not keep replication artifacts longer than the product needs.
How do I tell end users that agent speech carries a SynthID watermark?
Say it plainly in product copy or a help article: generated speech may include an inaudible SynthID watermark and related provenance signals so synthetic audio can be identified later. Keep the wording accurate to Google's published SynthID/C2PA notes, and avoid implying the watermark is audible or that it blocks all misuse.
Bottom line
Default high-volume agent and read-aloud traffic to Flash-Lite, promote to Flash when dialects, acting, or long-form dual-speaker quality miss the bar, and treat speech_metadata plus WAV defaults as hard migration work - not footnotes. Verify pricing, geo limits, and consent flows on Google's docs before you lock a production voice lane.




