Guide

Daily voice bots with Cartesia speech and transcription

Daily carries the audio, Pipecat runs the pipeline, and Cartesia supplies the voice and the transcription for a WebRTC bot.

install.sh
pip install "pipecat-ai[daily,cartesia]"

bot.py
from pipecat.transports.daily.transport import DailyTransport, DailyParams
from pipecat.services.cartesia.tts import CartesiaTTSService
from pipecat.services.cartesia.turns.stt import CartesiaTurnsSTTService

transport = DailyTransport(
    room_url,
    token,
    "Voice Bot",
    DailyParams(audio_in_enabled=True, audio_out_enabled=True),
)

stt = CartesiaTurnsSTTService(api_key=os.environ.get("CARTESIA_API_KEY"))
tts = CartesiaTTSService(api_key=os.environ.get("CARTESIA_API_KEY"))

pipeline = Pipeline(
    [
        transport.input(),
        stt,
        user_aggregator,
        llm,
        tts,
        transport.output(),
        assistant_aggregator,
    ]
)

Pipecat docs: Daily transport (read October 2026)

What you can do with Daily

What teams build when they put Cartesia and Daily together.

Daily handles the media

DailyTransport connects the bot to a Daily room and moves the call audio in and out of the Pipecat pipeline.

Cartesia handles speech

CartesiaTurnsSTTService hears the caller and detects turns, and CartesiaTTSService speaks the reply back into the room.

Pipecat joins them

The pipeline passes audio from the transport to the transcriber, then the LLM, then the voice, and back to the room.

Set it up

A guide built from two documentation pages. Daily is a Pipecat transport, and Cartesia is a Pipecat service. There is no direct Daily to Cartesia link. Vendor details read in October 2026.

  1. Install both extras

    Install pipecat-ai with the daily and cartesia extras.

  2. Create a Daily room

    Create the room through Daily's API first. The bot joins an existing room.

  3. Create the transport

    Pass the room URL, a token if the room is private, a bot name and audio flags.

  4. Put the Cartesia services in the pipeline

    Speech to text after the transport input, text to speech before the output.

Before you build

Room creation needs a Daily key

Pipecat's docs say a Daily API key is needed to create and manage the Daily rooms your bot joins.

Phone calls

For PSTN calls with a Managed Agent, use the phone number routes instead. This page is for WebRTC bots.

Daily integration FAQs

Can I use Cartesia voices in a Daily room?

Yes, through Pipecat. DailyTransport connects the bot to the room, CartesiaTurnsSTTService transcribes the caller, and CartesiaTTSService speaks the reply. Daily and Cartesia never talk to each other directly. Install pipecat-ai[daily,cartesia] to get both.

Do I need a Daily API key?

Yes, to create the rooms your bot joins, since the bot only joins an existing room. On Pipecat Cloud, every account is provisioned with a Daily API key, and the CLI can create the room for you. Private rooms also need a meeting token passed to DailyTransport.

Do I need a Cartesia account as well as Daily?

Yes. Daily carries the room's audio, and the Cartesia services in the Pipecat pipeline call Cartesia's API with your own Cartesia API key. Create one in the Playground and export it as CARTESIA_API_KEY.

What does a Daily bot with Cartesia cost?

Cartesia charges API credits on your plan: 1 credit per character of speech and 3 credits per second of transcribed audio, with 20K free credits a month. Daily room minutes bill to your Daily account. Pipecat's docs say 1:1 voice sessions on Pipecat Cloud with its provisioned Daily key are free.

Can a Daily bot take phone calls?

This page covers WebRTC rooms, not phone numbers. Pipecat has separate telephony transports, such as Twilio's. For a phone agent that Cartesia hosts, use a Managed Agent on a Twilio or SIP trunk number. Agents run at $0.03/min, plus LLM usage and telephony.

Get started today

Talk to an expert.

Connect with a member of our team and learn how Cartesia can help you build world-class voice experiences.

Contact Sales

Start building.

Access our models via API and bring a voice agent into production in minutes.

Try Cartesia