Skip to main content

Gemini 3.8 Flash-Lite TTS is Google's faster, lower-cost text-to-speech model: pick one of 30 voices and get a 24 kHz mono WAV, usually within seconds. Dialogue supports up to two voices, and punctuation shapes the delivery.

From $0.00021/s

Workbench

Input

Text to speech
Provide at least one of theseRequirement met
109/5000
The words to be spoken, exactly as written. Bracketed cues such as [sighs] are not reliably performed and may be read aloud; spell sounds out instead. Up to 5,000 characters. For a conversation between two voices, use dialogue instead. at least 1 characters · at most 5000 characters

This model reads tags like [sighs] aloud. Spell sounds out instead, like “Mmm…” or “Haha”.

About 10 sec of audio (rough estimate)

Dialogue0/20
A scripted conversation for up to two voices, used instead of text: up to 20 lines, each with speaker (a name from speakers) and text of up to 250 characters. Lines are performed in order. Billed per second of audio returned, like text. at least 1 items · at most 20 items
Speakers0/2
The cast for dialogue: one or two entries, each with a name the lines refer to, a voice_id, and optionally accent, style, pace and profile (a short description of who is speaking, which is not read aloud). Anything a speaker leaves out falls back to the top-level accent, style and pace. Does not change the price per second. at least 1 items · at most 2 items
One of 30 prebuilt voices, each with a fixed character. Defaults to Kore. It voices text; in dialogue each speaker sets its own voice_id.
Style
WhisperEmpatheticVocal smileNewscasterPromo hypeDeadpan
Overall manner of the reading. Leave empty to use the voice's own default manner. In dialogue it applies to speakers that set none.
Pace
NaturalRapid-fireUnhurriedStaccato
Rhythm of the reading: natural, rapid_fire (fast and clipped), the_drift (slow and lingering) or staccato (short, separated phrases). Omit it to keep the voice's own rhythm; in dialogue it applies to speakers that set none. Slower pacing yields more seconds of audio, which is what you pay for.
English accent for the reading. Omit it to use the voice's own accent. In dialogue it applies to speakers that set none.
0/1000
Free-text direction on how to read: pace, mood, distance from the microphone, who is listening. Shapes the delivery and is not spoken. Up to 1,000 characters. at most 1000 characters

Never read aloud. It only shapes how the script is performed.

0/500
Where and to whom the words are spoken, such as “a quiet hotel room after midnight”. Shapes the delivery and is not spoken. Up to 500 characters. Does not change the price per second. at most 500 characters
Temperature
Variation between takes, from 0 to 2: higher values make the delivery less predictable. Leave it unset to use the model's default. Does not change the price per second. no lower than 0 · no higher than 2
Safety checkerOff

SpicyAPI does not run a safety checker on this model. Your prompt and media go to the model as written, and the model itself decides what comes back.

Checking your account before enabling submission and pricing.

Output

Ready for a new run
Example result
0:00 / –:––

Related models and next tasks

Missing the model you need?

Tell us what to add and where you would use it. Requests go to the people who decide what gets onboarded next.

A script goes in, a WAV file comes back in seconds

Gemini 3.8 Flash-Lite TTS is Google's fastest, lowest-cost text-to-speech model on SpicyAPI: send a script of up to 5,000 characters and one of 30 prebuilt voices, and a single WAV file comes back, usually within seconds. In our tests the median task finished generating in about 7 seconds, and a 270-character paragraph came back as 22 to 26 seconds of audio. There are no style, accent or direction fields on this endpoint -- punctuation and word choice carry the delivery -- and bracketed cues such as [sighs] are not reliably performed, so sounds should be spelled out instead. SpicyAPI adds no content filter, and in our tests it read NSFW scripts in full.

Open the playground
Voices
30 prebuilt voices, one per request
Script length
Up to 5,000 characters
Typical speed
Median generation around 7 seconds
Output
One WAV file, 24 kHz, 16-bit mono
Price
$0.00021 per second of audio returned
Content filter
None -- every test script read as written
Speed
Built for volume, not for directionWith only text and voice_id to set, there is nothing to tune beyond picking a voice, which makes this the model to reach for when you need many short lines out fast rather than one performance shaped in fine detail.
Sound cues
Write sounds as sounds, not as tagsBracketed cues such as [sighs] or [laughs] are not reliably performed on this endpoint -- in our tests the model sometimes read the tag word aloud instead. Spelling a sound out ("Mmm...", "ha...") worked consistently; when performed cues matter, Gemini 3.8 Flash TTS is the sibling to reach for.
Billing
Pay for the audio you got, not the audio you asked forThe charge is measured from the WAV file itself, in seconds, after the task finishes. A 660-second hold covers the run while it is in progress, and the unused part is released once the audio is measured; a failed request is not charged.

What the Gemini 3.8 Flash-Lite TTS API does well

  • Fast turnaround on short scripts

    Median generation time in our tests was about 7 seconds for a paragraph of roughly 300 characters, which makes this endpoint a reasonable default for narration batches, chat replies and other short lines where waiting is the main cost.

  • 30 voices with a fixed character

    Each of the 30 prebuilt voices keeps the same tone from clip to clip -- pick one for a series and it stays recognizable across scripts and languages.

  • Reads more than 100 languages without a setting

    The language of the script is detected automatically; there is no language field to set and no detection pass to run in front of the call.

  • No content filter

    SpicyAPI applies no filter of its own. In our tests the model read our strongest first-person and narrated test scripts word for word, without skipping or cutting the clip short.

  • Lossless WAV output

    The result is a single 24 kHz, 16-bit mono WAV file, ready to edit, mix or re-encode without a lossy intermediate step.

  • Billed on the audio that comes back

    Charging is measured from the finished file rather than estimated from the script, so a reading that comes back shorter than expected costs less, not the same as a long one.

Who Gemini 3.8 Flash-Lite TTS is for

  • High-volume narration teams

    Turning batches of short scripts into audio fast

    Product copy, lesson scripts and article read-outs are the kind of job this endpoint is built for: many independent, fairly short requests where turnaround and cost per line matter more than a nuanced performance.

  • Chatbot and companion builders

    Giving a character a voice in a few seconds

    Short, spoken-style replies generated on the fly benefit from the median 7-second turnaround; picking one voice and keeping it for a character keeps the identity consistent across a conversation.

  • Uncensored audio and fiction creators

    Reading unfiltered scripts as written

    In our tests, our strongest monologue and narration scripts were read in full, word for word, with nothing skipped. What you publish, and the rights to the script, remain your responsibility.

  • Video and avatar pipelines

    Generating the voice track first, animating second

    Render the line here, then hand the WAV to a talking-avatar or lip-sync step; the length of the audio sets the length of the downstream clip.

How to call the Gemini 3.8 Flash-Lite TTS API

  1. Write the script in text

    Up to 5,000 characters, exactly as it should be spoken. Punctuation does most of the work: commas and ellipses slow the reading down, short sentences make it more conversational.

  2. Pick a voice with voice_id

    Defaults to Kore. Each of the 30 voices has a fixed character, so pick once and keep it for a series rather than switching between calls.

  3. Spell sounds out instead of bracketing them

    For sighs, laughs or breaths, write "Mmm..." or "ahh..." rather than [sighs] -- bracketed tags are sometimes read aloud instead of performed on this endpoint.

  4. Send the request and wait out the hold

    A 660-second hold is placed on your balance while the task runs; most finish in well under a minute. The unused part of the hold is released once the audio is measured.

  5. Download the WAV before the 14-day window closes

    Generated audio is kept for 14 days and then deleted. Save what you want to keep to your own storage.

Gemini 3.8 Flash-Lite TTS worked examples

  • A quick narration line

    A single sentence with punctuation shaping the pacing, using the default voice.

    {"text": "The storm rolled in just after midnight, and for a moment the whole town went quiet."}
  • A late-night voice note, with a specific voice

    Choosing a softer voice for a quieter, closer read.

    {"text": "Hey... I know it's late, but I couldn't stop thinking about you. Call me back when you can.", "voice_id": "Enceladus"}
  • A sound spelled out instead of tagged

    Writing a laugh as a word rather than a bracketed cue, since tags are not reliably performed here.

    {"text": "Ha... you actually thought that would work? That's adorable.", "voice_id": "Puck"}

Gemini 3.8 Flash-Lite TTS API questions

Treat this endpoint as the fast, cheap default rather than the most expressive one: with only a script and a voice to set, the quickest way to get a natural read is to do the directing in the text itself -- short sentences for a conversational pace, ellipses and commas for pauses, and sounds spelled out as words rather than wrapped in brackets. Pick a voice once and keep it for a whole series so the character stays recognizable, and remember that the meter only runs on the seconds of audio that actually come back, so a short reading always costs less than a long one at the same rate.

All Gemini models8