Required Datapoints
- User/Visitor ID
- First 3 Sessions’ Behavior Logs
- Engagement Actions Tracked (e.g., pages, features, content)
- Scoring or Weighting Model (optional)
Engagement Depth (First 3 Sessions) measures how thoroughly new users or visitors interact with your product or content during their first three sessions. It helps assess early-stage user interest and value perception.
Engagement Depth (First 3 Sessions) is a key indicator of early user value realization and stickiness potential, reflecting how deeply new users interact with content, features, or flows during their first few visits.
The relevance and interpretation of this metric shift depending on the model or product:
A rising trend typically signals better onboarding UX, stronger value communication, or effective personalization, which helps teams optimize for faster activation and more qualified leads.
By segmenting by cohort — such as referral channel, persona, or campaign UTM — you unlock insights for tuning onboarding experiences by audience type.
Engagement Depth (First 3 Sessions) informs:
These are the main factors that directly impact the metric. Understanding these lets you know what levers you can pull to improve the outcome
Actionable ideas to optimize this KPI, from fast, low-effort wins to strategic initiatives that drive measurable impact.
Activities commonly tied to improving or operationalizing this KPI.
| Activity | Description |
|---|---|
| Onboarding Design | Onboarding Design are guided smoothly through the early stages of product adoption. It gives teams a clear plan for where to focus, how to sequence work, and what to measure. Relevant KPIs include Engagement Depth (First 3 Sessions) and Onboarding Satisfaction Score (OSS). |
| Activation Pathways | Activation Pathways are structured processes and touchpoints designed to guide new users or customers from initial sign-up or purchase through their first meaningful use of a product or service. It coordinates execution across touchpoints so teams can move users or accounts toward the target outcome. Relevant KPIs include Engagement Depth (First 3 Sessions). |
| PLG Strategy | PLG Strategy focuses on Developing and executing a unified go-to-market strategy that combines product-driven growth tactics—such as frictionless onboarding, in-app guidance, and freemium models—with traditional sales approaches like outbound prospecting, account-based selling, and relationship management. It gives teams a clear plan for where to focus, how to sequence work, and what to measure. Relevant KPIs include Activation Conversion Rate and Activation-to-Expansion Rate. |
| Feature Discovery | Feature Discovery involves systematically identifying, assessing, and prioritizing the features of a product that deliver the greatest value to target customers. It helps teams translate strategy into repeatable execution. Relevant KPIs include Engagement Depth (First 3 Sessions). |
This KPI is associated with the following stages in the AAARRR (Pirate Metrics) funnel:
This KPI is classified as a lagging Indicator. It reflects the results of past actions or behaviors and is used to validate performance or assess the impact of previous strategies.
This role is directly accountable for the KPI and is expected to drive progress and decisions around it.
These roles contribute directly to performance and typically partner on execution, reporting, or optimization.
These leading indicators influence this KPI and act as early signals that forecast future changes in this KPI.
These lagging indicators confirm, quantify, or amplify this KPI and help explain the broader business impact on this KPI after the fact.
How this KPI is structured in Cube.js, including its key measures, dimensions, and calculation logic for consistent reporting.
cube('UserSessions', { sql: `SELECT * FROM user_sessions`, joins: { UserBehaviorLogs: { relationship: 'hasMany', sql: `${CUBE}.user_id = ${UserBehaviorLogs}.user_id` } }, measures: { engagementDepth: { sql: `engagement_score`, type: 'sum', title: 'Engagement Depth', description: 'Sum of engagement scores for the first 3 sessions of a user.' } }, dimensions: { userId: { sql: `user_id`, type: 'string', primaryKey: true, title: 'User ID', description: 'Unique identifier for each user.' }, sessionId: { sql: `session_id`, type: 'string', title: 'Session ID', description: 'Unique identifier for each session.' }, sessionStartTime: { sql: `session_start_time`, type: 'time', title: 'Session Start Time', description: 'Timestamp when the session started.' } }})cube('UserBehaviorLogs', { sql: `SELECT * FROM user_behavior_logs`, measures: { engagementActions: { sql: `engagement_action`, type: 'count', title: 'Engagement Actions', description: 'Count of engagement actions performed by the user.' } }, dimensions: { userId: { sql: `user_id`, type: 'string', title: 'User ID', description: 'Unique identifier for each user.' }, actionType: { sql: `action_type`, type: 'string', title: 'Action Type', description: 'Type of engagement action performed.' }, actionTime: { sql: `action_time`, type: 'time', title: 'Action Time', description: 'Timestamp when the action was performed.' } }})Note: This is a reference implementation and should be used as a starting point. You’ll need to adapt it to match your own data model and schema