ECO Metrics

ECO provides a robust set of metrics to enable application performance monitoring and user behavior analysis across your web and native applications. Metric values appear as time series and distributions in metric widgets, and alongside dimensional values in the dimension drill-down tables. Selecting different metric widgets changes the metrics in the dimension tables. All metrics are calculated during the selected time interval.

Metrics can span either a specific interval or a complete session.

  • Session Metrics: Metrics based on data from events that occur throughout sessions that end within the selected time interval, for example App Video Bounce Rate metric from sessions that ended yesterday. If a session starts before the selected time interval but ends within it, the data for that session is still considered for the calculation of the session metrics.

  • Interval Metrics: Metrics based on data from events that occur within a specific interval during sessions, for example, Total Events, the cumulative count of mapped events occurring within a specific interval during sessions.

Note: A session begins when a device sends one of the following events to the application server: screen_view, page_view, page_ping, periodic_heartbeat, application_foreground, conviva_video_events, or application_error. The session ends when the application server does not receive any of these events within 90-seconds.
With Conviva ECO sensor module integration starting from June 6, 2024, Conviva ECO provides enhanced session and metric handling to eliminate out-of-session events, and fine-tune several metric calculations. The session starts when any system or user-defined event is received and ends after 90 seconds of inactivity.

In addition to the metrics designed by Conviva to optimize your analysis, ECO supports a custom metric builder so you can create customized metrics based on your specific requirements. For more details, see Metric Builder.

Secondary Metric

As primary metrics, Conviva uses a proprietary combination of native and web applications events to provide a rich set of application performance and experience metrics. The Conviva ECO Sensor supports events, such as page_view and network_request.

Selecting a metric widget in ECO also displays a secondary metric that provides a context or related data to help you more completely understand the primary metric. Secondary metrics enhance the interpretation and analysis of primary metrics.

Secondary metrics display in the dimension panel after clicking a metric widget in the metric panel, for example Ended Session Count displays as a secondary metric for App Video Bounce Rate.

Automatically Collected Events and Minimum SDK Versions

   Conviva App Sensors
 

Android

iOS

JS SDK

C SDK

Roku

    Minimum App SDK 0.5.2 0.2.10 0.3.17 2.183.0.0 0.2.3
Automatically Collected Event Event Source Minimum Video SDK 4.0.30 4.0.32 4.5.13 No No
network request After receiving the network request response   Autocollected,
displays in ECO, Device Modeling Dashboard
Autocollected,
displays in ECO, Device Modeling Dashboard
Autocollected,
displays in ECO, Device Modeling Dashboard
Not applicable for devices Report manually

screen_view

On screen interaction, either first launch or re-launch   Autocollected,
displays in ECO, Device Modeling Dashboard
Autocollected,
displays in ECO, Device Modeling Dashboard
Not applicable for devices Not applicable for devices Report manually

application_error

On error in application   Autocollected,
displays in ECO, Device Modeling Dashboard
Autocollected,
displays in ECO, Device Modeling Dashboard
Autocollected,
displays in ECO, Device Modeling Dashboard
Not applicable for devices Report manually

button_click

On button click callback   Autocollected,
displays in ECO, Device Modeling Dashboard
Autocollected,
displays in ECO, Device Modeling Dashboard
Autocollected,
displays in ECO, Device Modeling Dashboard
Not applicable for devices Report manually

application_background

When application moves to the background   Autocollected Autocollected Not applicable for devices Not applicable for devices Report manually

application_foreground

When application moves to the foreground   Autocollected Autocollected Not applicable for devices Not applicable for devices Report manually

application_install

When application is launched for the first time after install. (not exactly installed time)   Autocollected Autocollected Not applicable for devices Not applicable for devices Report manually

deep_link_received

On application open using the UTM URL.   Autocollected Autocollected Not applicable for devices Not applicable for devices Report manually

anr_start

When timer starts for the response from the main thread. If more than 4 seconds, event is triggered.   Autocollected Report manually Not applicable for devices Not applicable for devices Report manually

anr_stop

When SDK gets response after triggering anr_start, anr_end is dispatched.   Autocollected Report manually Not applicable for devices Not applicable for devices Report manually

link_click

On link click callback   Report manually Report manually Autocollected Not applicable for devices Report manually

Custom Events

Event Type Semantic Mapping Metric Building Metric in App

Custom Events

  • Map raw events to unified semantics in Semantic Mapper

  • Assign event tag and event value to map events

Use mapped events to build metrics.

 

Metrics based on the mapped events appear in App pages.

Video Seek Events: For example, to track and analyze user behaviors when seeking videos, map the custom events seek_forward, seek_backward, seek_bar_dragged_forwards, and seek_bar_dragged_backwards to an event User seek action.

App Login Events: For example, to track the user login behavior and analyze the login success rate, map the event button_click with the tag key button_click_element_text and the tag value Log in to an event Login Button Click.

Conviva video events (conviva_video_events) are also available using these abbreviations as tag keys:

an: asset name.

avgbr: average bitrate in kbps.

br: bitrate in kbps.

cen: custom event name.

ced: custom event data.

cl: content length in seconds.

clid: client ID assigned by Conviva to the physical device.

err: error message.

ft: isFatal, a boolean value indicating whether the error is fatal.

fw: framework name in which the media player runs.

fwv: framework version.

iid: instance ID. When several players run on the same device, each player should have a unique instance ID.

lv: isLive, a boolean value indicating whether the content currently playing is Live.

mn: module name

mv: module version

name: device name

newsc: new state change

oldsc: old state change

pn: player name

sid: session id identifying the current session, unique on this client.

sst: session start time as UNIX epoch time in milliseconds.

st: session time from the session start in milliseconds.

tags: supported tags for metadata.

url: manifest URL of the media stream for the session.

vid: viewer ID.

 

 

ECO Metrics

Metric Definition Secondary Metrics Supported Sensors
Metrics for Analyzing Only Native Applications Performance

Note: Native applications are applications installed on mobile devices or TVs.

App Crashes

The proportion of sessions with application errors in a native application. This calculation divides the number of sessions containing native application errors by the total native app session count.

Note: Enabling the # mode displays the metric in number format, representing the total count of unique occurrences of the application_error event within a mobile app during the specified time interval.

App
Sessions
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

Avg Screen Load Time

The average duration, measured in seconds, to completely load a screen in a mobile app. The metric is calculated by dividing the total time in seconds for loading screens on a mobile app, starting from the initiation of loading screens to the completion of loading in the mobile screen, by the number of loaded screens.

 

Distribution: App Start Up Complete vs Avg Screen Load Time Distribution: a distribution by preset buckets, where each bucket displays the total screen load complete count in a specified range for corresponding average screen load time. This distribution helps you understand screen load time and app performance, enabling you to optimize both the app and screen.

Screen
Loads
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

Avg App Startup Time

The average duration, measured in seconds, for an app to start. The duration of app startup time is calculated by the Conviva sensor. The average duration of app startup time is calculated by dividing the total launch time in seconds for an app by the number of app startups.

 

Distribution: App Start Up Complete vs Mobile App Startup Time Distribution: a distribution by preset buckets, where each bucket displays the app start up complete count in a specified range for corresponding average duration for an app to start. This distribution helps you to identify performance issues and optimize the performance of apps.

App
Startup
Count
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

App Startup Count

The number of the event app launch during the specified time interval.

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

Screen Loads

The number of screen id changes that occurred within the selected time interval.

 

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

Ended Session Count (Mobile)

The total number of sessions that ended during the specified time interval.

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

Metrics for Analyzing Only Web Applications Performance  
Web Errors

The proportion of sessions with application errors in a web application. This calculation divides the number of sessions containing web application errors by the total web app session count.

Note: Enabling the # mode displays the metric in number format, representing the total count of unique occurrences of the application_error event within a web page during the specified time interval.

App Sessions Conviva JS Sensor
Avg Minutes Per Page

The average duration, measured in minutes, that users spend on each web page. The metric is calculated by dividing the total duration of time users spend on each web page by the number of pages.

 

Distribution: Page Load Complete Count vs Avg Minutes Per Page Distribution: a distribution by preset buckets, where each bucket displays the total page load complete count in a specified range for corresponding average minutes per page. This distribution helps you understand audience engagement with web pages and optimize them accordingly.

Page Loads Conviva JS Sensor
Avg Page Load Time

The average duration, measured in seconds, of all valid page loads. The metric is calculated by dividing the total time taken to load pages, from the initiation of the page view to the completion of loading in the browser, by the number of loaded pages.

 

Distribution: Page Load Complete Count vs Avg Page Load Time Distribution: a distribution by preset buckets, where each bucket displays the total page load complete count in a specified range for corresponding average page load time. This distribution helps you understand page load time and app performance, enabling you to optimize both the app and page.

Page Loads Conviva JS Sensor
Page Load Complete

The proportion of total count of pages that loaded completely. This calculation divides the total count of pages that loaded completely by the number of page URL changes.

Note: Enabling the # mode displays the metric in number format, representing the total count of pages that loaded completely.

N/A Conviva JS Sensor
Page Loads

The number of page URL changes that occurred within the selected time interval.

N/A Conviva JS Sensor
Ended Session Count (Web)

The total number of sessions that ended during the specified time interval.

N/A
  • Conviva JS Sensor

Metrics for Analyzing Web and Native Applications Performance

Note: If you integrate both your web and native applications with the Conviva sensor, these metrics are calculated using data from both types of applications.

Active Devices

The total number of devices that generated at least one event within sessions during the specified time interval.

Note: Why do I see difference in values for Active Devices and App Sessions? Previously, only conviva-defined events contributed towards determining whether a particular device is still active. This resulted in not capturing some of the user-defined events in the overall active-session and active-devices computation. Conviva has now made it flexible for users to define what events should be included within a session. With this enhancement, our Metrics Computation Engine now computes both user-defined and conviva-defined events to determine whether a device is Active. This enhancement will temporarily show an elevated change in metric values for Active Devices and App Sessions.

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

Active Users

The total number of unique users who generated at least one event within sessions during the specified time interval.

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

Network Request Count

The total number of the network_request event during the specified time interval.

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

App Video Bounce Rate

The percentage of sessions that did not include the video attempt event in an app. The metric is calculated as the total number of sessions without the video attempt event in an app, divided by the total number of sessions in the app.

Note:  Need to install the Video SDK to use the metric.

Ended
Session Count
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

App Sessions

The total count of sessions that occurred during the specified time interval.

Note: Why do I see difference in values for Active Devices and App Sessions? Previously, only conviva-defined events contributed towards determining whether a particular device is still active. This resulted in not capturing some of the user-defined events in the overall active-session and active-devices computation. Conviva has now made it flexible for users to define what events should be included within a session. With this enhancement, our Metrics Computation Engine now computes both user-defined and conviva-defined events to determine whether a device is Active. This enhancement will temporarily show an elevated change in metric values for Active Devices and App Sessions.

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

Avg Network Request Duration

The average duration, measured in seconds, for web servers to handle network requests, including the time taken to receive, process, and respond. This metric is calculated by dividing the total duration of the entire process for web servers to handle network requests by the total number of the network_request event.

 

Distribution: Total Request Count vs Avg Network Request Duration Distribution: a distribution by preset buckets, where each bucket displays the total request count in a specified range for the corresponding average network request duration. This distribution helps you to identify performance issues and optimize the performance of web applications.

Note: Network request is a type of web request that allows web pages to update content dynamically without requiring a full page refresh.

Network
Request Count
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

Ended Session Count

The total number of sessions that ended during the specified time interval.

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

Time To First Attempt

The average duration, measured in seconds, within a session before the first video attempt. This metric is calculated by dividing the total interval time from the “session start” event to the first video attempt event as a type of conviva_video_events by the number of sessions during which the viewer clicked play or the video auto-played generating a video attempt event.

 

Distribution: First Attempt Count vs Time To First Attempt Distribution: a distribution by preset buckets, where each bucket displays the count of first attempt in a specified range for corresponding average duration within a session before the first video attempt. This distribution helps you understand user engagement with videos in your app and optimize their accessibility and visibility.

Note:  Need to install the Video SDK to use the metric.

App
Sessions
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

Total Events

The count of mapped events, including both Conviva mapped events and custom mapped events.

Note: A list of mapped events can be viewed in Actviation tabs for Semantic Mapper and Management.

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

Total Events Per User Active Hour

The average event count per active user hour. The metric is calculated by dividing the total number of events by the total amount of hours users spend actively engaged in a native application or a web application.

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

Active Time

The total time user spends in app within a single session.

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

User Events

The count of events, such as the page_view event, excluding the page_ping, periodic_heartbeat, and network_request events.

N/A
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

Network Request Failure

The proportion of total count of failed network requests. This calculation divides the total count of failed network requests by the number of network requests.

This metric is only available for the preset Server Side Performance dashboard.

Note: Enabling the # mode displays the metric in number format, representing the total number of failed network requests during the specified time interval. A network request is classified as failed if its response code is not null, and is outside the range from 100 to 399.

Active Device
  • Conviva Android Sensor

  • Conviva iOS/tvOS Sensor

  • Conviva JS Sensor

These metrics are available with Conviva ECO sensor module integration starting from June 6, 2024. To include these metrics in the existing ECO integration, reach out to your Conviva account representative.

Metric Definition Secondary Metrics Supported Sensors
Metrics for Analyzing Only Web Applications Performance
Hot App Launches

The count of hot app launches during the selected interval. Hot app launches occur when an app is brought to the foreground on an application without the need to reload the entire app, as the app was already loaded.

N/A Conviva JS Sensor
Page Loads

The number of document loading activities that occurred during the selected interval.

N/A Conviva JS Sensor
Avg Page Load Time

The average duration, in seconds, for a web application to completely load and parse the basic framework of an HTML document.

This metric is calculated by dividing the total duration, in seconds, for a web application to fully load and parse the basic framework of an HTML document by the number of document loading activities.

Distribution: Page Load Count vs Avg Page Load Time

Distribution: a distribution by preset buckets, where each bucket displays the total document load count in a specified range of corresponding document load time. This distribution helps you understand the load performance of web applications, enabling performance optimizations.

Page Loads Conviva JS Sensor
Avg DNS Lookup Time

The average duration, in seconds, for a web application to resolve a domain name to the corresponding IP address.

This metric is calculated by dividing the total duration, in seconds, that a web application takes to resolve a domain name to its corresponding IP address by the number of DNS lookup attempts made.

Distribution: DNS Lookup Count vs Avg DNS Lookup Time

Distribution: a distribution by preset buckets, where each bucket displays the total DNS lookup count in a specified range for corresponding DNS lookup time. This distribution helps you understand DNS lookup performance, enabling you to optimize the web application.

Page Loads Conviva JS Sensor
Avg Document Response Time

The average duration, in seconds, that the application takes to fetch HTML documents, excluding scripts and stylesheets.

The metric is calculated by dividing the total duration, in seconds, that a web application takes to fetch an HTML document by the number of document responses.

Distribution: Document Response Count vs Avg Document Response Time

Distribution: a distribution by preset buckets, where each bucket displays the total document response count in a specified range for corresponding document response time. This distribution helps you understand document response performance, enabling you to optimize the web application.

Page Loads Conviva JS Sensor
Avg Largest Contentful Paint Time

The average duration, in seconds, for the largest content element within the viewport of a webpage to become visible to the user.

The metric is calculated by dividing the total duration, in seconds, from the time loading begins to the time the largest element within the viewport becomes visible to users, by the number of loading activities.

Distribution: Largest Contentful Paint Count vs Avg Largest Contentful Paint Time

Distribution: a distribution by preset buckets, where each bucket displays the total largest contentful paint count in a specified range for corresponding largest contentful paint time. This distribution helps you understand loading time for largest contentful paint time and web performance, enabling you to optimize the web application.

Page Loads Conviva JS Sensor
Avg Perceived Page Load Time

The average duration, in seconds, from the moment an application starts to load the webpage to the moment when the full page, including dynamically loaded content, is drawn on the screen.

This metric is calculated by dividing the total duration, in seconds, from the moment an application starts to load the webpage to the moment when the full page, including dynamically loaded content, is drawn on the screen by the number of loading activities.

Distribution: Perceived Page Load Count vs Avg Perceived Page Load Time

Distribution: a distribution by preset buckets, where each bucket displays the total page load count in a specified range for corresponding page load time. This distribution helps you understand the loading performance for an application starts to load the webpage to the moment when the full page, including dynamically loaded content, is drawn on the screen.

Page Loads Conviva JS Sensor
Exits Before Page View

The proportion of exits that occur before the full page is drawn on the screen. This calculation divides the number of exits that occur before the full page is drawn on the screen by the sum of the exits count and the count of complete loadings.

Note: Enabling the # mode displays the metric in number format, representing the number of exits that occur before the full page is drawn on the screen during the selected interval.

N/A Conviva JS Sensor

ECO Metrics ECO Metrics App Crashes App Crashes

Avg Screen Load Time Avg Screen Load Time

Mobile App Startup Time Mobile App Startup

Time App Startup Count App Startup Count

Screen Loads Screen Loads

Web Errors Web Errors Avg Minutes Per Page Avg Minutes Per Page

Avg Page Load Time Avg Page Load Time Page Load Complete Page Load Complete Page Loads Page Loads Active Devices Active Devices Active Users Active Users Network Request Count Network Request Count

App Video Bounce Rate App Video Bounce Rate App Sessions App Sessions Avg Network Request Duration Avg Network Request Duration Ended Session Count Ended Session Count Time To First Attempt Time To First Attempt Total Events Total Events Total Events Per User Active Hour Total Events Per User Active Hour User Active Time User Active Time User Events User Events network request network request network request network request event screen view screen view screen view screen view event application error application error application error application error event button click event button click button click button click application background application background application foreground event application background event application foreground foreground application install application install install install anr start event anr start anr stop event anr stop link click event link click link click link click deep link received event deep link received deep link deep link event Hot App Launches Hot App Launches Page Loads Page Loads Avg Page Load Time Avg Page Load Time Avg DNS Lookup Time Avg DNS Lookup Time Avg Document Response Time Avg Document Response Time Avg Largest Contentful Paint Time Avg Largest Contentful Paint Time Avg Perceived Page Load Time Avg Perceived Page Load Time Exits Before Page View Exits Before Page View