Skip to content

Metrics

There are three levels of data available for creatives in Cavai Cloud: standard, funnel, and flow.

  • Standard — impressions, viewability, and clicks (what you'd expect from any advertising platform)
  • Funnel — what happens after the first interaction (open rate, goal completion, engagement depth)
  • Flow — granular content-level insights (e.g. how many people chose option A vs. option B)

Data is available at two sampling rates: time-bucketed (hourly, daily, weekly, monthly) and raw interaction-level data.

Availability

  • Standard and funnel data through Reports, Time Bucket API, and Streaming API
  • Flow data through Reports and Streaming API
  • Raw data through the Streaming API and Reports

Reports provide a built-in interface for data analysis, visualization, and export (CSV, JSON, XLSX, PNG, PDF).

Standard metrics

These metrics are available across all reporting interfaces:

MetricDescription
ImpressionsNumber of creative impressions during the observation period
InteractedNumber of impressions that led to any kind of interaction
Started conversationNumber of impressions that led to starting the interaction
Continued conversationNumber of impressions that led to more than one action in the interaction
Finished conversationNumber of interactions that reached the end of the creative
ActionsTotal number of actions in the interaction
ClickthroughsNumber of link clicks
Time goal metNumber of interactions that met the configured time goal
Time to activeSeconds between impression and first activity
Time spentTotal seconds spent in interaction
Viewable impressionsImpressions that met the viewability threshold (50% visible for 1+ second). Respects TCF consent.

Video metrics

When the creative contains a video block, additional metrics are tracked:

MetricDescription
PlaysNumber of video plays
Watched 25%Video reached first quartile
Watched 50%Video reached midpoint
Watched 75%Video reached third quartile
Watched 100%Video completed

Time Bucket API

The Time Bucket API returns data aggregated into time buckets (hourly, daily, weekly, monthly).

Data is available in three value types:

values

Returns absolute values for each metric in each time bucket.

percentile_change

Returns the percentile change relative to the previous observation. Values can be negative; the first observation is always 0%.

rate

Returns rate-transformed values. Each metric is divided by an appropriate denominator:

MetricRate transformation
ImpressionsNo transformation
InteractedInteracted / Impressions
Started conversationStarted / Impressions
Continued conversationContinued / Started
ActionsActions / Started (actions per interaction)
ClickthroughsClickthroughs / Started (clicks per interaction)
Finished conversationFinished / Started
Time goal metTime goal met / Started
Time to activeSum(Time to active) / Started
Time spentSum(Time spent) / Started

Streaming API

The Streaming API returns raw interaction-level data. Each record represents a single user interaction with a creative.

FieldTypeDescription
connection_idvarcharImpression-level ID (group by this to get impression-level records)
creative_idintegerUnique identifier of the creative
creative_group_idintegerUnique identifier of the creative group
campaign_idintegerUnique identifier of the campaign
timetimestampTimestamp of the observation
seconds_to_activeintegerSeconds between impression and first activity
seconds_total_activeintegerTotal seconds between impression and end of activity
creative_actionsintegerTotal actions in the interaction
clicked_linkinteger1 if a link was clicked
time_goal_metinteger1 if the time goal was met
time_goal_secondsintegerTime goal threshold in seconds
reached_endinteger1 if the interaction reached the end
reached_goalinteger1 if the interaction reached the creative's goal component
reached_inputinteger1 if the interaction reached an input field
interaction_components_shownintegerNumber of flow components rendered
urlvarcharFull creative placement URL
link_urlvarcharURL(s) of links clicked in the creative
input_datavarcharInput data captured in the creative
object_typevarcharType of the flow component (e.g. Text, Choice)
levelvarcharLevel number in the interaction flow
choicevarcharChoice number on a given level (unique per level)
prev_objectintegerPrevious flow component ID (useful for comparing flow drop-off)

TIP

To group raw interaction data into impression-level records, use connection_id.

Viewability tracking

The Creative Engine tracks viewability using the Intersection Observer API with a 50% visibility threshold. A creative is marked as "viewable" after 1+ second of continuous visibility. Visibility time is tracked in buckets: 5s, 10s, 15s, 30s, 45s, 60s, 120s, 180s, 240s, and 300s.

Viewability tracking respects GDPR/TCF v2 consent — tracking is disabled if the user has not provided consent for Purpose 7 (Legitimate Interests) or Vendor 729 (either denial disables tracking).

Custom metrics

Reports support custom metric expressions. Use the custom metric builder to create calculated fields from standard metrics (e.g. a custom engagement rate combining multiple interaction metrics).