Deepgram Buys Daily, Keeps Pipecat Open, and Ships a Standard for How Voice Agents Should Sound

Introduction
Deepgram, the speech-to-text and TTS company behind Nova and Flux, announced today (October 29) at its first Deepgram Speak event in San Francisco that it's acquiring Daily, the company that makes Pipecat. If you've built a voice agent in the last year, there's a good chance Pipecat was the glue between your speech-to-text, your language model and your voice.
The part I care about most isn't the deal itself. It's what came with it: Pipecat stays open source, and the two teams published the Real-time Context Standard (RCS), an open spec for passing how something was said between the models in a voice pipeline, not just the words. You can read the spec and run the demo today.
What Was Announced
From Deepgram's announcement, the RCS docs and the demo repo:
- The deal: Deepgram is acquiring Daily, which also runs a global real-time network for voice and video. The Daily team joins Deepgram, and co-founder Kwindla Hultman Kramer becomes Deepgram's Head of Open Source.
- Pipecat's license: it stays fully open source and free under its existing BSD 2-Clause license. The GitHub repo sits at about 16.9k stars, and v1.15.0 shipped today.
- Pipecat Foundation: Deepgram, Daily and other contributors are setting up an independent foundation, and Pipecat stays vendor-neutral, so you can keep mixing STT, LLM and TTS from different providers.
- RCS 0.1 (alpha): an open standard, co-developed with the Pipecat team, for tone and delivery context inside a voice agent. It's open for feedback and contributions.
- Coming later today: Deepgram says its product chief will preview a Deepgram Voice Agent Platform built on Pipecat, plus two new models built for live conversation, more languages and a Global API. Details weren't public when I wrote this.
What RCS Actually Does
A typical voice agent is a chain: speech-to-text hears the user, an LLM writes a reply, and TTS speaks it. Between each step only plain text gets passed along, so the fact that the caller sounded furious, or whispered, or was being sarcastic, disappears before the LLM ever sees it. The same goes the other way: the LLM has no standard way to tell the TTS how to say the reply.
RCS fixes that with small inline tags that ride in the same text stream:
- Perception (user to LLM): a short reading at the start of the user's message, with labels and confidence scores. The docs use this example:
([tone frustrated=0.86, neutral=0.10],[speech_rate value=4.1]) Can you tell me where my order is? - Expression (LLM to TTS): compact delivery tags like
<<warm>>or sound tags like[[laugh]], which a compatible TTS performs. - Built for streaming: a delivery tag lasts until the next one, there are no closing tags across sentences, and a half-written tag gets stripped if the user interrupts, so nothing broken gets spoken.
- Capabilities up front: each model declares what it can produce or read before the call starts, so the LLM only writes tags the voice will actually use.
Version 0.1 covers how the user sounded and how the agent should speak. Speaker identity and turn-taking are on the roadmap, and the docs warn that formats can change in incompatible ways until 1.0.
How to Try It Today
The RCS demo is a customer-service agent for a made-up outdoor gear shop. Its pipeline runs Deepgram Flux for speech-to-text, Pipecat's open Tone models to read emotion and sarcasm, PhoneLLM Mini on Baseten (or GPT-5.6 Luna) as the brain, and ElevenLabs v4 Text-to-Dialogue or Cartesia for the voice. There's also a hosted demo at speak26.pipecat.ai.
To run it locally:
cd server
cp env.example .env # add DEEPGRAM_API_KEY plus ELEVENLABS_API_KEY or CARTESIA_API_KEY
uv sync
uv run bot.pyThen open http://localhost:7860/client. The first session pulls the public Tone and backchannel models from Hugging Face, so no HF token is needed.
Pro Tip
Start the session with "tts": "elevenlabs" if you want breaths and sighs. The README notes breaths only work with the ElevenLabs voice. Then set "use_tagger": "false" to let the LLM write the delivery tags itself instead of Pipecat's tagger, and compare how much more natural (or chaotic) the reply sounds.
Why It Matters for Audio Creators
For voice actors, game devs and anyone building talking characters, the big question with any acquisition is whether the open tool you rely on gets locked down. Here the answer, at least on paper, is no: same BSD license, a foundation, and continued support for other vendors' voices, including ElevenLabs and Cartesia in Deepgram's own demo.
RCS is the more interesting long-term piece. Right now every TTS has its own style tags and every pipeline hand-rolls its emotion prompts. A shared, token-cheap format for "she sounds upset, answer gently, add a small laugh here" is exactly what expressive characters and interactive audio stories need. It's an alpha with one main backer, though, so whether other voice vendors adopt it is the real test.
Conclusion
Deepgram is acquiring Daily, Pipecat stays BSD-2 open source under a new Pipecat Foundation, and the two teams shipped RCS 0.1, an open alpha standard for carrying tone and delivery cues between speech-to-text, LLMs and TTS. The demo is runnable today, and two new Deepgram conversation models are due later at Speak. I'll be watching for those.
—Anabel ♡
