Gemini 3.5 Transcribe vs Live: preserve diarization, final text, and cost boundaries
Quick answer
Google released two dedicated Gemini speech-to-text models as generally available on August 26, 2026. Use gemini-3.5-transcribe for completed audio when you need files up to one hour, speaker diarization, or word-level timestamps. Use gemini-3.5-transcribe-live for continuously arriving audio when low-latency interim text matters.
Do not switch by model name alone. The live route has a 10-minute session limit and does not support speaker diarization or word-level timestamps. Its interim transcript is speculative; only input_transcription is the finalized text for a speech segment. The file route can process up to one hour, but falls to 30 minutes when diarization or word timestamps are enabled.
Who this is for
This guide is for developers building captions, meeting notes, support-call review, voice search, or pronunciation feedback. It is especially useful if an application currently sends audio to a general Gemini model and now needs a dedicated, testable transcription contract.
This is a Gemini API release, not a claim about a transcription feature in the Gemini consumer app. For the same architecture decision on OpenAI, see the GPT Transcribe versus Live Transcribe guide.
What changed—and what remains separate
Gemini 3.5 Transcribe is optimized for speech-to-text rather than general audio reasoning. Both routes support automatic language detection across more than 85 locales, code-switching, custom vocabulary, and verbatim or Smart transcription. Their output contracts differ:
| Requirement | File: gemini-3.5-transcribe
|
Live: gemini-3.5-transcribe-live
|
|---|---|---|
| Audio arrival | Completed or bounded file | Microphone or continuing stream |
| Maximum duration | Up to 1 hour; 30 minutes with diarization or word timestamps | 10 minutes per session |
| Interim text | No live-input hypothesis contract | interim_input_transcription |
| Authoritative text | Completed interaction output |
input_transcription after finalization |
| Speaker diarization | Up to 8 speakers; attribution for 3+ is experimental | Not supported |
| Word-level timestamps | Supported; may reduce accuracy | Not supported |
| VAD choice | Not applicable | Automatic, hybrid, or manual |
| Client credential | Server API key | Server API key or constrained ephemeral token |
Neither route is a conversational voice agent by itself. For audio question answering, use Gemini audio understanding; for speech generation, use a text-to-speech model.
A six-stage production workflow
1. Freeze the output contract before selecting a model
Record what downstream code actually consumes:
- completed file or live PCM audio;
- interim captions, final text, or both;
- speaker labels and timestamp granularity;
- verbatim evidence or cleaned reading copy;
- known languages and domain vocabulary;
- maximum uninterrupted duration;
- retention, deletion, and human-review rules.
If a transcript drives evaluation, compliance, or pronunciation feedback such as SingLine Coach, preserve the original audio and verbatim lane long enough for authorized review. Smart transcription changes the text by removing disfluencies and resolving self-corrections; it should not silently replace source evidence.
2. Route on hard requirements
Choose the file route when diarization, word timestamps, or sessions longer than ten minutes are mandatory. Choose the live route when audio is still arriving and responsive interim text is the product requirement.
Do not simulate live transcription by repeatedly uploading short files unless the product explicitly accepts gaps, duplicate boundaries, and delayed finalization. Do not simulate diarization by attaching local speaker guesses to live text and presenting them as model output.
3. Keep verbatim and Smart output as separate products
The default verbatim mode preserves fillers, repetitions, and false starts. Smart mode cleans and structures the result. On the file route, Smart transcription is incompatible with diarization and word timestamps.
Use two explicit fields rather than overwriting one transcript:
{
"verbatimText": "...",
"displayText": "...",
"mode": "verbatim",
"isFinal": true,
"speakerAnnotations": [],
"wordAnnotations": []
}
If the UI needs cleaned notes, derive them in a separate, labeled step. This keeps the audit trail clear and makes quality comparisons reproducible.
4. Reconcile live events instead of appending strings
Render interim_input_transcription as replaceable preview text. Commit input_transcription once as the authoritative segment. Key each segment by the application turn or monotonically increasing sequence so reconnects cannot duplicate text.
For VAD:
- start with server-side automatic VAD;
- use hybrid VAD when the client can detect speech end and needs faster finalization;
- use manual
activity_startandactivity_endonly for explicit push-to-talk interaction.
If a browser or mobile client connects directly, mint a constrained ephemeral token on the server. Never embed a long-lived Gemini API key in shipped client code.
5. Measure accepted-output cost, not only API minutes
Google's pricing page currently estimates a blended paid rate of about $0.005 per minute for file transcription and $0.009 per minute for live transcription. A simple planning estimate is:
monthly_api_cost = processed_minutes × route_rate
accepted_minute_cost = monthly_api_cost ÷ accepted_transcript_minutes
At 10,000 processed minutes, the published estimates imply roughly $50 for file or $90 for live before application storage, retries, observability, review, and downstream processing. Measure accepted output because noisy retries, abandoned live sessions, and rejected transcripts still consume resources. Recheck the official pricing page before launch.
6. Run a twelve-clip acceptance pack
Use consented or synthetic audio with no real customer secrets:
| Fixture | What to verify |
|---|---|
| Clean single speaker | Baseline word error and punctuation |
| Accent variation | No systematic name or number failures |
| Background noise | Final text remains usable |
| English–Chinese code-switch | Language switching without forced relabeling |
| Ten domain terms | Vocabulary helps without hallucinating absent terms |
| Two speakers | Diarization and turn order on the file route |
| Three speakers | Experimental attribution is visibly gated |
| Filler-heavy speech | Verbatim remains faithful; Smart changes are labeled |
| Self-correction | Smart output does not replace evidence text |
| Timestamp lane | Alignment error and any accuracy regression are measured |
| Live interruption | Interim text is replaced; final text is committed once |
| Session boundary | Ten-minute rotation, reconnect, and deduplication work |
Promote only if the target locale, noise, vocabulary, and duration mix passes your application thresholds. “GA” describes product status, not fitness for every audio domain.
Decision tree
Is audio still arriving?
no -> need speaker labels or word timestamps?
yes -> file Transcribe, verbatim mode, max 30 minutes
no -> file Transcribe, max 1 hour
yes -> need speaker labels or word timestamps?
yes -> capture the stream, then run the file lane
no -> need responsive interim captions?
yes -> Transcribe Live
-> choose automatic, hybrid, or manual VAD
-> rotate before 10 minutes
-> replace interim; commit final once
no -> buffer a bounded file and use file Transcribe
Common mistakes
- Calling the models a Gemini app feature rather than Gemini API model IDs.
- Treating interim live text as final and appending every revision.
- Enabling Smart mode while expecting an untouched evidence transcript.
- Missing the 30-minute file limit when timestamps or diarization are enabled.
- Assuming three-or-more-speaker attribution is fully mature because diarization supports up to eight speakers.
- Shipping an API key in browser or mobile code instead of using an ephemeral token.
- Comparing the published per-minute rates without counting retries and accepted output.
Copyable rollout record
date / owner / SDK version:
route / model ID / region:
audio source / locale mix / max duration:
interim field / final field / dedup key:
mode / vocabulary / VAD:
diarization / timestamps / experimental boundary:
12-clip pass rate / accepted-minute cost:
retention / deletion / human review:
canary percentage / rollback route:
FAQ
Can Transcribe Live return word timestamps or speaker labels?
No. The current Live API route emits utterance-level interim and finalized text, but not word-level timestamps or speaker diarization. Capture the audio and run the file route when those outputs are required.
Should I use Smart transcription for meeting notes?
It can produce more readable notes, but keep a labeled verbatim source when exact wording matters. On the file route, Smart mode cannot be combined with word timestamps or diarization.
Does GA mean I can skip a domain evaluation?
No. Evaluate representative accents, noise, code-switching, terminology, speaker counts, and duration. Product availability does not establish your application's acceptance rate.
Sources
- Google: Gemini API release notes
- Google: Audio transcription guide
- Google: Live transcription guide
- Google: Gemini 3.5 Transcribe model page
- Google: Gemini Developer API pricing
- Google: Ephemeral tokens
Originally published on IndieSeek.
Top comments (0)