Gemini 3.8 Flash TTS
Google's speech model that turns text into spoken audio, with 70 voices for a single narrator or a two-speaker dialogue, on Flash and Flash Lite tiers.
| Property | Value |
|---|---|
modelSlug | gemini-tts |
| Kind | Speech |
| Maker | |
Copies per request (variations) | 1 only |
| How the cost is counted | by the length of the text (held per 1,000 characters, then settled on what was actually used), at a rate that depends on tier and mode |
| Over MCP | not yet; use the REST API or the studio |
Credit amounts are left out because they change. The lowest price is creditCost on GET /v1/models, and POST /v1/jobs answers with the exact creditCost of a request.
input fields
Send the fields below inside the input object. A field you leave out takes its Default. Unknown field names are dropped without an error, so check the spelling if a setting seems to have no effect.
| Field | Type | Required | Default | Rules |
|---|---|---|---|---|
prompt | string | – | – | Up to 10,000 characters |
tier | string (one of) | – | flash | flash (Flash), flash_lite (Flash Lite) |
mode | string (one of) | – | single | single (Satu suara), dialogue (Dialog) |
voice | string (one of) | – | Fola | Voice. Bodi (Bodi - Tutor), Lumi (Lumi - Tutor), Sadaltager (Sadaltager - Tutor), Sola (Sola - Tutor), Sulafat (Sulafat - Tutor), Varo (Varo - Tutor), Zephyr (Zephyr - Tutor), Koda (Koda - Commercial Voiceover), Kore (Kore - Commercial Voiceover), Nika (Nika - Commercial Voiceover), Tavi (Tavi - Commercial Voiceover), Zeno (Zeno - Commercial Voiceover), Algenib (Algenib - Instructional), Despina (Despina - Instructional), Erinome (Erinome - Instructional), Kira (Kira - Instructional), Ludo (Ludo - Instructional), Mako (Mako - Instructional), Rasalgethi (Rasalgethi - Instructional), Rina (Rina - Instructional), Alnilam (Alnilam - Podcast), Brio (Brio - Podcast), Jori (Jori - Podcast), Laomedeia (Laomedeia - Podcast), Rami (Rami - Podcast), Veda (Veda - Podcast), Achird (Achird - Storyteller), Enzo (Enzo - Storyteller), Riko (Riko - Storyteller), Sami (Sami - Storyteller), Zali (Zali - Storyteller), Zubenelgenubi (Zubenelgenubi - Storyteller), Algieba (Algieba - Digital Assistant), Aoede (Aoede - Digital Assistant), Autonoe (Autonoe - Digital Assistant), Callirrhoe (Callirrhoe - Digital Assistant), Enceladus (Enceladus - Digital Assistant), Gero (Gero - Digital Assistant), Iapetus (Iapetus - Digital Assistant), Neno (Neno - Digital Assistant), Olin (Olin - Digital Assistant), Tari (Tari - Digital Assistant), Umbriel (Umbriel - Digital Assistant), Achernar (Achernar - Call Center), Charon (Charon - Call Center), Daro (Daro - Call Center), Fola (Fola - Call Center), Hali (Hali - Call Center), Milo (Milo - Call Center), Puck (Puck - Call Center), Arlo (Arlo - Concierge), Cleo (Cleo - Concierge), Fenrir (Fenrir - Concierge), Finn (Finn - Concierge), Leda (Leda - Concierge), Lora (Lora - Concierge), Orus (Orus - Concierge), Enya (Enya - Tech Support), Jett (Jett - Tech Support), Knox (Knox - Tech Support), Nyla (Nyla - Tech Support), Sadachbia (Sadachbia - Tech Support), Vindemiatrix (Vindemiatrix - Tech Support), Cruz (Cruz - Professional), Elio (Elio - Professional), Gacrux (Gacrux - Professional), Pulcherrima (Pulcherrima - Professional), Schedar (Schedar - Professional), Tova (Tova - Professional), Zuri (Zuri - Professional) |
voice_2 | string (one of) | – | Zephyr | Second voice. Bodi (Bodi - Tutor), Lumi (Lumi - Tutor), Sadaltager (Sadaltager - Tutor), Sola (Sola - Tutor), Sulafat (Sulafat - Tutor), Varo (Varo - Tutor), Zephyr (Zephyr - Tutor), Koda (Koda - Commercial Voiceover), Kore (Kore - Commercial Voiceover), Nika (Nika - Commercial Voiceover), Tavi (Tavi - Commercial Voiceover), Zeno (Zeno - Commercial Voiceover), Algenib (Algenib - Instructional), Despina (Despina - Instructional), Erinome (Erinome - Instructional), Kira (Kira - Instructional), Ludo (Ludo - Instructional), Mako (Mako - Instructional), Rasalgethi (Rasalgethi - Instructional), Rina (Rina - Instructional), Alnilam (Alnilam - Podcast), Brio (Brio - Podcast), Jori (Jori - Podcast), Laomedeia (Laomedeia - Podcast), Rami (Rami - Podcast), Veda (Veda - Podcast), Achird (Achird - Storyteller), Enzo (Enzo - Storyteller), Riko (Riko - Storyteller), Sami (Sami - Storyteller), Zali (Zali - Storyteller), Zubenelgenubi (Zubenelgenubi - Storyteller), Algieba (Algieba - Digital Assistant), Aoede (Aoede - Digital Assistant), Autonoe (Autonoe - Digital Assistant), Callirrhoe (Callirrhoe - Digital Assistant), Enceladus (Enceladus - Digital Assistant), Gero (Gero - Digital Assistant), Iapetus (Iapetus - Digital Assistant), Neno (Neno - Digital Assistant), Olin (Olin - Digital Assistant), Tari (Tari - Digital Assistant), Umbriel (Umbriel - Digital Assistant), Achernar (Achernar - Call Center), Charon (Charon - Call Center), Daro (Daro - Call Center), Fola (Fola - Call Center), Hali (Hali - Call Center), Milo (Milo - Call Center), Puck (Puck - Call Center), Arlo (Arlo - Concierge), Cleo (Cleo - Concierge), Fenrir (Fenrir - Concierge), Finn (Finn - Concierge), Leda (Leda - Concierge), Lora (Lora - Concierge), Orus (Orus - Concierge), Enya (Enya - Tech Support), Jett (Jett - Tech Support), Knox (Knox - Tech Support), Nyla (Nyla - Tech Support), Sadachbia (Sadachbia - Tech Support), Vindemiatrix (Vindemiatrix - Tech Support), Cruz (Cruz - Professional), Elio (Elio - Professional), Gacrux (Gacrux - Professional), Pulcherrima (Pulcherrima - Professional), Schedar (Schedar - Professional), Tova (Tova - Professional), Zuri (Zuri - Professional) |
style | string | – | – | Speaking style. Up to 1,000 characters |
dialogue_turns | object[] | – | – | Dialogue. Up to 30 entries; each entry's fields are in the dialogue_turns table below |
filler_words | boolean | – | false | – |
dialogue_turns entries
Every object inside dialogue_turns takes these fields.
| Field | Type | Required | Default | Rules |
|---|---|---|---|---|
speaker_id | string (one of) | – | Speaker 1 | Speaker 1, Speaker 2 |
text | string | yes | – | Up to 10,000 characters |
style | string | – | – | Up to 1,000 characters |
Rules by setting
This model runs a different version depending on what you send. The rules below are checked before any credits move; a request that breaks one is refused with 400 and a message naming the field.
tier = flash and mode = single
voice_2andfiller_wordsare not used; any value sent is ignored.- Takes no entries in
dialogue_turns; a request that fills it is refused. promptat least 1 characters.
tier = flash and mode = dialogue
promptandstyleare not used; any value sent is ignored.dialogue_turnsneeds at least 1 entries.
tier = flash_lite and mode = single
voice_2andfiller_wordsare not used; any value sent is ignored.- Takes no entries in
dialogue_turns; a request that fills it is refused. promptat least 1 characters.
tier = flash_lite and mode = dialogue
promptandstyleare not used; any value sent is ignored.dialogue_turnsneeds at least 1 entries.
Example request
{
"modelSlug": "gemini-tts",
"input": {
"prompt": "Welcome to Kopi Senja. Every iced coffee is twenty percent off today."
}
}
