Gemini Voice Remixing: Power-User Guide to Stored TTS Voices

On November 4, 2026, Google added Voice remixing to the Gemini API for Gemini 3.8 Flash TTS. You pass a base voice and a relative prompt to POST /v1beta/voices, get a new stored voice_ ID, and reuse it for speech with gemini-3.8-flash-tts or gemini-3.8-flash-lite-tts. It needs a Paid Tier project and shares a 200-voice quota.

Last updated: November 7, 2026

Table of contents

What is new

According to Google’s Voice remixing documentation, you can now take a prebuilt studio voice, an Extended Voice Library entry, or a stored custom voice and describe relative changes—age, pitch, energy, timbre, accent, or pacing—in plain language. The API returns a new voice_... ID plus a 24 kHz WAV sample_audio preview. You can also remix interactively in Google AI Studio.

The feature landed with the Gemini 3.8 TTS stack. The gemini-3.8-flash-tts model page lists Voice remixing alongside Voice design, Voice replication, and the Extended Voice Library. Developer coverage and X discussion spiked around November 4–5, 2026, when the docs and API became available.

For teams that already ship Gemini speech, this closes a gap between one-off style tags and full custom personas. You keep the acoustic identity of a voice you like, then store permanent trait shifts without rewriting every turn. Compare that approach with GPT-Live prompt-to-voice custom voices and Grok Voice 3.0 if you are evaluating providers.

How Voice remixing works

Remixing uses the same POST /v1beta/voices endpoint as Voice design (type="prompted", store=True), and adds prompted.base_voice:

  1. Choose a base voice name or ID and write relative instructions in prompted.input.
  2. Call client.voices.create() (or the REST equivalent). The model applies your edits, stores a new custom voice, and returns id plus sample_audio.
  3. Pass that voice_... ID in speech_config for synthesis, or feed it back as base_voice to iterate.
Parameter Required What Google documents
store Yes (True for prompted) Stores the remixed voice and returns a voice_... ID
voice.model Optional Defaults to gemini-3.8-flash-tts
voice.type Yes Must be prompted
voice.prompted.base_voice Yes for remixing Prebuilt name (for example Puck), library ID, or stored voice_...
voice.prompted.input Yes Natural-language relative modifications

Supported bases include the 30 prebuilt studio voices (such as Puck, Kore, and Zephyr), any ID from GET /v1beta/voices, and previously designed or remixed voice_... IDs owned by your project.

How to remix a voice and synthesize speech

  1. Use a Gemini API project on Paid Tier 1 or higher, with a valid API key.
  2. Install the Google Gen AI SDK (google-genai) or prepare a REST client.
  3. Call voices.create with store=True, type="prompted", a base_voice such as "Puck", and a relative input prompt.
  4. Save the returned id (for example voice_abc123...) and optionally decode sample_audio.data to a WAV file to audition the preview.
  5. Synthesize with interactions.create (or GenerateContent) using model gemini-3.8-flash-tts or gemini-3.8-flash-lite-tts, set response_format to audio, and put the remixed ID in generation_config.speech_config[].voice.
  6. For turn-level acting, keep permanent traits in the remixed voice and put temporary cues such as whispering in speech_metadata.style, as the text-to-speech guide describes.
  7. List, get, or delete stored prompted voices with voices.list(type_=["prompted"]), voices.get, and voices.delete when you need to manage the library.

The official docs show a full Python, JavaScript, and REST example that remixes Puck toward an older, warmer British audiobook narrator, then narrates a sample chapter. For CLI-oriented Gemini workflows, see the Gemini API CLI guide.

Plans, quotas and pricing

Item Official detail
Feature status Documented for Gemini 3.8 TTS Voice remixing (API docs live as of early November 2026)
Creation model gemini-3.8-flash-tts
Synthesis models gemini-3.8-flash-tts and gemini-3.8-flash-lite-tts
API access Paid Tier (Tier 1+) required for Voice remixing
Stored voice quota 200 stateful (store=True) voices per project, shared with design and stored replication
Retention 1 year from last use; use or remix-as-base resets expire_time
Flash TTS paid rates (through Dec 31, 2026) $0.50 / 1M text input; $9.00 / 1M audio output (~$0.00225 per 10s audio)
Flash-Lite TTS paid rates (through Dec 31, 2026) $0.50 / 1M text input; $6.00 / 1M audio output (~$0.0015 per 10s audio)

Rates come from Google’s Gemini API pricing page for the Standard tier. Audio tokens are billed at 25 tokens per second of audio. Prices rise on January 1, 2027 for both models; check the pricing page before you lock a budget. Flash TTS is positioned for studio fidelity and dialects (130 languages); Flash-Lite targets throughput and lower cost (101 languages) per the Flash-Lite model page.

Prompt patterns that work well

Google’s prompting guidance for remixing is specific:

  • Describe relative adjustments instead of restating the full persona.
  • Expect the baseline language and accent of base_voice to stay unless you ask for a change.
  • When chaining remixes, change one or two traits per step and listen to sample_audio before the next call.
  • Use remixing for permanent character traits; use speech_metadata.style for temporary delivery.

Documented examples include aging Puck with a deeper baritone, switching Kore to Australian English, softening a designed voice for meditation narration, and raising projection for a live-event announcer. Keep those instructions short and comparative. For other speech stacks in production, also see Voxtral 3 and Qwen-Audio 3.1.

Remixing vs design vs turn-level style

Approach Best for Mutates base? Persists?
Voice remixing Permanent shifts from a voice you already like No; new voice_... Yes, until TTL or delete
Voice design Building a persona from scratch N/A Yes, same prompted store
speech_metadata.style One-turn acting (whisper, excited) No No; per request

Power users often design once, remix a few variants for product lines or locales, then keep style metadata for scene direction. That pattern pairs well with multi-speaker TTS workflows covered in the speech-generation guide, and with multimodal Google launches such as Gemini Omni 1.2 Flash when video and voice share a brand kit.

Known limitations

Voice remixing is Paid Tier only. The 200-voice project cap is shared, so heavy design and replication use can crowd out remixes. Attachments and replication have separate flows; remixing itself is text-prompted relative edits, not cloning from reference audio. Verdicts are create/list/get/delete—there is no documented in-place edit of an existing voice_... beyond creating another remix. Always audition sample_audio before shipping a new ID into production traffic.

Frequently asked questions

What is Gemini Voice Remixing?

Voice remixing lets you modify an existing Gemini TTS voice with natural-language instructions and store the result as a new independent voice_ ID. Google documented it for Gemini 3.8 Flash TTS via POST /v1beta/voices with type prompted and a base_voice field.

Which models can create and use a remixed voice?

Creation uses gemini-3.8-flash-tts (the default when voice.model is omitted). The returned voice_ ID can synthesize speech with both gemini-3.8-flash-tts and gemini-3.8-flash-lite-tts.

Do I need a paid Gemini API project?

Yes. Google’s Voice remixing docs say the feature requires a Paid Tier (Tier 1 or higher) Gemini API project. Free-tier projects are not eligible for stored prompted remixes.

How many remixed voices can one project keep?

Up to 200 stateful voices with store=True per project, shared across designed, remixed, and stored replicated voices. Each stored voice expires one year after last use, and using it for synthesis or as a remix base_voice resets that window.

Does remixing change the original base voice?

No. Remixing always creates a new standalone voice_ resource. It does not modify or overwrite the original base_voice, and deleting the base later does not affect voices remixed from it.

How is Voice remixing different from Voice design?

Both use POST /v1beta/voices with type prompted and store=True. Remixing adds prompted.base_voice so edits are relative to an existing acoustic profile. Voice design builds a persona from scratch without that base_voice anchor.



Sources

Related answers

Leave a Comment