Skip to navigation

Analytics

Track call volume, outcomes, sentiment, and agent performance across your workspace and subaccounts

Analytics dashboard overview

The analytics dashboard answers the questions you would otherwise assemble by hand: how many calls ran, how they ended, which agents are performing, and whether quality is trending up or down. Open it with Analytics in the left sidebar.

Data refreshes every hour. If your workspace has subaccounts, the same dashboard covers every account you manage. To get the same numbers into a BI tool or a report of your own, pull them through the API.

Metrics

Each card answers a different question about the calls in your current filter.

CardWhat it tells you
Duration metricsTotal calls, total minutes, and average duration for the selected range
Assistant performanceHow assistants compare on minutes used, calls handled, success rate, and prompt reuse
Call status over timeCompleted, voicemail, left voicemail, failed, and no answer statuses plotted with trend lines
Call status overviewAggregate totals for each status
Reasons behind ended callsWhy calls ended, such as Address Incomplete, Voicemail, or Forbidden
Failed callsContact, date, status, duration, and agent for every call that failed
Executed actionsHow often a selected action ran, over time
SentimentThe share of positive interactions and how it moves over time

To get from a number to the conversation behind it, open Logs, which holds the full record of each individual call.

Sentiment and end-call reasons surface quality problems, like a misfiring action or a bad handoff, earlier than call volume does. Check both on a regular cadence, not only when volume drops.

Prompt reuse

Agents Performance card on the prompt reuse tab, showing one agent at 74% and another at 3%

The Prompt Reuse tab in Agents Performance shows how much of each agent’s prompt the AI model reused instead of reading it again (also known as prompt caching), across the calls in your current filter. Logs show the same figure for each call.

A call is made of turns. A turn is one exchange: the caller says something and the agent answers. On every turn, the AI model goes through your prompt and the conversation so far before it replies, which is why long prompts cause higher latency. Text that starts the same way as on the previous turn does not need to be read again: the model reuses it and only reads what is new. The agent’s answers are always generated fresh.

For example, an agent at 74% could have a 9,000-character prompt and four-turn calls, with each exchange adding about 250 characters to the conversation:

TurnWhat the model readsReused
1Your prompt: 9,000 charactersNone
2Your prompt and turn 1: 9,250 characters9,000 characters
3Your prompt and turns 1 and 2: 9,500 characters9,250 characters
4Your prompt and turns 1 to 3: 9,750 characters9,500 characters
Whole call37,500 characters27,750 characters (74%)

A few things shape the score:

  • Longer calls score higher. Each turn reuses everything before it, and the first turn has nothing to reuse.
  • Flow Designer agents score lower than prompt-based agents. This comes from how Synthflow builds their prompts, not from anything you wrote.
  • A short prompt on a short call shows 0%. Neither the prompt nor the conversation is long enough to be reused, which is normal. However, a short prompt on a long call can score above 0%, because the conversation grows long enough to be reused.

Subaccounts usage

If your workspace manages subaccounts, you can see how each one is performing without leaving your own workspace. Set the All accounts filter to open the subaccount view.

Analytics dashboard filtered to All accounts, showing a table of subaccounts by total minutes

The view opens on a table of every subaccount you manage:

  • Total minutes: call minutes used in the selected time range, with the change against the previous period
  • Calls: number of calls handled
  • Average duration: mean call length

Compare rows to see which accounts are ramping up and which have gone quiet. Select a subaccount to load its full dashboard in place, with the same cards and filters scoped to that account. Set All accounts again to return to the overview or switch to another subaccount.

Minutes in the subaccount table come from call analytics, not from billing. Billable usage excludes some activity, such as credits used during call transfers, so the two figures can differ. For invoicing and rebilling, see Usage and billing.

Whether a subaccount can open the analytics dashboard inside its own workspace is controlled by the Analytics permission.

Export data

Analytics are exported through the API, not from the dashboard. Use the Export analytics data endpoint to pull the same aggregated metrics into Power BI, Tableau, Google Data Studio, a warehouse, or a scheduled report of your own.

Each request is capped at a 120-day range and defaults to the past 7 days when no range is given. For longer histories, page through the range in consecutive requests.

The endpoint returns aggregated analytics. For call-level records, see Export call data.

FAQ

Every hour. If your data still looks stale after that, refresh the page and double-check your filters.

Yes. Set the All accounts filter to open the subaccount view, which lists every subaccount with its total minutes, calls, and average duration. Select one to load its full dashboard.

Analytics reflects call activity, while the Usage dashboard reflects billable credits only. Credits used during call transfers are excluded from billing, which can cause the two views to differ.

Only if it has the Analytics permission. See Manage subaccount permissions for the full permission list.

No. Analytics are exported through the Export analytics data endpoint. For call-level records instead of aggregated metrics, see Export call data.

There was most likely no activity in the requested range, or the filters in the request were too narrow. Widen the range, keeping it under 120 days, and try again.