Run Detail β€” Participants

Every run's detail page has two tabs: Overview and Participants. Overview is the aggregate view you already know β€” charts, trends, and insights across every conversation the run analysed. Participants turns the same run inside out: instead of "how many conversations landed in each bucket", it answers "who was behind them" β€” one row per participant, with every analysis type's result folded into a single value for that person.

Navigate here the same way you'd reach the Overview tab: go to Analytics β†’ Analysis, open the Runs tab, click any run to open its detail page, then select the Participants tab near the top.

Participants tab showing one row per participant with their combined analysis results

Not the Same as the Participants Directory

The CMS also has a Users β†’ Participants directory at Participants Directory β€” the agent's live list of every end-user who has ever chatted with it. This tab is related to that directory, but answers a narrower question, on four axes:

Participants DirectoryThis Tab
ScopeEvery end-user who has ever interacted with the agentOnly the participants behind conversations this one run analysed
FreshnessLive β€” always reflects the agent's current end-user baseFrozen the moment this run completed β€” it never updates itself afterwards
MembershipPlatform users onlyAlso includes kinds that never appear in the directory at all: Anonymous, Agent, ServiceAccount, Group, Unattributed
IdentityEvery row is a user recordAn Identified row is the same person as the matching directory entry; every other kind has no directory counterpart to look up

So a run's participant list is not a filtered view of the directory β€” it can contain kinds the directory has no concept of, and even its Identified rows are a snapshot, not a live link.


List or Grid β€” Your Choice

A view toggle in the toolbar switches between List View (a table, one row per participant) and Grid View (one card per participant). Both show the same fields, laid out differently; switching between them never changes which participants match your search and filters, only how they're displayed.

Participants tab view toggle switching between List View and Grid View

What a Row (or Card) Shows

FieldWhat it shows
ParticipantThe participant's identity β€” a display name or contact info when one was captured; contact details (email or phone), when captured, render inside this same cell rather than a separate column β€” β€” when none was captured. A caveat icon appears here too when the participant is a Group or business-account kind whose identity needs a bit more explanation β€” hover it for details
KindA colour-coded chip: Identified, Anonymous, Agent, ServiceAccount, Group, or Unattributed
ChannelsOne colour-coded chip per channel the participant's conversations came through: Web, WhatsApp, Instagram, A2a
ConversationsHow many of this run's conversations belong to the participant
Last ConversationThe date of the most recent of those conversations
One column per analysis typeThe participant's single combined result for that type β€” see How Results Combine

Opening a row or card for the full picture β€” identity, every analysis type's result, and the participant's conversations β€” is covered in The Participant Detail Drawer.


States You Can Encounter

The tab doesn't always show a list. Depending on the run, you may see one of these instead:

StateWhat it means
Participants Not Yet AvailableThe run's conversations haven't finished analysing yet β€” there's nothing to build a participant list from
Participant Results Not BuiltAnalysis is done, but nobody has built the participant list for this run yet. A Build participant list action starts it; the button shows Building… while the request is sent
Building participants…The list is being assembled in the background. The tab shows this while it waits, then switches to the list automatically when it's ready
Participant Build FailedThe build ran and did not succeed. The tab offers a way to start it again from the same place
Participant Build Timed OutThe build ran longer than allowed and was abandoned. As with a failed build, you can start it again

A run whose participant results were never built shows one of these states β€” a build action, not a list β€” until you (or someone else) triggers the build.

Older runs may show a separate notice instead of contact details: "Participant names and contact details were not captured for this run…" β€” those runs predate the data this tab needs, so identity is limited to what can still be inferred, like kind and channel.


Coverage and Sampling

Above the list, a banner states how completely the run covers its conversations:

  • Complete coverage: All {n} participants across {m} analysed conversations are shown below. β€” every conversation in the run was analysed, so the list is the full picture.
  • Sampled coverage: This run sampled {a} of {b} conversations β€” participant counts below reflect only the sampled conversations.

A sampled run only ever analysed part of its conversations, so its participant list is necessarily incomplete β€” participants whose only conversations fell outside the sample never appear at all, and conversation counts for the ones who do appear can undercount their real activity. Rerunning the same run does not fix this: Rerun copies the original run's sampling mode and sample size, so it re-analyses the same sampled subset of conversations rather than a wider one β€” it cannot make the participant list more complete, and running it would spend credits for no benefit here. If you need the complete list, create a new run with a wider sample size, or with the All Conversations data scope, instead.


Anonymous and Unattributed: Grouped, Not Listed

Most rows fold multiple conversations onto one participant because there's a stable identity to fold them onto β€” a user id, a service account, a WhatsApp number. Anonymous and Unattributed conversations have no such identity: each one is, as far as the run can tell, a different visitor. Listing them individually would mean one row per conversation instead of one row per person, so instead they're collapsed into two group rows (a full-width section in Grid View, a group row in List View):

  • Anonymous visitors ({n}) β€” visitors the run could not identify at all
  • Unattributed conversations ({n}) β€” conversations with no participant information to attribute them to
Anonymous visitors group row expanded to reveal the individual participants it contains

These groups honor the same search and filters as the rest of the list β€” the {n} reflects the currently active search/filters, not the run's overall total, and both groups disappear entirely (rather than showing a stale or zero count) when the active Kind filter excludes them, or when the run has none of that kind to begin with.

To see the individual participants inside either group:

  1. Select the group's expand control (labeled Expand group for assistive technology) to reveal each participant it contains.

Select the same control, now labeled Collapse group, on an expanded group to fold it back down.