Overview
LiveKit Cloud provides built-in observability for agent sessions, but you might need session data in systems you already use. The Agents SDK and LiveKit Egress let you collect session data and send it to your own warehouse, tracing backend, or storage bucket.
Agent insights covers debugging without any code. LiveKit Cloud records each session and presents the transcript, trace, and audio together. When you collect the data yourself, you can send it to systems LiveKit Cloud doesn't integrate with or store it in a specific region. This doesn't turn off Agent insights. A project can continue reading sessions in LiveKit Cloud while exporting the same spans to a third-party backend.
Choosing a mechanism
Each mechanism collects a different kind of data. Data hooks and trace export run inside your agent process, while LiveKit Egress runs as a LiveKit service that your agent starts.
| Mechanism | What it collects | Where it goes |
|---|---|---|
| Data hooks | Session transcripts, session reports, and per-turn and per-session metrics. | Wherever your callback code sends it. |
| OpenTelemetry traces | The OpenTelemetry spans for each session, with the same content LiveKit Cloud traces. | Any OpenTelemetry-compatible backend, such as Langfuse. |
| Record audio and video | Session audio and video, captured through LiveKit Egress. | Your own storage provider. |
Because you choose each destination, you also control data residency. To learn more, see Data residency.
In this section
The following topics cover each mechanism in detail.