Cover image: Gemini 3.8 TTS pricing, billed at 32 tokens a second but priced at 25. Launch rates are $9 and $6 per million audio tokens until 31 December 2026, then double. Three figures: 1.72 cents per minute of speech on 3.8 Flash TTS today against 1.35 cents from the pricing page math, 3.44 cents per minute from 1 January 2027, and 2 of 2 Gemini 3.8 TTS models that read the style instruction aloud. Measured with 44 real API calls on 24 September 2026.

Gemini TTS Pricing: Billed 32 Tokens a Second, Not 25

Google released Gemini 3.8 Flash TTS and Gemini 3.8 Flash-Lite TTS on 23 September 2026, and the Gemini TTS pricing that came with them has a date on it. Until 31 December, Flash TTS costs $9 per million audio output tokens and Flash-Lite TTS $6, with text input at $0.50 per million for both. On 1 January 2027 every one of those numbers doubles. The pricing page also tells you how to turn tokens into seconds: 25 tokens per second of audio. Multiply it out and Flash TTS comes to 1.35 cents per minute of speech.

That is not what we were billed. We sent the same three chatbot answers through all four Gemini TTS models on the API from a production WordPress server the day after launch, 44 calls in all, and divided the audio tokens each response billed by the length of the audio it returned. Gemini 2.5 Flash TTS billed exactly 25 tokens per second. Every call to the 3.1 and 3.8 models billed about 32. That puts Flash TTS at 1.72 cents a minute today, 28% above the page math, and 3.44 cents a minute from January. Two other things came out of the same run: both 3.8 models read our style instruction out loud as part of the answer, and the older 2.5 preview model is cheaper per second than 3.8 Flash TTS even at launch prices.

Dot chart of audio tokens billed per second of speech on every call. Gemini 2.5 Flash TTS preview billed 25.0 tokens per second across 6 calls, matching the 25 per second on Google's pricing page, shown as a red line. Gemini 3.1 Flash TTS preview billed 32.0 across 6 calls, Gemini 3.8 Flash TTS 31.9 across 12 calls and Gemini 3.8 Flash-Lite TTS 31.9 across 12 calls, all well to the right of the line.
Audio tokens billed per second of speech on every call we made. The red line is the 25 tokens per second on Google’s pricing page.

The Gemini TTS rate card, as published

This is the rate card as Google’s pricing page showed it on 24 September 2026, per million tokens, standard (paid) tier. All four models also have a free tier with lower rate limits, and batch mode halves every price. Batch is no use to a live chatbot, which has to answer while the visitor is still on the page, so the standard column is the one that matters here.

ModelText inputAudio outputFrom 1 Jan 2027Batch (output)
Gemini 3.8 Flash TTS$0.50$9.00$1.00 / $18.00$4.50, then $9.00
Gemini 3.8 Flash-Lite TTS$0.50$6.00$1.00 / $12.00$3.00, then $6.00
Gemini 3.1 Flash TTS (preview)$1.00$20.00no change listed$10.00
Gemini 2.5 Flash TTS (preview)$0.50$10.00no change listed$5.00

Flash TTS also lists context caching at $0.125 per million input tokens through December ($0.25 after), which matters if you send a long, fixed voice-direction block with every request. Google positions the two new models differently: Flash TTS for expressive, long-form work like audiobooks and games, Flash-Lite TTS as the cheap tier for high-volume dubbing and voice agents. A website chatbot that reads its answers aloud is a voice agent, so Flash-Lite is the one most WordPress site owners should price first. Google’s announcement puts language coverage at 130 for Flash TTS and 101 for Flash-Lite, with the language detected from the text rather than declared in the request.

If this date-stamped pattern looks familiar, it is the same one Google used for text models. Gemini 3.7 Flash launched at half price until 1 January, and Gemini 3.8 Flash kept the same cliff. The TTS models now have it too, which means any cost estimate you make this quarter has an expiry date. Budget on the January column.

How we measured it

The test ran from the server that hosts this site, using the Gemini API key already stored in the site’s MxChat settings, so the key never left the box. Each call was a plain generateContent request with responseModalities set to AUDIO and the prebuilt voice Kore. The input was one of three answers a WordPress support chatbot might plausibly give:

  • Short (25 words): a yes-and-one-line answer about WooCommerce support.
  • Medium (73 words): a pricing answer with a follow-up question, the typical length of a support reply.
  • Long (148 words): a five-step setup walkthrough.

For every response we recorded the usageMetadata the API returned (text tokens in, audio tokens out) and the length of the audio itself. The 3.8 models return a WAV file; we read the sample rate, channel count and bit depth from its header (24 kHz, mono, 16-bit) and the length from its data chunk. The 2.5 and 3.1 previews return raw 16-bit PCM at 24 kHz, so length is bytes divided by 48,000. Dividing billed audio tokens by seconds of audio gives the rate you are actually charged per second.

Thirty calls made up the main run: the three answers on every model, repeated on the two 3.8 models, plus a version of each answer with a style instruction in front. Six more re-ran the short answer on both 3.8 models with three prompt styles, and six text calls to Gemini 3.8 Flash transcribed that audio back to words so we could hear what the models actually said. The last two tried a system instruction, which the API rejected. That makes 44 calls. The whole run cost well under a dollar.

32 tokens a second, not 25

The result was the same on every call, which is what makes it hard to write off as noise:

ModelCallsAudio tokens billedSeconds of audioTokens per secondvs. 25 on the page
Gemini 2.5 Flash TTS (preview)64,080163.324.990%
Gemini 3.1 Flash TTS (preview)65,558173.632.02+28%
Gemini 3.8 Flash TTS98,621270.431.88+28%
Gemini 3.8 Flash-Lite TTS98,795275.831.88+28%

The six follow-up calls on the 3.8 models landed between 32.00 and 32.08. Individual calls ranged from 31.6 to 32.1, with the lower values on the shortest clips, where a fixed bit of silence at the start or end weighs more. The 2.5 model never moved off 25.0. That is too tidy to be anything but a different audio tokenizer: the 3.x generation encodes speech at about 32 tokens per second, and the “25 tokens per second” line on the pricing page describes the 2.5 generation.

We are not claiming Google bills more than it says. The per-token price is exactly what the page lists; what is off is the conversion to seconds, and the per-token count is what the invoice uses. The practical point is only this: if you estimate a Gemini 3.8 TTS budget by multiplying minutes of speech by 1,500 tokens, you will come in about 28% low. Use 1,920 tokens a minute, or better, read candidatesTokenCount from your own responses for a week before you commit to a number.

What a minute of speech costs

Here is the same comparison in cents per minute of audio output, at the page’s 25 tokens per second, at what was actually billed, and at the rates that apply from 1 January. Text input is left out because it is under 1% of the total for any realistic chatbot answer: our 73-word reply was 88 input tokens against 834 audio tokens.

Bar chart of cents per minute of speech for four Gemini TTS models. Gemini 2.5 Flash TTS preview: 1.50 cents, page math equals billed, no scheduled change. Gemini 3.8 Flash-Lite TTS: 0.90 cents page math, 1.15 cents billed today, 2.29 cents from 1 January 2027. Gemini 3.8 Flash TTS: 1.35 cents page math, 1.72 billed today, 3.44 from 1 January 2027. Gemini 3.1 Flash TTS preview: 3.00 cents page math, 3.84 billed, no scheduled change.
Cents per minute of speech. Grey is the page math at 25 tokens per second, blue is what the API billed, amber is the rate from 1 January 2027.
ModelPage math (25/s)Billed todayFrom 1 Jan 2027
Gemini 3.8 Flash-Lite TTS0.90¢1.15¢2.30¢
Gemini 2.5 Flash TTS (preview)1.50¢1.50¢1.50¢
Gemini 3.8 Flash TTS1.35¢1.72¢3.44¢
Gemini 3.1 Flash TTS (preview)3.00¢3.84¢3.84¢

Read the rows against each other and the headline price stops lining up with the bill. On the page, 3.8 Flash TTS at $9 per million looks cheaper than 2.5 Flash TTS at $10. Per second of speech it is 15% more expensive today, because each second costs 32 tokens instead of 25, and it will be 130% more expensive after January. Flash-Lite TTS is the only 3.8 option that undercuts the old preview, by 23%, and only until the promotion ends. From January it costs 53% more per minute than 2.5 Flash TTS.

That does not make 2.5 the right answer. It is a preview model, and preview models on the Gemini API get retired on Google’s schedule, not yours; we have written about what that does to a site that hard-codes a model name. The 3.8 models are the ones with a future. But anyone comparing voices on price alone should compare cost per minute, not cost per million tokens, because the two generations do not count tokens the same way.

What 1,000 spoken chatbot replies cost

Per minute is how voice vendors quote. For a chatbot it is easier to think per reply. Our medium answer, 73 words and about 26 seconds of speech, is close to what a support bot on a WordPress site says in an average turn. Priced from the tokens each model actually billed for it:

Bar chart of the cost of speaking 1,000 copies of a 73-word chatbot answer, about 26 seconds each. Gemini 2.5 Flash TTS preview $5.98 with no scheduled change; Gemini 3.8 Flash-Lite TTS $5.20 today and $10.40 from 1 January 2027; Gemini 3.8 Flash TTS $7.55 today and $15.10 from 1 January 2027; Gemini 3.1 Flash TTS preview $16.41 with no scheduled change.
Cost of speaking 1,000 copies of a 73-word chatbot answer aloud, today and after the 3.8 launch prices end on 1 January 2027.
ModelAudio tokens (73-word reply)Per 1,000 replies todayPer 1,000 from 1 Jan 2027
Gemini 3.8 Flash-Lite TTS859 (mean of 2)$5.20$10.40
Gemini 2.5 Flash TTS (preview)594$5.98$5.98
Gemini 3.8 Flash TTS834 (mean of 2)$7.55$15.10
Gemini 3.1 Flash TTS (preview)816$16.41$16.41

Put that next to the cost of writing the answer in the first place. A small text model is now very cheap per reply: we measured GPT-5.6 Luna at $1.58 per 1,000 chatbot replies on a full retrieval prompt, and GPT-6 Luna came in lower still. Reading that same reply aloud with 3.8 Flash-Lite TTS costs $5.20 today and $10.40 from January. On a small model, speaking the answer costs three to seven times more than writing it. Even against a frontier model it is not a rounding error: Claude Opus 5.5 came to $33.16 per 1,000 replies on a retrieval chatbot, and January’s Flash TTS rate would add 46% on top.

Length scales it linearly. Our 148-word setup walkthrough ran 51 seconds and billed 1,629 audio tokens on Flash TTS, just under double the 73-word answer. Bots that answer in paragraphs pay for every sentence twice, once as text and once as audio, so the cheapest voice optimisation is the same as the cheapest text one: shorter answers.

The style instruction gets read out loud

The other finding is the one most likely to embarrass a live site. The new models let you direct delivery in plain language, and the obvious way to do it is to put the direction in front of the text. We tried two forms on the short answer and then had Gemini 3.8 Flash transcribe what came back:

Prompt in front of the answer3.8 Flash TTS said3.8 Flash-Lite TTS said
(none)The answer only (9.6 s)The answer only (9.3 s)
Read this as a friendly, upbeat support agent:The instruction, then the answer (12.2 s)The instruction, then the answer (13.4 s)
Say cheerfully:The answer only (10.9 s)“Say cheerfully”, then the answer (11.0 s)

Both models spoke the longer instruction as if it were part of the reply. Flash TTS handled the short, imperative form; Flash-Lite, the model aimed at voice agents, did not. In the main run, five of the six styled requests on the 3.8 models came back 3 to 4 seconds longer than the plain version, about the time it takes to say the instruction, which fits it being spoken there too, and you pay for those seconds at the same rate as the answer.

The fix you would reach for first, moving the direction into a system instruction, does not exist on these models. The API rejects it with Developer instruction is not enabled for this model on both. So the delivery direction has to live in the same text as the words to be spoken, and you have to test that your chosen phrasing is not read aloud, per model, before a visitor hears it. Two lower-risk options: pick a prebuilt voice whose default delivery already suits your brand and send no direction at all, or keep the direction to a two-word imperative and check it on Flash-Lite specifically.

One smaller thing the transcripts showed. Asked to say “MxChat”, Flash TTS produced something the transcriber wrote as “MX Chat”, while Flash-Lite came back as “Mike’s Chat”, “NextChat” and “Mexchat” across three calls. Some of that is the transcriber, not the voice, but the point stands for any brand name that is not a dictionary word: spell it phonetically in the text you send to the voice (for example “M X Chat”) and keep the written version for the chat bubble.

Speed

We used the non-streaming endpoint, so the time to a response is the time to the whole clip. On the 3.8 models that was 0.26 to 0.42 seconds of waiting per second of audio: about 3.8 seconds for the short answer, 8 to 9 for the medium one, 14 to 16 for the long one. The 2.5 preview was slower (0.37 to 0.64) and the 3.1 preview slowest (up to 39 seconds for the long answer). Nine seconds of silence before a 26-second answer starts is too long for a chat widget. The API also has a streaming mode that returns raw PCM as it is generated, which is how a real voice reply would have to work; we did not measure its time to first audio, so we will not guess a number for it.

What this means for a WordPress chatbot

MxChat answers in text today, and most WordPress chatbot plugins do the same. If you are weighing voice replies for your site, whether through a plugin, a custom integration or a third-party widget, this is the arithmetic to run:

  1. Price per minute, at 32 tokens a second. Multiply your expected minutes of speech by 1,920 tokens, not 1,500. For Flash-Lite TTS that is 1.15 cents a minute now and 2.30 from January.
  2. Budget on the January rate. Anything you build this quarter will still be running when the launch price ends. A bot that speaks 2,000 medium-length answers a month costs about $10.40 on Flash-Lite at launch rates and $20.80 after.
  3. Make voice opt-in. Most visitors read faster than a voice speaks. If audio only plays when someone presses a speaker icon, you pay for the replies people actually want to hear, not every reply.
  4. Cap it. Audio costs more per reply than the text on a small model, which makes it the more attractive target for anyone trying to run up your bill. The rate limits and spend caps from our piece on denial-of-wallet attacks on WordPress chatbots apply twice over to a bot that speaks.
  5. Test the direction text on every model. If a style prompt is read aloud on one model, it will be heard by visitors. Transcribe a few outputs before launch, as we did.
  6. Keep answers short. Cost is linear in seconds. A system prompt that asks for two to four sentences cuts the voice bill and the text bill together.

If you are setting up the text side first, the MxChat documentation covers connecting a Gemini key and choosing a model, and MxChat Pro adds the multi-bot and live-agent features most support sites add next. The model choice you make there sets the cost of the words; the numbers above are what it would cost to say them.

Caveats

This is one voice (Kore), English text, three answers and a single day, the day after launch. Rates per second could differ by voice or language, although the 3.1 and 3.8 models agreed to within half a token per second on everything we sent. The “read aloud” finding relies on a transcription by another Gemini model, which can mishear, but the audio lengths moved in the same direction as the transcripts. Prices are from Google’s pricing page as read on 24 September 2026 and will change; the January doubling is Google’s stated schedule, not our forecast.

FAQ

How much does Gemini TTS cost?

On the standard paid tier, Gemini 3.8 Flash TTS is $0.50 per million text input tokens and $9 per million audio output tokens until 31 December 2026, then $1 and $18. Flash-Lite TTS is $0.50 and $6, then $1 and $12. Measured on real calls, that is 1.72 cents per minute of speech for Flash TTS and 1.15 cents for Flash-Lite today.

How many tokens is one second of Gemini TTS audio?

Google’s pricing page says 25. That matched Gemini 2.5 Flash TTS exactly in our test. Gemini 3.1 and 3.8 TTS models billed about 32 audio tokens per second on every call, so estimates based on 25 run about 28% low for the current models.

Is there a free tier for Gemini TTS?

Yes. All four TTS models list a free tier with lower rate limits. It is enough to test voices and measure your own token counts, but not for a production chatbot with real traffic.

Which Gemini TTS model is cheapest for a chatbot?

Today, Gemini 3.8 Flash-Lite TTS at 1.15 cents per minute of speech. From 1 January 2027 it rises to 2.30 cents, and Gemini 2.5 Flash TTS (preview) at 1.50 cents becomes cheaper per minute, though as a preview it has no guaranteed lifetime.

Can I use a system instruction to set the voice style?

Not on the 3.8 TTS models. The API returns “Developer instruction is not enabled for this model”. Direction has to go in the prompt text, and in our test both 3.8 models sometimes read that direction aloud, so check each phrasing before using it on a live site.

Similar Posts