funnel-analysis
Funnel Analysis
When to use
- Conversion is low and the team needs to know where users are dropping off
- A product change may have affected a specific funnel step
- Comparing conversion rates across channels, devices, or user cohorts
- Designing an A/B test and needing a baseline to set a meaningful MDE
- Building a regular funnel monitoring report
Process
- Define funnel steps and time window — list the ordered sequence of events or pages that constitute the funnel. Agree on how long a user has to complete the funnel (session, 24 hours, 7 days). Ambiguous definitions here will invalidate the analysis.
- Build the user-level funnel dataset — for each user who reached step 1, record which subsequent steps they completed and when, within the time window. Use
scripts/funnel_analyzer.pyto compute this from an events log. - Calculate conversion rates — compute step-to-step conversion (users reaching step N ÷ users reaching step N−1) and overall conversion (step 1 to last step). Record absolute drop-off counts at each step.
- Analyse time-to-convert — for users who completed each step, calculate median, P75, and P95 time between steps. Long gaps can signal friction even without high drop-off.
- Segment the funnel — run the funnel separately by channel, device type, user cohort, or other dimensions. Rank segments by overall conversion rate and identify where the worst-performing segment diverges from the best. See
references/funnel_design_guide.md. - Prioritise and report — rank drop-off points by absolute users lost × estimated revenue impact. Produce
assets/funnel_report_template.mdwith the funnel table, segment comparison, and ranked recommendations.
Inputs the skill needs
- Event log data with at minimum: user_id, event_name, timestamp
- Ordered list of funnel steps (event names in sequence)
- Time window for funnel completion
- Segmentation columns if a comparative analysis is needed (channel, device, plan)
- Estimated revenue value of a conversion (for impact sizing)
Output
scripts/funnel_analyzer.py— builds user-level funnel from an event log, computes step conversions, drop-offs, and time-to-convertreferences/funnel_design_guide.md— how to define funnels, choose time windows, and avoid common measurement mistakesassets/funnel_report_template.md— report template: funnel overview table, drop-off analysis, segment comparison, time-to-convert, recommendations
More from nimrodfisher/data-analytics-skills
metric-reconciliation
Cross-source metric validation and discrepancy investigation. Use when metrics from different sources don't match, investigating data quality issues between systems, or validating data migration accuracy.
31insight-synthesis
Transform data findings into compelling insights. Use when converting analysis results into actionable insights, connecting findings to business impact, or preparing insights for stakeholder communication.
31dashboard-specification
Design specifications for effective dashboards. Use when planning new dashboards, improving existing ones, or documenting dashboard requirements before development starts.
30data-quality-audit
Comprehensive data quality assessment against business rules, schema constraints, and freshness expectations. Activate when validating data pipeline outputs before production use, auditing a dataset against defined business rules, or producing a quality scorecard for a data asset.
30time-series-analysis
Temporal pattern detection and forecasting. Use when analyzing trends over time, detecting seasonality, identifying anomalies in time series, or building simple forecasting models for planning.
30root-cause-investigation
Systematic investigation of metric changes and anomalies. Use when a metric unexpectedly changes, investigating business metric drops, explaining performance variations, or drilling into aggregated metric drivers.
30