# OpenAI text to speech for AI agents: voice with the key you have

[OpenAI](https://openai.com) is best known for ChatGPT and its language models, and its API also turns text into speech and speech into text. If you already pay for OpenAI, the same kind of API key can give your agents a voice.

[SFCrew](https://sfcrewai.com/) is an open source app for AI teammates that do real work. You talk to each bot in chat, and you can also talk to it by voice: hold the mic to speak, have replies read aloud, or call a bot in real time. Connect OpenAI and it does the speaking and the transcription. SFCrew runs the bot, decides what it says, and keeps the transcript in the chat.

Updated November 4, 2026.

## What is OpenAI text to speech?

OpenAI's [Audio API](https://developers.openai.com/api/docs/guides/text-to-speech) has a speech endpoint that reads text aloud in one of 13 built-in voices, such as Alloy, Coral, Marin and Cedar, and a transcription endpoint that turns a recording into text. Both are reached with an ordinary OpenAI API key.

OpenAI has announced that its current speech models, including `gpt-4o-mini-tts`, shut down on January 6, 2027. Its replacement, `gpt-realtime-2.1-mini`, works through the Realtime API instead of the speech endpoint. The `gpt-4o-mini-transcribe` transcription model follows on February 26, 2027.

## What you can do with OpenAI in SFCrew

OpenAI both speaks and transcribes, so it covers every voice feature in SFCrew. The [voice and calls guide](https://sfcrewai.com/docs/voice-and-calls/) shows where each control lives.

- Talk instead of typing. Hold the mic in the composer, speak, and let go to send. When SFCrew transcribes on the server, as it does in a phone browser or the desktop app, it uses `gpt-4o-mini-transcribe`.
- Hear replies. Choose **Speak this reply** on any message, or turn on **Read replies aloud** in a bot's settings. Replies are spoken with `gpt-4o-mini-tts`.
- Call a bot. Choose **Call** at the top of a chat to talk in real time. You can cut in while the bot is speaking, and the transcript stays in the chat.
- Get called. Ask "call me when the drafts are ready" and the bot rings you. A bot may also call if you've missed the same reminder several times.
- Give each bot its own voice. Pick from OpenAI's 13 voices per bot, so different bots are easy to tell apart.
- Send voice notes from chat apps. A voice note sent to a bot through Telegram, for example, is transcribed before the bot reads it. See [messaging apps](https://sfcrewai.com/docs/messaging-apps/).

## When to choose OpenAI

Choose OpenAI when you already have an OpenAI account and want voice working in a few minutes, with clear voices and solid transcription from one key. Because its speech models are scheduled to shut down, treat it as a convenient start rather than a long-term pick, until SFCrew moves to OpenAI's newer models.

[ElevenLabs](https://sfcrewai.com/voice-providers/elevenlabs/) also speaks and transcribes, with more natural voices and support for your own cloned ones. [Cartesia](https://sfcrewai.com/voice-providers/cartesia/) is built for fast, interruptible calls but only speaks. [Fish Audio](https://sfcrewai.com/voice-providers/fish-audio/) offers cloning and expressive speech. If you like OpenAI's API shape but want audio on your own hardware, a [self-hosted](https://sfcrewai.com/voice-providers/self-hosted/) server such as Kokoro or Whisper speaks the same protocol. [macOS voices](https://sfcrewai.com/voice-providers/macos/) need no key when your server runs on a Mac. The [comparison](https://sfcrewai.com/voice-providers/) puts them side by side.

## Limits

- SFCrew speaks with `gpt-4o-mini-tts`, which OpenAI shuts down on January 6, 2027, and transcribes with `gpt-4o-mini-transcribe`, which follows on February 26, 2027. Until SFCrew moves to newer models, OpenAI voice stops working on those dates.
- The models are fixed. You can't choose `tts-1`, a newer model or a different transcription model from SFCrew.
- SFCrew offers OpenAI's 13 built-in voices. It doesn't send tone instructions, and custom voices made in your OpenAI account aren't supported.
- Each sentence is generated as a finished clip and played in order, rather than streamed, so there is a short pause before the bot starts talking.
- OpenAI's usage policies ask you to tell listeners the voice is AI-generated. Keep that in mind if a bot's voice reaches people outside your team.
- Calls and hold-to-talk are a server setting. On a self-hosted server they stay off until the admin turns them on.

## How to set it up

Anyone can do this in their own settings, on SFCrew Cloud or a self-hosted server. The key belongs to your account, and it is stored separately from any OpenAI key you use for models, so paste it here even if you already added it elsewhere.

1. Create an API key in the [OpenAI platform](https://platform.openai.com) for a project with audio access.
2. In SFCrew, open **Settings → Voice**, choose **OpenAI** as the **Provider**, paste the **API key** and choose **Connect**.
3. Pick a **Voice**, such as Marin or Cedar, and use **Hear a sample** to check it.
4. Optionally, open a bot's settings, expand **Advanced**, turn on **Read replies aloud** and give it its own **Voice**.
5. If you run your own server and want calls and hold-to-talk, set `PHONE_CALLS_ENABLED=true` on the API and worker.

## FAQ

### Can I use OpenAI text to speech for an AI agent?

Yes. In SFCrew, connect OpenAI in **Settings → Voice** and your bots can read replies aloud, take calls and transcribe what you say. Note that OpenAI shuts down its current speech models on January 6, 2027.

### Is gpt-4o-mini-tts being deprecated?

Yes. OpenAI says `tts-1`, `tts-1-hd` and `gpt-4o-mini-tts` shut down on January 6, 2027, and points to `gpt-realtime-2.1-mini` through the Realtime API. SFCrew uses `gpt-4o-mini-tts` today, so OpenAI voice in SFCrew depends on moving to the new model before then.

### Which OpenAI voices can a SFCrew bot use?

The 13 built-in voices: Alloy, Ash, Ballad, Cedar, Coral, Echo, Fable, Marin, Nova, Onyx, Sage, Shimmer and Verse. You can set a default and a different voice per bot.

### OpenAI vs ElevenLabs for voice agents?

Both speak and transcribe in SFCrew. OpenAI is convenient if you already have a key and offers a fixed set of voices. [ElevenLabs](https://sfcrewai.com/voice-providers/elevenlabs/) sounds more natural, lets you use voices you clone, and isn't affected by OpenAI's 2027 shutdown.

### Can I use a self-hosted Whisper server instead?

Yes, where your server offers it. Choose [Self-hosted](https://sfcrewai.com/voice-providers/self-hosted/) in **Settings → Voice** and enter the address of any OpenAI-compatible speech server, such as Kokoro for speech or Whisper for transcription.

## More voice providers for AI agents

- [Compare all voice providers](https://sfcrewai.com/voice-providers/)
- [ElevenLabs](https://sfcrewai.com/voice-providers/elevenlabs/): The most natural voices, including ones you clone
- [Cartesia](https://sfcrewai.com/voice-providers/cartesia/): Fast, natural voices on calls
- [Fish Audio](https://sfcrewai.com/voice-providers/fish-audio/): Expressive voices and your own cloned voice
- [Self-hosted voice](https://sfcrewai.com/voice-providers/self-hosted/): Private, offline voice with no vendor account
- [macOS voices](https://sfcrewai.com/voice-providers/macos/): Running SFCrew on a Mac with no voice key

## Sources

- [OpenAI, text to speech](https://developers.openai.com/api/docs/guides/text-to-speech)
- [OpenAI, deprecations](https://developers.openai.com/api/docs/deprecations)
- [SFCrew, voice and calls](https://github.com/Isuhail29/sfcrew-ai/blob/main/docs/voice-and-calls.md)
