Required Datapoints
- Total Exits: The number of times the page was the last one viewed in a session.
- Total Pageviews: The total visits to the page during the timeframe.
**Exit Rate **is the percentage of visits to a specific webpage or app screen that end with the user leaving the site or app entirely. It shows how often a particular page or screen is the last one visited during a session.
Exit Rate is a key indicator of funnel drop-off and journey friction, reflecting how frequently users leave your site or app from a specific page or step — regardless of how they got there.
The relevance and interpretation of this metric shift depending on the model or product:
A high exit rate on critical pages may signal confusion, friction, or unmet expectations, while a declining exit rate often reflects better flow continuity or improved UX.
By segmenting by page type, traffic source, or device, you unlock insights for content optimization, layout testing, and conversion path refinement.
Exit Rate 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 |
|---|---|
| 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. |
| Exit Intent Analysis | Exit Intent Analysis involves systematically tracking and analyzing user behaviors that suggest a likelihood of disengagement or abandonment from a digital product, trial, or sales process. It turns signals into decisions, interventions, and measurable follow-up. Relevant KPIs include Exit Rate and Signup Funnel Completion Rate. |
An e-commerce site evaluates the Exit Rate of its product pages:
Product Page A:
Total Pageviews: 10,000
Exits: 3,000
Exit Rate = (3,000 / 10,000) × 100 = 30%
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('PageMetrics', { sql: `SELECT * FROM page_metrics`,
measures: { totalExits: { sql: `total_exits`, type: 'sum', title: 'Total Exits', description: 'The number of times the page was the last one viewed in a session.' }, totalPageviews: { sql: `total_pageviews`, type: 'sum', title: 'Total Pageviews', description: 'The total visits to the page during the timeframe.' }, exitRate: { sql: `100.0 * ${totalExits} / NULLIF(${totalPageviews}, 0)` , type: 'number', title: 'Exit Rate', description: 'The percentage of visits to a specific webpage that end with the user leaving the site.' } },
dimensions: { id: { sql: `id`, type: 'number', primaryKey: true }, pageUrl: { sql: `page_url`, type: 'string', title: 'Page URL', description: 'The URL of the webpage.' }, eventTime: { sql: `event_time`, type: 'time', title: 'Event Time', description: 'The time when the pageview event occurred.' } }});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