Required Datapoints
- -
**Engagement Metrics **are data points that measure how users interact with your product, content, or campaigns. They assess the depth, frequency, and quality of user interactions, providing insights into customer interest, satisfaction, and loyalty.
Engagement Metrics are key indicators of user interest, satisfaction, and product-market resonance, reflecting how actively and meaningfully customers interact with your product, content, or campaigns.
The relevance and interpretation of this metric shift depending on the model or product:
A declining trend typically signals loss of relevance, friction, or engagement fatigue, which helps teams adjust offers, improve UX, and re-engage users through personalization.
By segmenting by cohort — such as intent signals, referral source, or device type — you unlock insights for improving targeting, refining content, and boosting activation flows.
Engagement Metrics inform:
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 |
|---|---|
| Content Marketing | Content Marketing focuses on creating, distributing, and optimizing valuable content designed to attract, engage, and convert target audiences at every stage of the buyer journey. It helps teams translate strategy into repeatable execution. Relevant KPIs include Content Engagement and Engagement Metrics. |
| Community Building | Community Building focuses on strategically nurturing meaningful connections among customers, prospects, partners, and internal teams. It helps teams translate strategy into repeatable execution. Relevant KPIs include Customer Loyalty and Daily Active Users. |
| Product Use | Product Use is the process by which users interact with and gain value from a product’s features and functionalities. It helps teams translate strategy into repeatable execution. Relevant KPIs include Engagement Metrics and Engagement Rate. |
| Retention Strategies | Retention Strategies involves systematic initiatives and processes aimed at maximizing customer lifetime value by proactively engaging and supporting existing users. It helps teams translate strategy into repeatable execution. Relevant KPIs include Customer Churn Rate and Customer Lifetime Value. |
A SaaS company evaluates website engagement:
This KPI is associated with the following stages in the AAARRR (Pirate Metrics) funnel:
This KPI is classified as a leading Indicator. It signals likely future performance and is used to predict outcomes before they fully materialize.
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 or contextualize this KPI and help create a multi-signal early warning system, improving confidence and enabling better root-cause analysis.
These lagging indicators support the recalibration of this KPI, helping to inform strategy and improve future forecasting.
How this KPI is structured in Cube.js, including its key measures, dimensions, and calculation logic for consistent reporting.
cube('UserEngagement', { sql: `SELECT * FROM user_engagements`,
measures: { totalInteractions: { sql: `interactions`, type: 'sum', title: 'Total Interactions', description: 'Total number of user interactions with the product.' }, uniqueUsers: { sql: `user_id`, type: 'countDistinct', title: 'Unique Users', description: 'Count of unique users interacting with the product.' }, averageSessionDuration: { sql: `session_duration`, type: 'avg', title: 'Average Session Duration', description: 'Average duration of user sessions in minutes.' } },
dimensions: { id: { sql: `id`, type: 'number', primaryKey: true, title: 'ID', description: 'Unique identifier for each engagement record.' }, userId: { sql: `user_id`, type: 'string', title: 'User ID', description: 'Identifier for the user.' }, interactionType: { sql: `interaction_type`, type: 'string', title: 'Interaction Type', description: 'Type of interaction the user had with the product.' }, eventTime: { sql: `event_time`, type: 'time', title: 'Event Time', description: 'Timestamp of the user interaction.' } }});cube('CampaignEngagement', { sql: `SELECT * FROM campaign_engagements`,
measures: { totalClicks: { sql: `clicks`, type: 'sum', title: 'Total Clicks', description: 'Total number of clicks on the campaign.' }, uniqueClickers: { sql: `user_id`, type: 'countDistinct', title: 'Unique Clickers', description: 'Count of unique users who clicked on the campaign.' }, conversionRate: { sql: `conversions / clicks`, type: 'number', title: 'Conversion Rate', description: 'Rate of conversions per click.' } },
dimensions: { id: { sql: `id`, type: 'number', primaryKey: true, title: 'ID', description: 'Unique identifier for each campaign engagement record.' }, campaignId: { sql: `campaign_id`, type: 'string', title: 'Campaign ID', description: 'Identifier for the campaign.' }, userId: { sql: `user_id`, type: 'string', title: 'User ID', description: 'Identifier for the user.' }, engagementDate: { sql: `engagement_date`, type: 'time', title: 'Engagement Date', description: 'Date of the user engagement with the campaign.' } }});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