
GPT-Transcribe vs Whisper-1 vs GPT-Realtime-Whisper: Which OpenAI Speech-to-Text Model Should You Use in 2026?
Compare GPT-Transcribe, Whisper-1, and GPT-Realtime-Whisper for audio transcription, live captions, timestamps, multilingual speech, pricing, and production use.
The short answer
If you are building a new OpenAI speech-to-text workflow in 2026, start with GPT-Transcribe for completed audio files. Keep Whisper-1 when you specifically need native word timestamps, segment timestamps, SRT or VTT subtitles, or audio-to-English translation. Use GPT-Realtime-Whisper only to maintain an existing live transcription integration; OpenAI now recommends GPT-Live-Transcribe for new low-latency, continuously streaming products.
That answer is more nuanced than “the newest model wins.” These models solve overlapping but different problems:
- GPT-Transcribe prioritizes accurate, context-aware transcription of uploaded audio and manually committed Realtime turns.
- Whisper-1 retains output formats and alignment features that newer general-purpose transcription models do not replace.
- GPT-Realtime-Whisper delivers live transcript deltas, but it is now a legacy starting point rather than OpenAI’s recommended model for a new Realtime integration.
This distinction matters because “streaming transcription” can mean two different things. A completed file can produce streamed text while it is being processed, but that is not the same as accepting microphone audio continuously. The first is output streaming over the Audio API; the second is live input over a persistent Realtime connection.
For readers who want to transcribe audio without building an API pipeline, a browser-based GPT Transcribe online workspace offers a more direct route from an uploaded recording to an editable transcript.
The 2026 model landscape changed
The name GPT-Transcribe refers to the current model ID gpt-transcribe; it is not shorthand for gpt-4o-transcribe. According to OpenAI’s current transcription overview, gpt-transcribe is the recommended starting model for completed recordings, while gpt-live-transcribe is the recommended starting model for live audio.
Older models remain available for compatibility and specialized features:
gpt-4o-transcribeandgpt-4o-mini-transcribecan continue serving existing file-transcription integrations.gpt-realtime-whispercan continue serving existing Realtime transcription sessions.whisper-1remains the documented choice for native timestamps, subtitle formats, and translation of completed recordings into English.gpt-4o-transcribe-diarizeremains the specialized file model for speaker-labeled transcripts.
The practical lesson is simple: do not choose a model by release date alone. Choose the workflow first, then select the model that exposes the output contract your product actually needs.
Side-by-side comparison
| Capability | GPT-Transcribe | Whisper-1 | GPT-Realtime-Whisper |
|---|---|---|---|
| Best fit | New file transcription and committed Realtime turns | Timestamps, SRT/VTT, and translation to English | Existing continuous live-transcription integrations |
| Primary endpoint | POST /v1/audio/transcriptions | POST /v1/audio/transcriptions and /v1/audio/translations | Realtime transcription session |
| Completed file input | Yes | Yes | No |
| Continuous live audio | Not as the default continuous model; supports committed turns over WebSocket | No | Yes |
| Stream partial text from a completed file | Yes | No | Not applicable |
| Live transcript deltas | After a committed Realtime turn | No | Yes |
| Context controls | prompt, keywords, and multiple languages | prompt and one language hint | Legacy model-specific Realtime configuration |
| Detected-language metadata | Yes, when reliable | Language information through Whisper response formats | Not its defining capability |
| Word or segment timestamps | No native replacement documented | Yes | No native word timestamps |
| Native SRT/VTT output | No | Yes | No |
| Translate audio into English | No dedicated translation workflow | Yes | No |
| Native speaker labels | No; use the diarization model | No | No |
| Current estimated price | $0.0045 per minute | $0.006 per minute | $0.017 per minute |
| Recommended for a new integration? | Yes, for files | Only for its specialized capabilities | No; evaluate GPT-Live-Transcribe instead |
Pricing is based on OpenAI’s current API pricing page as of July 30, 2026 and can change. Production teams should retrieve the live price before finalizing a cost model.

Live transcription is a transport and latency problem as much as a recognition problem. Model choice should follow the way audio arrives.
1. GPT-Transcribe: the default for recorded audio
GPT-Transcribe is a high-accuracy speech-to-text model for completed audio files, streamed file transcripts, and manually committed turns in Realtime sessions over WebSocket. It accepts audio and text context and returns text.
Its biggest advantage is not merely that it is newer. It has a cleaner context model for real production audio:
- Use
promptto describe the recording’s setting or topic. - Use
keywordsfor literal names, product terms, identifiers, medications, or acronyms that may actually be spoken. - Use
languagesto identify multiple expected languages, including code-switching scenarios.
This separation is useful. A customer-support recording can have a general prompt such as “a billing call about an enterprise plan,” while keywords can separately preserve strings such as AC-42, Premium Plus, and a customer’s company name. Language hints can tell the model to expect English and French in the same recording.
GPT-Transcribe also returns detected-language metadata when it can make a reliable prediction. An empty languages array is valid and should not be treated as a failed request.
Calling /v1/audio/transcriptions
The endpoint remains familiar:
curl https://api.openai.com/v1/audio/transcriptions \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: multipart/form-data" \
-F model="gpt-transcribe" \
-F file="@meeting.wav" \
-F 'prompt=A customer support call about billing.' \
-F 'keywords[]=AC-42' \
-F 'keywords[]=Premium Plus' \
-F 'languages[]=en' \
-F 'languages[]=fr'A basic Python integration is equally small:
from openai import OpenAI
client = OpenAI()
with open("meeting.wav", "rb") as audio_file:
transcription = client.audio.transcriptions.create(
model="gpt-transcribe",
file=audio_file,
prompt="A customer support call about billing.",
extra_body={
"keywords": ["AC-42", "Premium Plus"],
"languages": ["en", "fr"],
},
)
print(transcription.text)The official file-transcription guide documents a 25 MB maximum upload and accepts mp3, mp4, mpeg, mpga, m4a, wav, and webm. Larger recordings should be compressed or split at sensible linguistic boundaries. Cutting in the middle of a sentence can remove context and create errors at the join.
File streaming is not live audio
Set stream=true and GPT-Transcribe can emit transcript.text.delta events while processing a file, followed by a final transcript.text.done event. The entire recording must already exist before the request begins.
This mode works well for long uploads because the interface can show immediate progress. It does not turn the Audio API into a microphone stream. For a call, classroom, broadcast, or microphone feed that is still arriving, use a Realtime transcription session.
Where GPT-Transcribe is weaker
GPT-Transcribe is not a drop-in replacement for every Whisper response format. Its normal contract is JSON text plus language metadata. If your current pipeline requests verbose_json, srt, vtt, or word-level timestamp granularities, switching the model ID alone will break downstream assumptions.
That limitation is intentional product segmentation rather than a reason to reject the model. GPT-Transcribe should be the recognition layer when contextual accuracy and multilingual input matter. A separate alignment or subtitle stage can format the result when necessary—but if native alignment is a hard requirement, Whisper-1 may remain the simpler choice.
2. Whisper-1: old, capable, and still necessary
Whisper-1 is OpenAI’s hosted general-purpose speech-recognition model. It performs multilingual transcription, language identification, and translation. It is no longer the recommended default for a new general transcription system, but “not the default” does not mean “obsolete.”
Whisper-1 still owns several valuable API capabilities:
Word and segment timestamps
Whisper can return verbose_json with word or segment timing:
from openai import OpenAI
client = OpenAI()
with open("interview.wav", "rb") as audio_file:
transcript = client.audio.transcriptions.create(
model="whisper-1",
file=audio_file,
response_format="verbose_json",
timestamp_granularities=["word"],
)
for word in transcript.words:
print(word.word, word.start, word.end)This feature matters for karaoke-style captions, transcript-to-video navigation, searchable media players, quote extraction, and editing interfaces that need to jump to an exact moment.
Native SRT and VTT
If your application’s output is a subtitle file rather than plain prose, Whisper’s native SRT and VTT formats can remove an entire alignment and formatting stage. GPT-Transcribe may produce better contextual text for a given workload, but a more accurate paragraph is not automatically a valid subtitle track. Subtitles need bounded cues, timing, reading-speed control, line breaks, and often speaker-aware editing.
Translation into English
The /v1/audio/translations endpoint uses Whisper-1 to convert a completed recording in another language into English text. Transcription and translation are different tasks:
- Transcription preserves the language that was spoken.
- Translation returns English.
Teams sometimes discover this distinction only after a migration changes the language of the output or removes a translation step. Treat it as an explicit product decision.
Why Whisper should not remain your automatic default
Whisper has a more limited context interface. Its prompt is capped and behaves more like preceding transcript context than a general instruction channel. It does not support the newer separation among a free-form prompt, literal keywords, and multiple expected language hints.
It also does not provide file-transcription delta events. A request blocks until the transcript is available, so a long upload offers less progress feedback unless your application builds its own job and polling layer.
Choose Whisper because you need one of its specialized outputs—not simply because your first prototype already used it.
3. GPT-Realtime-Whisper: live by design, legacy by recommendation
GPT-Realtime-Whisper is a streaming speech-to-text model for low-latency live audio. It runs through Realtime transcription sessions rather than the file-oriented /v1/audio/transcriptions workflow.
This architectural difference is more important than a benchmark score. A Realtime client must:
- Establish a WebSocket or WebRTC connection.
- Configure a transcription session.
- send correctly encoded audio chunks.
- Commit turns manually or configure voice activity detection.
- process incremental delta events.
- reconcile final transcript events using their item IDs.
- recover from disconnects, partial turns, and out-of-order completions.
That complexity buys a user experience that file uploads cannot provide: captions can appear while a person is still speaking.
Why it is no longer the default recommendation
OpenAI’s current guidance says existing GPT-Realtime-Whisper integrations can continue where supported, but new continuously streaming systems should start with GPT-Live-Transcribe.
The migration preserves the Realtime architecture and transcription event names. What changes is the model configuration:
gpt-realtime-whisperuses its older configuration, including a singularlanguagehint.gpt-live-transcribesupportsprompt, literalkeywords, multiplelanguages, and a tunabledelay.- The delay setting lets teams trade earlier partial text for more audio context and potentially better final accuracy.
Useful delay levels range from minimal for the most latency-sensitive interface to xhigh when a product can tolerate more delay for greater context. There is no universal millisecond value for each level, so benchmark the actual model and audio path rather than publishing an assumed latency.
The event model
A live client listens for incremental and completed events:
ws.on("message", (data) => {
const event = JSON.parse(data);
if (
event.type ===
"conversation.item.input_audio_transcription.delta"
) {
process.stdout.write(event.delta);
}
if (
event.type ===
"conversation.item.input_audio_transcription.completed"
) {
console.log("\nFinal transcript:", event.transcript);
}
});Completion events from separate turns are not guaranteed to arrive in conversational order. Production code should use item_id to associate deltas and final text with the correct audio item.
When maintaining GPT-Realtime-Whisper is reasonable
Immediate migration is not always the best engineering decision. Keeping GPT-Realtime-Whisper can be reasonable when:
- the current integration is stable and already meets accuracy and latency targets;
- changing models would trigger a costly compliance or regression cycle;
- the product does not need structured keyword or multilingual hints;
- the team has not yet built an evaluation set for the replacement.
However, new development should treat it as a compatibility option. The relevant 2026 comparison is increasingly GPT-Transcribe versus GPT-Live-Transcribe, with Whisper retained for specialized file outputs.
Accuracy: word error rate is only the beginning
Word error rate, or WER, counts substitutions, deletions, and insertions relative to a reference transcript:
WER = (substitutions + deletions + insertions) / reference wordsLower is better, but a single aggregate WER can hide the errors that damage a product. Confusing “fifteen” with “fifty” may matter more than several missing filler words. Misspelling a medication, customer name, stock symbol, or account ID may cause a failed workflow even when the surrounding sentence is perfect.
A serious transcription evaluation should include:
| Metric | What it reveals |
|---|---|
| Overall WER | General recognition accuracy |
| Entity exact-match rate | Names, products, medications, places, and organizations |
| Numeric accuracy | Dates, prices, phone numbers, order IDs, and measurements |
| Omission rate | Speech that disappears entirely |
| Insertion or hallucination rate | Text that was not spoken |
| Language-switch accuracy | Performance when speakers change languages mid-turn |
| Time to first delta | How quickly partial text becomes visible |
| Time to final transcript | When the result becomes safe to persist or act on |
| Partial revision rate | How often live text changes before finalization |
| p95 latency | Tail behavior that users experience during bad cases |
Build the evaluation set from production-like audio: handset calls, laptop microphones, room echo, background speech, accents, interruptions, and domain vocabulary. Clean studio speech produces comforting scores but weak operational evidence.
For GPT-Transcribe, run three variants against the same clips:
- A baseline with no context.
- A model-only comparison against Whisper.
- A context-enhanced run with prompt, keywords, and language hints.
That design separates improvements produced by the model from improvements produced by better metadata. Also test whether keyword hints cause unspoken terms to appear. Hints are guidance, not a license to force vocabulary into the transcript.
Cost: compare the entire pipeline
At current list prices, 10,000 minutes of audio would have an estimated model cost of:
| Model | Estimated price per minute | Approximate cost for 10,000 minutes |
|---|---|---|
| GPT-Transcribe | $0.0045 | $45 |
| Whisper-1 | $0.006 | $60 |
| GPT-Realtime-Whisper | $0.017 | $170 |
| GPT-Live-Transcribe | $0.017 | $170 |
These figures describe transcription inference, not total cost of ownership. A live pipeline may also require always-on media servers, WebSocket connection management, observability, regional routing, and more complicated quality assurance. A file pipeline may require object storage, job queues, chunking, and retries.
Output requirements can reverse the apparent savings. GPT-Transcribe may be cheaper per minute than Whisper, but if you require word alignment and must buy or operate a second alignment stage, Whisper could be cheaper overall. Conversely, a contextual GPT-Transcribe result that reduces human correction time may save far more than the difference in API price.
Use a cost model that includes:
- transcription API usage;
- audio preprocessing and storage;
- retries and failed requests;
- subtitle or speaker-label post-processing;
- human review time;
- engineering and operational complexity;
- the cost of errors in the downstream workflow.
Which model should you choose?
Choose GPT-Transcribe when:
- you are building a new workflow for uploaded recordings;
- transcript accuracy and domain vocabulary matter more than native subtitle output;
- the audio may contain multiple languages or code-switching;
- you want streamed progress while a completed file is processed;
- you want detected-language metadata;
- you can create subtitles or structured documents downstream.
Typical use cases include interview transcription, podcast indexing, support-call analysis, research recordings, voice-note processing, and searchable media archives.
Choose Whisper-1 when:
- you need word or segment timestamps from the OpenAI API;
- you need native SRT or VTT;
- you need to translate a completed recording into English;
- your downstream application already depends on
verbose_json; - the cost and risk of replacing a stable alignment workflow exceed the expected accuracy gain.
For non-developers and content teams, a GPT-powered audio transcription tool can provide a more practical workflow when the desired result is not merely API JSON but an editable transcript with timestamps, speaker organization, and downloadable subtitle formats.
Keep GPT-Realtime-Whisper when:
- you already operate it successfully;
- your Realtime session behavior is fully tested;
- you are not yet ready to validate a migration;
- its latency, price, and recognition quality meet your service objective.
Choose GPT-Live-Transcribe instead when:
- you are starting a new live-caption or continuously streaming product;
- you need structured domain keywords or multiple language hints;
- you want explicit control over the latency-versus-accuracy tradeoff;
- you are migrating an existing Realtime transcription stack and can run a proper regression test.
Choose a fourth model when the requirement demands it
None of the three headline models provides native speaker labeling. For recorded meetings, interviews, or call-center conversations that require “who spoke when,” use gpt-4o-transcribe-diarize with response_format="diarized_json". OpenAI documents chunking_strategy="auto" for recordings longer than 30 seconds. Speaker diarization is available through the file transcription endpoint, not Realtime transcription sessions.
A production-ready routing strategy
The strongest architecture is often a small model router rather than one global default:
Is the audio still arriving?
├── Yes
│ ├── New build → GPT-Live-Transcribe
│ └── Stable legacy integration → GPT-Realtime-Whisper, then evaluate migration
└── No, the recording is complete
├── Need speaker labels → GPT-4o-Transcribe-Diarize
├── Need word timestamps, SRT/VTT, or English translation → Whisper-1
└── General high-accuracy transcript → GPT-TranscribeThis routing strategy prevents a common failure: selecting the model with the best prose transcript and discovering later that it cannot produce the timing or speaker metadata required by the user interface.
For long recordings, add a preprocessing layer that validates the file, measures duration, normalizes audio, and splits files only when necessary. Preserve overlap or preceding context across chunks. Store the raw model response separately from the edited transcript so corrections do not destroy provenance.
For live audio, keep partial text visually distinct from finalized text. Partial deltas may change as the model receives more context. Do not trigger irreversible business actions from an unstable partial transcript.
Migration checklist
When moving from Whisper-1 to GPT-Transcribe:
- Keep
/v1/audio/transcriptionsand change the model ID. - Confirm that JSON output works for every downstream consumer.
- Replace the singular
languagefield with alanguagesarray. - Move literal vocabulary into
keywords. - Retain a contextual description in
prompt. - Rebuild or retain the Whisper path for timestamps, SRT, VTT, and translation.
- Compare the same representative recordings before and after.
When moving from GPT-Realtime-Whisper to GPT-Live-Transcribe:
- Keep the Realtime transcription-session architecture.
- Preserve handlers for delta and completed events.
- Preserve
item_id-based reconciliation. - Update model-specific language and context fields.
- Tune
delayagainst measured latency and final accuracy. - Test disconnects, empty turns, interruptions, and long sessions.
- Roll out gradually with a model-level fallback.
OpenAI’s official migration cookbook provides side-by-side request examples for both paths.
Final verdict
There is no universal winner because the models expose different product contracts.
GPT-Transcribe is the best default for new file-based speech-to-text work in 2026. It combines a lower estimated per-minute price with structured context, multiple language hints, detected-language metadata, and streamed text from completed recordings.
Whisper-1 is the specialist that refuses to disappear. Native timestamps, subtitle formats, and audio-to-English translation make it the correct choice whenever alignment or translation is part of the required output.
GPT-Realtime-Whisper remains viable for existing live systems, but it is not the forward-looking default. New continuous transcription projects should evaluate GPT-Live-Transcribe, while existing systems should migrate only after representative accuracy, latency, and reliability tests.
The best decision process is therefore:
- classify the audio as completed or live;
- write down the exact output schema your product needs;
- route specialized requirements to the appropriate model;
- evaluate real audio instead of relying on a generic benchmark;
- measure total workflow cost, not only the advertised per-minute rate.
That approach produces a transcription system that is accurate enough for its domain, fast enough for its interface, and compatible with the artifacts users actually expect.
Frequently asked questions
Is GPT-Transcribe the same as GPT-4o-Transcribe?
No. gpt-transcribe is the current high-accuracy model recommended for new file-transcription workflows. gpt-4o-transcribe is an earlier model that existing integrations can continue using.
Can GPT-Transcribe create SRT or VTT files?
The current GPT-Transcribe contract does not provide native SRT or VTT output. Use Whisper-1 when native subtitle formats are required, or generate subtitles through a separate alignment and formatting workflow.
Can Whisper-1 stream a transcript?
Whisper-1 does not emit the file-transcription delta events supported by GPT-Transcribe. It processes uploaded files and returns the requested final response format.
Is GPT-Realtime-Whisper still available?
Yes, and existing integrations can continue to use it where supported. OpenAI recommends GPT-Live-Transcribe as the starting model for new continuous Realtime transcription systems.
Which model identifies different speakers?
Use gpt-4o-transcribe-diarize for speaker-labeled completed recordings. Speaker diarization is not provided by the three headline models and is not supported in Realtime transcription sessions.
What is the best model for multilingual audio?
Start with GPT-Transcribe for completed recordings because it accepts multiple expected language hints and can return detected-language metadata. For continuously arriving multilingual audio, evaluate GPT-Live-Transcribe with representative code-switching and accent samples.
Research note: This comparison uses OpenAI’s official model, transcription, migration, and pricing documentation available on July 30, 2026. Capabilities and prices can change; verify the live documentation before production deployment.
Author
Categories
/v1/audio/transcriptionsFile streaming is not live audioWhere GPT-Transcribe is weaker2. Whisper-1: old, capable, and still necessaryWord and segment timestampsNative SRT and VTTTranslation into EnglishWhy Whisper should not remain your automatic default3. GPT-Realtime-Whisper: live by design, legacy by recommendationWhy it is no longer the default recommendationThe event modelWhen maintaining GPT-Realtime-Whisper is reasonableAccuracy: word error rate is only the beginningCost: compare the entire pipelineWhich model should you choose?Choose GPT-Transcribe when:Choose Whisper-1 when:Keep GPT-Realtime-Whisper when:Choose GPT-Live-Transcribe instead when:Choose a fourth model when the requirement demands itA production-ready routing strategyMigration checklistFinal verdictFrequently asked questionsIs GPT-Transcribe the same as GPT-4o-Transcribe?Can GPT-Transcribe create SRT or VTT files?Can Whisper-1 stream a transcript?Is GPT-Realtime-Whisper still available?Which model identifies different speakers?What is the best model for multilingual audio?