Skip to content

Tracing

Tracing captures a chatbot's inputs, outputs, and decision-making process so bot developers can understand and debug their chatbot's behavior.

Open Chat Studio provides builtin tracing for all users. You can optionally connect an external Langfuse tracing provider to get additional span-level detail.

Builtin Tracing

Builtin tracing is always available — no feature flag or external service is required. A trace is recorded automatically for every conversation turn.

Trace Table

The trace table lists every recorded trace for your team. You can filter the table by:

  • Chatbot — show only traces from a specific chatbot
  • Session ID — show only traces from a single conversation session
  • Participant — show only traces for a specific participant

You can reach a pre-filtered trace table from several places in Open Chat Studio:

  • From a trace detail page, use the quick links to jump to all traces for that session, chatbot, or participant.
  • From a session transcript, use the "View traces" link to open the trace table pre-filtered to that session.
  • From the chatbot list or detail page, use the "View chatbot traces" link to open the trace table pre-filtered to that chatbot.

Each builtin trace captures:

  • Input — the message sent by the participant
  • Output — the response generated by the bot
  • Duration — how long the turn took to complete
  • Session data snapshot — a point-in-time record of the session state
  • Participant data snapshot — a point-in-time record of the participant's data
  • Participant data changes — a diff showing what was added, removed, or modified during the turn
  • Performance metrics — LLM usage data for the turn (see below)

Trace Detail Page

The trace detail page shows a "Changes during this trace" section below the participant data snapshot. Each field that changed during the turn is highlighted with a color-coded indicator:

  • Green — data that was added
  • Red — data that was removed
  • Yellow — data that was modified

If no participant data changed during the turn, this section is not shown.

Performance Metrics

The trace detail page includes a Performance Metrics section that shows resource usage for each pipeline execution:

Metric Description
LLM Turns Number of LLM calls made during the turn
Tool Calls Number of individual tool invocations (each call counted separately)
Total Tokens Combined token consumption (input + output)
Input Tokens Prompt tokens sent to the LLM
Output Tokens Completion tokens generated by the LLM

Metrics are collected across all LLM nodes in the pipeline (Router and LLM nodes). Pipelines that have no LLM nodes display "—" for all metrics. Token counts are provider-reported values; pipelines that fail before LLM calls are completed may show partial or null values.

CSV Export

When you export traces as CSV, the file includes a Participant Data column. For each conversation turn, the input message row shows the participant data at the start of the trace, and the AI response row shows the participant data at the end of the trace.

Note

Builtin tracing records top-level information only. It does not include span-level detail (individual LLM calls, tool calls, retrieval steps, etc.). To see spans, configure a Langfuse provider.

Langfuse External Tracing

Langfuse is an optional external tracing provider. When Langfuse is configured for a bot, OCS sends detailed trace data to Langfuse and enriches the trace detail page with span-level information.

Tracing begins automatically with the next conversation after you configure a Langfuse provider.

Trace Detail Page

When Langfuse is configured, the trace detail page in Open Chat Studio includes:

  • A span tree panel that lets you inspect exactly what happened inside a single trace.
  • A direct link to the corresponding trace in the Langfuse UI.

The span tree panel is split into two panes:

  • Left pane — the full Langfuse observation tree, with colored status dots and latency badges for each span.
  • Right pane — the input and output for the selected span, shown as readable text by default, with a "Show raw JSON" toggle for the underlying Langfuse data.

When the panel loads, it automatically selects the first span that has an error status, or the first span overall if no errors are present. This makes it easy to jump straight to the root cause of a problem.

Note

The span tree panel only appears when a Langfuse tracing provider is configured for your bot. If no Langfuse provider is configured, no trace information exists for the session, or the Langfuse API returns an error, the panel is hidden and the rest of the page is unaffected.