- How long do users spend in the product?
- How many sessions do users perform?
- Which sessions are most engaged?
- How many events occur inside a session?
- Which session lengths lead to conversions?
How a session is defined
By default, a session starts when the user becomes active and ends after a defined inactivity timeout.
A session is counted as valid when
session_id is neither none nor -1.
The two analysis modes
The side panel is the primary configuration area. The first choice you make there is the count selector, which determines everything downstream.Count of Sessions
Analyze session-level metrics, using Session ID as the aggregation entity. Default.
Count of Events Within a Session
Analyze how often events occur inside sessions.
Existing filters and breakdowns are preserved wherever they still apply. If a selected metric becomes invalid after switching modes, it resets to the default metric, and incompatible visualizations reset automatically.
Session cards
A session card defines one query configuration, and each card acts as an independent query series in the visualization.
Each card maintains independent filters and query logic.
Example
Measured As
- Count of Sessions
- Count of Events Within a Session
Six measurement types are available. Total Sessions is the default.
Total Sessions
Graphs the total number of valid sessions across all users, by counting total valid session IDs within the selected interval.Time per User
Graphs the average time spent in sessions per active user.Average Length
Graphs the average session duration.Avg per User
Graphs the average number of sessions per active user.Total Time
Graphs the total cumulative session duration across all sessions.Distribution
Displays the distribution of session lengths as a histogram. See Distribution below.Time per User, Average Length, and Total Time all expose a Counting In unit selector supporting Months, Weeks, Days, Hours, Minutes, and Seconds. Changing the unit dynamically converts all displayed values, and updates the tooltip and summarization table.
Distribution
Distribution uses configurable buckets.
Example — session length
A minimum of 1 minute, maximum of 30 minutes, and interval of 5 minutes generates:
Distribution tooltip
The tooltip shows the bucket range, number of sessions, percentage of sessions, cumulative percentage, and the breakdown value if one is applied. Assuming 100 total sessions:Filters
Two levels of filtering apply: filters on the session card, and higher-level segmentation in Filter By.Card filters
Contains Event
Contains Event
Analyze sessions containing specific events.
The system counts how many times the selected event occurred inside a session.
Event property filtering supports multiple properties combined with AND conditions, for example a Purchase event where
Product Category = Electronics and Price > 1000.Session Duration
Session Duration
Analyze sessions based on how long they lasted.
Event Properties
Event Properties
Available in the Count of Events Within a Session mode. Filters the selected event using event-level properties.
Only matching event occurrences are included in the analysis.
Filter By
Higher-level segmentation applies to both modes:- Cohort — restrict to users inside selected cohorts, such as Premium Users, Retained Users, or Paid Subscribers
- User Properties — Country, Device, Browser, OS, App Version, Campaign, Language
Breakdown
Breakdown segments results into multiple grouped series. When a breakdown is applied, charts render separate series and the summarization table groups results accordingly.
Common breakdowns include Country, Device Type, Browser, Platform, and App Version. In the events mode this produces analyses such as Purchase by Country, Search by Device, or Video Plays by Platform.
Visualization
Six chart types are supported:Time granularity
Granularity controls interval grouping for time-series visualizations: Hour, Day, Week, Month, Quarter.Time granularity is not shown for Bar and Stacked Bar charts.
Tooltips
For Total Sessions and Total Event Count, the tooltip shows the selected interval, the total count, the percentage increase or decrease compared to the previous interval, and the breakdown value if applied.Chart interactions
Clicking a graph point or bar opens View Users, from which you can:- Export CSV — downloads the currently visible chart data, including applied filters, breakdown values, intervals, and metric values
- Save Cohort — creates a cohort from the currently selected segment, such as users with sessions longer than 10 minutes, or users with more than 5 sessions per week
Compare
Compare the selected period against a historical one:- Previous Day
- Previous 7 Days
- Previous 30 Days
- Previous 3 Months
- Previous 12 Months
- Custom Comparison
Date selector
Summarization table
The summarization table is a tabular representation of the visualization data. It contains a breakdown selector, lets you switch between breakdown values, and displays row averages.Refresh and pinning
Refresh Data reruns the analytics query, invalidates cached responses, and refreshes the visualization, summarization table, and breakdown results. A loading state is shown during the refresh. You can pin the visualization to the Overview page, an existing dashboard, or a new dashboard. See Pin a chart to a dashboard.Next steps
- Stickiness to measure repeat engagement across days
- User Profiles to inspect an individual user’s sessions
- Pivot Tables for multi-dimensional breakdowns