- A
transcriptsrow with the full turn-by-turn content. - An optional recording (audio for voice, transcript-only for chat).
- Zero or more
conversation_analyses— the assessment saved each time the call is analyzed. - Zero or more
analysis_findings— per-call observations, each tagged with a finding type.
Summaries
The conversation detail page can generate a short AI summary on demand. Click Generate summary and Zelto summarizes the transcript and caches the result on the row; opening the call again reads the cached summary instead of regenerating it.Monitor results
The call detail page lists every monitor assigned to the conversation’s agent. For each monitor, it shows the call’s affected status, score, stage outputs, and reasoning when the evaluation is available. A monitor shows N/A when it is assigned to the agent but has not evaluated that call yet. If the agent has no assigned monitors, the panel also shows N/A.Tool calls
When a voice agent invokes a tool — a function call such as checking availability, booking an appointment, or looking up an order — Zelto captures each call and puts it to work three ways:- Inline in the transcript. The call shows up as a
toolturn in the conversation timeline, in order, with the tool name, its arguments, the result, and a status badge (success / error / pending). Open a conversation to read tool calls alongside what was said. - In a tool-check monitor. A
tool_checkstage classifies the call from those events — whether an expected tool fired, succeeded, errored, returned empty, or fired twice. Confirmation language in the transcript is a claim, never treated as successful execution. - In the AI analysis. Summaries, findings, scorecards, and metrics also read the structured call — name, arguments, and result — so a model stage can reason about what the agent actually did (e.g. “booked the wrong date”), not just what it said. Use a tool check, not an AI stage, when the question is whether a specific tool executed.
- In tool-call analytics. Every tool call is also written to a
tool_call_tracesrow (tool name, arguments, result, status, timing) so tool usage, error rates, and latency can be analyzed across many calls — not just read one conversation at a time. Open Tool calls to see that organization-wide view.
toolCall to any tool turn — see
Custom & other providers.
Capture is forward-looking: calls ingested from when the feature ships onward
include their tool calls.
Filtering
The conversations list filters on:
Filters persist in the URL, so a filtered list is shareable.
Metadata filters are property rows in the style of a product-analytics
tool: a key (a dotted path into the call’s provider metadata, such as
campaign, model.provider, or for Retell calls retell.transfer and
retell.call_analysis.custom_analysis_data.<field>; keys seen on your recent
calls are suggested),
an operator (equals, does not equal, contains, does not contain,
numeric greater than / less than and their or equal forms, is set, is not set, is true, is false), and a value. Up to eight rows combine with
AND, and the set is encoded in the URL as ?meta=key:op:value. The same bar
scopes the numbers on the Monitors
list, Compare view, and a monitor’s Overview and Results tabs.
Selecting a company in the sidebar applies the same exact per-call filter. This
is more precise than agent-based company views when one agent serves several
companies.
Findings
Any conversation can be linked to a finding — the durable, shareable issue it’s an example of — and curated findings can be pushed to Linear from the finding’s panel. The assessment saved when a call is analyzed lives in itsconversation_analyses row.
For the OpenTelemetry view of a call — the span tree, per-step latency, tokens,
and logs — see Traces. A trace links to its conversation when
their session ids match.

