Skip to content
synthreo.ai

Canopy Analytics

Canopy Analytics gives usage and adoption KPIs across your organization. Track active customers, adoption, and at-risk signals by period and customer.

Analytics gives you usage and adoption KPIs across your whole organization. It opens at /analytics and answers the questions an MSP cares about: who is actually using the platform, which customers are growing, and which ones are slipping. You can scope every figure by period and by individual customer.

Where the Dashboard is a quick 30-day pulse, Analytics is where you track value over time and per account. It has six tabs: Overview, Customers, Adoption, Users, Activity, and Agents.

Every tab is deep-linkable. The tab and the period both ride in the URL, so /analytics?tab=adoption&days=90 reopens exactly that view. The customer scope does not appear in the URL, because it identifies a child customer; a copied link opens at your own organization.


Freshness is not uniform, and the header of each tab tells you which rule applies:

TabFreshness
AdoptionLive product ledgers, UTC, through now
Overview, CustomersAdoption is live; usage refreshes daily, UTC, and excludes today
Users, Activity, AgentsRefreshed daily at 01:30 UTC, excluding today

So a user who signed in an hour ago shows up on Adoption immediately, but not on Users until the next daily refresh.


The Overview tab is where MSP value-tracking lives. Each metric is one card with a concrete, plain-language meaning.

MetricWhat it measures
CustomersThe total number of child customer tenants in scope
Active CustomersCustomers with recorded usage during the selected period
Active UsersUsers who used the platform during the selected period
AdoptionThe share of your provisioned users or customers that are actually active - how widely the platform has taken hold
At-RiskCustomers flagged by low adoption or an approaching renewal, who may need attention before they churn
Upsell-ReadyCustomers approaching their plan’s soft cap, flagged as good candidates for more seats, products, or features

Read these together: rising Adoption with a growing Upsell-Ready count is healthy expansion; a climbing At-Risk count is your early warning to step in.


The Customers tab is the per-account view. Its KPIs cover Accounts At-Risk, Upsell-Ready, Customers, and Book Utilization. The table below lists each customer with its plan, provisioned and active users, adoption, usage against cap, last activity, and a health signal. Sort or scan it to find the accounts that need attention.


The Adoption tab answers one question: of the seats you are paying for, how many are genuinely in use, and in which product. It is the only tab that reads live, so it is the one to check right after you onboard someone.

Three headline cards sit at the top:

CardWhat it measures
Eligible SeatsUsers entitled to use the platform in the selected scope
Active Human UsersEligible users with real human activity in the period
Overall AdoptionActive human users as a share of eligible seats

Beneath them, one card per product breaks the same picture down by where the usage happened. Every product card opens with Eligible users, Active human users, and Human adoption, then adds metrics suited to that product:

  • ThreoAI (“Human assistant usage and breadth”) - token-consuming users, successful calls, and last activity.
  • Wingtip (“Wingtip usage among enabled Threo seats”) - the same three: token-consuming users, successful calls, and last activity, counted against Wingtip rather than chat.
  • Pylon (“Human adoption plus separate automation value”) - total runs, successful runs, active assets, MCP users and runs, automated users and runs, unclassified runs, and last human activity.

Each card carries a status badge - Complete, Incomplete, or Unavailable - so you can tell a genuine zero from a source that did not report.

A Customer adoption table closes the tab, described as “Human adoption by product. Pylon MCP and automated runs are value signals, not adoption numerators.” Select a row to drill into that customer, which switches the view to the Customers tab already scoped to them.


The Users tab is the people view: who exists, who signs in, and how well secured they are.

CardWhat it includes
Total UsersEvery user account in scope, active or not
Active UsersUsers who used the platform during the selected period
Guest UsersUsers invited as guests rather than full members of your organization

The gap between Total Users and Active Users is the clearest read on under-adoption: a large gap means seats are provisioned but not being used.

Four panels follow:

  • Roles - the mix of roles across your users.
  • MFA Coverage - how many users have a second factor enrolled.
  • User Activity Buckets - users grouped by how recently or heavily they use the platform.
  • Recent Sign-Ins - the latest sign-in activity.

The Activity tab covers ThreoAI chat usage over time. It opens with the same usage KPIs as the Dashboard band - Tokens, Messages, Conversations, Active Users, and Active Days - then adds:

  • Activity over time - messages over the selected period.
  • Model Mix and Top Models - which models the usage went to, by token usage.
  • Activity by Hour & Day - a heatmap of message volume across the week; darker means more messages.
  • Top Users, and Top Customers when you are viewing a hierarchy. Select a row to drill in.

Where per-call observability data is available, extra panels appear alongside these, including a finish-reason breakdown. On deployments that predate that data the panels are simply absent.

Cost-to-serve figures are not shown here. Provider cost and margin are Synthreo-internal and live on a separate Synthreo-only screen.


The Agents tab covers agent execution health.

CardWhat it measures
Agent RunsRuns in the selected period, with a trend against the previous one
Unique AgentsAgents with any activity
Success RateThe share of runs that succeeded

Below the cards, a Filter control lets you narrow everything to specific agents. The tab then shows an activity chart over time, a source breakdown, a per-agent bar chart, an Activity by Hour & Day heatmap of call volume, and a per-agent performance table.

Two things to know about this tab:

  • The customer scope selector is hidden here. The agents data is tenant-wide and is not filtered by customer, so there is no scope control to offer.
  • If a refresh fails, the tab keeps showing the last data it loaded and says so, in a banner beginning “Couldn’t refresh agent statistics”. Treat the figures as stale until it clears.

Two controls shape what every metric reflects:

  • Period selector - choose the time window (7, 30, or 90 days; 30 by default). All KPIs recalculate for that window, so “Active” always means active within the period you picked. The period is part of the URL.
  • Customer scope - narrow the view to a single child customer, or leave it org-wide. The scope selector appears only if your organization is allowed to have child customers, and it is hidden on the Agents tab.

Read org-wide figures for the health of your whole book of business, then scope to one customer to investigate a specific At-Risk or Upsell-Ready signal before you act on it.

If you switch into a different customer (see Sign In As and Delegate Login), the scope resets to that customer’s own organization rather than carrying the previous tenant’s selection across.


What does At-Risk mean? At-Risk flags customers with low adoption or an upcoming renewal, signalling the account may need attention before it churns.

What counts as an Active User? An Active User is a user who used the platform during the selected period. Accounts that exist but were not used in the window count toward Total but not Active.

What is Upsell-Ready? Upsell-Ready flags customers approaching their soft cap, marking them as good candidates for additional seats, products, or features.

How current is the data? It depends on the tab. Adoption is live. Overview and Customers mix live adoption with usage that refreshes daily and excludes today. Users, Activity, and Agents refresh once a day at 01:30 UTC and exclude today. See How current the numbers are.

Why can’t I filter the Agents tab by customer? Because the underlying agents data is tenant-wide and ignores customer scope. The selector is hidden rather than shown-and-ignored.