OpenAI Audio API: speech, transcription, and realtime voice in 2026

Kurnia Kharisma Agung Samiadjie
Written by

Kurnia Kharisma Agung Samiadjie

Katelin Teen
Reviewed by

Katelin Teen

Last edited September 8, 2026

Expert Verified
Blue waveform icon on an abstract blue and purple background

What the OpenAI Audio API does

OpenAI's audio and speech APIs support four related jobs:

  • Speech to text: turn speech into a transcript for captions, search, records, or analysis.
  • Text to speech: turn text into spoken audio for narration, accessibility, or spoken replies.
  • Speech to speech: run a live session where a model listens, reasons, and speaks.
  • Speech translation: translate live speech or a completed recording through the appropriate audio workflow.

The right architecture depends on whether the audio is already complete or still arriving. That is more useful than beginning with a model name.

Choose the audio architecture first

Completed recordings and bounded requests

For a recorded support call, meeting, or voice note, use file transcription. OpenAI recommends gpt-transcribe as the starting model for recorded speech in its original language. The API accepts supported files up to 25 MB; longer recordings need a deliberate handling strategy rather than an assumption that the upload will work.

Use a specialized transcription path only when the workflow needs it. For example, speaker diarization can label speakers in a recording, while whisper-1 remains the option for word or segment timestamps and subtitle formats. For a completed recording that must be translated into English, the documented translations endpoint uses whisper-1.

Test transcription with the conditions your callers actually create. OpenAI recommends checking background noise, microphone quality, telephony audio, accents, and domain vocabulary. A transcript is another system output to review; it should not silently become the source of truth for a refund, account change, or safety-sensitive decision.

Live audio and low-latency conversations

Use the Realtime API when the application receives live audio and needs immediate events. The current documentation distinguishes voice-agent sessions, continuous translation sessions, and transcription sessions. A voice-agent session is for a model that responds to the caller; a transcription session emits text without model-generated spoken replies.

Connection choice is part of the build. OpenAI documents WebRTC for browser or mobile audio and WebSockets for a server that already receives audio from a call system or another media pipeline. SIP is a separate telephony option, so validate current model support before designing around it.

For a support voice agent, OpenAI's voice-agent guide describes two useful designs. A speech-to-speech session prioritizes natural, low-latency interaction. A chained workflow gives the application explicit stages for transcription, text reasoning, policy checks, internal-system calls, and speech output. The second design can be a better fit when an approval or a durable transcript must sit between what the caller said and what the system does.

Spoken output

The text-to-speech API generates audio from text and can stream output before the full response is complete. The endpoint uses a model, input text, and selected voice; format choices affect how the audio is used. For example, OpenAI documents WAV and PCM as options for faster playback paths.

If customers hear an AI-generated voice, OpenAI requires clear disclosure that it is AI-generated rather than human. This is separate from whether the spoken response is correct. The workflow still needs accurate knowledge, a policy boundary, and a way for a caller to reach a person when the issue cannot be resolved safely.

What your application must still handle

Adding audio changes the transport and user experience, not the basic responsibility of a support workflow. Whether a model is transcribing a call or speaking in real time, the application remains responsible for the following:

Part of the workflowWhat to verify
TranscriptDoes it capture the customer's intent, names, numbers, and relevant details accurately enough to use?
Knowledge and policyDoes the response use the approved policy rather than inventing an exception?
Tool requestDoes the application check identity, permission, and required approval before an action runs?
ResultDoes the order, helpdesk, or other connected service confirm the action actually happened?
Customer handoffDoes the caller know when a human must decide, and can they reach one?

For a damaged-delivery call, the transcript may say that the order arrived outside the normal refund window. The workflow should identify the exception, request the evidence the policy requires, and route a decision to a person when required. It must not say a refund was issued unless the connected order system confirms it.

OpenAI's safety guidance also recommends evaluating model behavior over a broad range of inputs and using human review where the output is used in practice. For live interactions with individual end users, the Realtime guidance documents privacy-preserving safety identifiers as a recommended way to associate behavior with an end user. These are controls to design and test, not a guarantee that a voice workflow is safe.

Pricing: measure the whole workflow

Audio costs cannot be reduced to one old per-minute estimate. The OpenAI pricing page lists separate rates for realtime audio, audio-capable models, transcription, speech generation, and text usage. The result depends on the current model, input and output modalities, audio duration, cache behavior, and any additional tools or systems in the request loop.

Measure a representative workflow before committing to an architecture:

  • Run calls with the expected duration, language, noise, and interruptions.
  • Include transcription, reasoning, tool calls, and generated speech where the design uses them.
  • Record cost alongside transcript accuracy, correct policy decisions, latency, failed actions, and human escalations.
  • Repeat the evaluation when the model, prompt, audio routing, or policy changes.

This separates a cheap demo from a support workflow that handles real callers correctly.

Use eesel CLI after the audio step

The eesel CLI is for operating an existing eesel teammate, not for opening an OpenAI Realtime session or uploading audio to OpenAI. It is the same teammate and workspace as the dashboard: a change made through the CLI appears in the dashboard, and the reverse is also true.

That distinction is useful when your audio system produces a transcript and the support team needs to decide what happens next. A support lead can use the terminal, a script can use the CLI's JSON output, and a coding agent such as Claude Code, Codex, or Cursor can perform a scoped review of the teammate that will prepare a follow-up.

Start with Node.js 18.17 or newer, then confirm the workspace and teammate before inspecting or changing anything:

Bash
npx @eesel/cli login
npx @eesel/cli whoami
npx @eesel/cli agents

Point the inspection commands to the intended support teammate. This avoids a script or coding agent acting on the saved default by mistake:

Bash
TARGET_EESEL_AGENT="paste-agent-id-or-name-here"

npx @eesel/cli status --agent "$TARGET_EESEL_AGENT"
npx @eesel/cli integrations --agent "$TARGET_EESEL_AGENT"
npx @eesel/cli instructions --agent "$TARGET_EESEL_AGENT"

Ask the coding agent for a read-only report: which knowledge sources are connected, whether their content has finished downloading, and which instructions govern damaged deliveries, refunds, and handoff. Do not let it connect accounts, change permissions, or enable automations as a side effect of that review.

After a human approves a configuration change, use --dry-run on the relevant write command before it is sent. Then create a fresh, named conversation and test an approved, redacted transcript. For example:

Bash
npx @eesel/cli new --name "damaged-delivery call" --agent "$TARGET_EESEL_AGENT"
npx @eesel/cli chat "Here is an approved, redacted call transcript. Draft a written follow-up for a damaged delivery requested outside the normal refund window. Use the approved policy, identify missing evidence, and state when a human decision is needed." --agent "$TARGET_EESEL_AGENT"

Review the result for the policy boundary, missing evidence, and honest handoff. The CLI chat is a support-workflow test; it does not transcribe the recording, generate a voice reply, place a call, or prove that a refund happened. If a workflow creates held actions, inspect them with npx @eesel/cli approvals --agent "$TARGET_EESEL_AGENT" and confirm the final action in the connected system before telling a customer it succeeded.

Setup and observation commands are free; CLI chat is billed work. Scope the test accordingly, and use the JSON output to make the coding agent's assessment inspectable.

Should you build with OpenAI Audio API or operate a support teammate?

Build with the OpenAI Audio API when you need to own the audio experience: capture or receive calls, choose a transcript or realtime architecture, connect tools, and deliver voice output. That path gives control, but your team owns the infrastructure, permissions, evaluations, and operations around the model.

Use eesel when the immediate job is operating an existing support teammate. The CLI lets people, scripts, and coding agents inspect and configure that same teammate alongside the dashboard, then test an approved text-based follow-up from the audio workflow. It complements the audio layer; it does not replace it.

The Activity view gives a support lead a dashboard-side record to compare with the CLI's JSON output after a controlled test.

eesel AI Activity page showing recent teammate work and status labels.
eesel AI Activity page showing recent teammate work and status labels.

The Activity page after a controlled teammate test.

If that support workflow fits your project, try eesel and begin with the CLI guide.

Frequently asked questions

What is the OpenAI Audio API?

OpenAI's audio APIs cover speech-to-text transcription, text-to-speech generation, and live audio sessions. Choose a request-based API for a recorded file or bounded request, and a Realtime session when audio arrives live and the application needs low-latency events.

Which OpenAI Audio API option should I use for a support-call recording?

For a completed recording, start with file transcription. OpenAI recommends gpt-transcribe for ordinary recorded-speech transcription; use a specialized option only when you need features such as speaker labels, timestamps, subtitles, or English translation. Test with the accents, noise, telephony quality, and vocabulary your calls contain.

When should I use OpenAI Realtime API for audio?

Use a Realtime session when your application receives live audio and needs partial events or low-latency interaction. Browser and mobile clients generally use WebRTC; server media pipelines can use WebSockets. Realtime is not required to stream the transcription of a completed file.

Does the OpenAI Audio API execute support actions?

No. A voice workflow can request tools, but the application must execute them, check permissions and approvals, prevent duplicate side effects, and verify the real service response. A fluent spoken answer is not evidence that an order update or refund succeeded.

What should I test before using OpenAI Audio API in customer support?

Test representative audio, including background noise, microphone quality, telephony, accents, product names, interruptions, and policy exceptions. Review transcript accuracy separately from the final support decision, and include human review or approval for actions where a mistake has material impact.

How should I estimate OpenAI Audio API cost?

Use OpenAI's current pricing page for the exact model and route you will deploy. Measure a representative full workflow: input and output audio, transcription or speech generation, text tokens, cached input where relevant, and any tools. Recheck when the model, audio duration, or architecture changes.

Where does eesel CLI fit after a support call?

The eesel CLI operates an existing eesel teammate in the same workspace as the dashboard. It does not replace OpenAI's transcription, speech, or realtime transport. A person, script, or coding agent can use it to inspect the teammate's knowledge and instructions, then test a redacted call transcript or approved follow-up workflow.

Can Claude Code, Codex, or Cursor use eesel CLI?

Yes. The CLI prints JSON, which lets coding agents handle a scoped setup or review task. Confirm the workspace and teammate, inspect before proposing changes, use --dry-run for a write, and review the resulting configuration and customer-facing behavior before enabling automation.

Share this article

Kurnia Kharisma Agung Samiadjie

Article by

Kurnia Kharisma Agung Samiadjie

Kurnia is a software engineer and writer at eesel AI with two years of SEO experience, writing about AI tools, helpdesk software, and customer support. He pairs a developer's understanding of how these products are built with search-driven research into what actually ranks and resonates with the people searching for them.

Related Posts

All posts →
Blue gradient graphic reading Realtime API GA and OpenAI
Guides

OpenAI Realtime API: a current guide to live voice support

Learn when the OpenAI Realtime API fits a live voice-support experience, how to choose a session and transport, and what to test before callers rely on it.

Rama Adi NugrahaRama Adi NugrahaOct 12, 2025
Blue waveform icon on an abstract blue and purple background
Guides

OpenAI Audio Speech API: what to build and test in 2026

Understand the OpenAI Audio Speech API for text-to-speech, transcription, and realtime voice work, then separate the model infrastructure from the support workflow you operate.

Rama Adi NugrahaRama Adi NugrahaOct 12, 2025
GPT realtime mini: A practical guide to OpenAI's voice AI model
Guides

GPT realtime mini: A practical guide to OpenAI's voice AI model

OpenAI’s new GPT realtime mini model is making waves, but what is it and how can you use it? This guide explains its speech-to-speech capabilities, complex pricing, and how to leverage it for customer support without the engineering overhead.

Kenneth PanganKenneth PanganOct 6, 2025
OpenAI’s gpt-realtime is here: What it means for the future of voice AI
Guides

OpenAI GPT-Realtime: What it means for voice AI (2026)

OpenAI’s gpt-realtime replaces clunky pipelines with seamless speech-to-speech processing. Faster, smarter, and production-ready, it’s set to transform voice AI for support, apps, and real-world use.

Kenneth PanganKenneth PanganAug 31, 2025
A practical guide to OpenAI audio transcription
Guides

A practical guide to OpenAI audio transcription

Thinking about using OpenAI's audio transcription API? This guide covers everything you need to know about its features, business use cases, pricing, and critical limitations like hallucinations before you start building.

Stevia PutriStevia PutriOct 12, 2025
Realtime API vs Chat Completions API: Which OpenAI API is right for you?
Guides

Realtime API vs Chat Completions API: Which OpenAI API is right for you?

Wondering whether to use OpenAI's Realtime API vs Chat Completions API? This guide breaks down the key differences in architecture, speed, cost, and use cases to help you decide.

Stevia PutriStevia PutriOct 20, 2025
Assembly AI: A deep dive into the leading speech-to-text API
Guides

AssemblyAI (2026): Speech-to-text API pricing and accuracy

Discover how Assembly AI enables transcription, content moderation, and audio analysis with scalable speech AI APIs.

Stevia PutriStevia PutriAug 26, 2025
A person viewing connected user and assistant message threads
Guides

OpenAI Threads API: conversation state after Assistants

Learn why OpenAI conversation state now belongs in the Responses and Conversations APIs, what your application still owns, and how to test an eesel teammate safely.

Rama Adi NugrahaRama Adi NugrahaOct 12, 2025
A base network, curated examples, checklist, and refined network
Guides

OpenAI Fine-Tuning API: what to do as it winds down

Learn OpenAI's current fine-tuning status, how to decide between training and support configuration, and how to test a safer path before customer replies change.

Rama Adi NugrahaRama Adi NugrahaOct 12, 2025

Ready to hire your AI teammate?

Set up in minutes. No credit card required.

Get started free