Why this matters
Funnel dashboards show how users progress through key steps (e.g., visit β sign up β activate β purchase). As a Product Analyst, you will use funnels to:
- Spot bottlenecks and prioritize UX or product fixes.
- Monitor releases and experiments for step-specific impacts.
- Forecast outcomes (e.g., signups needed to hit revenue targets).
- Align teams with a single source of truth for conversion rates.
- Segment performance by channel, platform, cohort, or geography.
Concept explained simply
A funnel is a sequence of user actions. At each step, some users drop off. Your dashboard counts unique users who reach each step within a defined time window and shows conversion/drop-off between steps.
Mental model: Leaky pipes
Imagine water flowing through connected pipes. Each joint leaks a bit. Your job is to measure leak size at each joint (drop-off), find why it leaks (diagnose), and fix it (experiments). The diameter of the first pipe (traffic) also matters.
Key metrics and formulas
- Step count: unique users who reached that step.
- Step conversion rate (n-1 β n): step_n_unique / step_(n-1)_unique.
- Cumulative conversion rate (1 β n): step_n_unique / step_1_unique.
- Drop-off rate (n-1 β n): 1 - step conversion rate.
- Time between steps: median or p90 of time(step_n) - time(step_(n-1)).
- Re-entry policy: decide whether to count only the first attempt or allow re-entries; be explicit in the dashboard.
- Attribution window: maximum allowed time from first to last step (e.g., 7 days). Users outside this window are not counted as completed.
Data you need
Your funnel needs user-level events with timestamps.
- Required fields: user_id (or stable anonymous_id), event_name, event_time (UTC), event_properties (JSON/key-values), platform/channel, session_id (if used).
- Identity resolution: if both anonymous and logged-in events exist, define a clear merge rule (e.g., stitch anonymous_id to user_id on login).
- Deduplication: protect against duplicate events (same user_id, event_name, event_time).
- Time zone: standardize to UTC for storage; present in business timezone on the dashboard.
Edge cases to decide upfront
- Loops: a user going back to a prior step. Policy: count first valid path per user in the selected time window.
- Optional steps: mark as non-required; users can skip without being penalized.
- Parallel paths: ensure step order is logical; enforce ordering by timestamp.
- Out-of-order events: if ingestion can be late, use an event_time watermark and schedule backfills.
Build a funnel dashboard in 7 steps
- Define the question. Example: "Where do users drop between Add to Cart and Payment Success?"
- List funnel steps. Name unambiguous events and add filters (e.g., platform = Android).
- Choose the attribution window. Common: 24h for checkout, 7β14 days for onboarding.
- Compute step entries per user. Use the first timestamp per user for each step within the window.
- Calculate metrics. Step counts, step conversion, cumulative conversion, time between steps.
- Visualize. Funnel chart + table. Add trend over time and segment filters (channel, platform, country, campaign, cohort).
- QA and publish. Compare counts with source events, validate a few user journeys, and document the definitions on the dashboard.
Mini tasks to practice
- Draft a 4-step onboarding funnel and write plain-language step definitions.
- Pick a 7-day window and estimate expected completion time distribution (median vs p90).
- List three segments you will use for breakdowns.
Worked examples
Example 1 β Mobile onboarding (4 steps)
Steps: App Open β Sign Up β Email Verify β First Session Complete.
- Counts: 50,000 β 25,000 β 20,000 β 15,000
- Step conversion: 50% β 80% β 75%
- Cumulative conversion to step 4: 15,000 / 50,000 = 30%
- Median time App Open β Sign Up: 2 min; Sign Up β Verify: 5 min.
- Insight: biggest drop is App Open β Sign Up (50%). Test shorter form or social login.
Example 2 β Ecommerce checkout (5 steps)
Steps: Product View β Add to Cart β Checkout Start β Payment β Order Success.
- Counts: 200,000 β 40,000 β 32,000 β 25,600 β 24,000
- Step conversions: 20% β 80% β 80% β 93.75%
- Segment: Mobile vs Desktop. Mobile Payment β Success is 90% vs Desktop 96%.
- Insight: Mobile payment friction. Investigate 3DS prompts, wallet options, and errors.
Example 3 β B2B activation (6 steps)
Steps: Sign Up β Invite Team β Connect Data Source β Create Dashboard β Share Dashboard β 7-day Active.
- Counts: 5,000 β 2,500 β 1,750 β 1,050 β 840 β 630
- Cumulative conversion: 630 / 5,000 = 12.6%
- Time: Connect Data Source β Create Dashboard median = 45 min (long). Add templates to reduce time-to-value.
Quality checks and diagnostics
- Sanity: Step 1 count roughly equals unique users triggering that event in the same period.
- Monotonicity: counts must not increase across steps (unless counting events, which is a red flag).
- Segmentation stability: totals across segments should sum to overall within tolerance.
- Latency: if data is late, yesterdayβs funnel should stabilize by a known hour.
- Time math: verify percentiles on time between steps using spot user journeys.
- Release monitoring: check funnels by app version/build immediately after releases.
QA checklist (tick as you go)
- I verified unique-user counting per step.
- I enforced event order and first occurrence per step.
- I documented the attribution window on the dashboard.
- I validated 5 real user journeys end-to-end.
- Segment sums match overall totals within 1%.
Common mistakes (and how to self-check)
- Counting events, not users. Symptom: counts go up on later steps. Fix: distinct user_id per step.
- Unclear step definitions. Symptom: arguments about what "Sign Up" means. Fix: add precise event + property filters in the dashboard notes.
- No time window. Symptom: unrealistic conversions over long periods. Fix: choose a business-relevant window and stick to it.
- Double counting re-entries. Symptom: conversion > 100% between steps. Fix: use first step occurrence per user within window.
- Comparing apples to oranges. Symptom: mixing platforms or markets. Fix: segment by platform/country; compare like with like.
Practical projects
- Project A: Build an onboarding funnel with 4β6 steps, a 14-day window, and device/channel breakdowns. Include median time between steps and a notes panel describing definitions.
- Project B: Checkout funnel with payment error diagnostics. Add a step-level error rate and a details panel listing top error codes.
- Project C: Activation funnel with cohort comparison (this monthβs signups vs last month). Add trend lines for weekly cumulative conversion.
Minimum acceptance criteria
- Table: step, users, step conversion %, cumulative %, median time to next step.
- Charts: funnel snapshot and conversion trend over time.
- Filters: date range, platform, channel, country.
- Documentation: step definitions, attribution window, re-entry policy.
Exercises
Complete the exercise below, then use the checklist to confirm quality. Your progress is saved if you are logged in.
- Exercise 1: Calculate and visualize a 5-step funnel (Visit β Sign Up β Verify β Add Payment β Purchase) with a 7-day window and breakdown by platform.
Practice checklist
- I computed unique-user counts per step.
- I added step and cumulative conversion rates.
- I calculated median time between steps.
- I added filters for date range and platform.
- I documented definitions and the 7-day window.
Mini challenge
Your funnel shows a sharp drop from Verify β Add Payment on Android only, starting yesterday. List three immediate checks you will run in the next 30 minutes.
Possible directions
- Compare by app version; inspect event logs for Add Payment on Android.
- Review payment SDK errors or 3DS flows on Android.
- Validate tracking plan: did the event name or property change?
Who this is for
- Product Analysts and Data Analysts building product performance dashboards.
- PMs and Designers who need to interpret conversion metrics.
- Engineers validating event tracking quality.
Prerequisites
- Basic SQL or comfort with your BI toolβs data model.
- Understanding of events, users, and unique counting.
- Access to clean, timestamped product events.
Learning path
- Event tracking essentials (events, identities, timestamps).
- Define funnel steps and windows.
- Compute conversions and time between steps.
- Segment and compare cohorts.
- Diagnose with QA and monitoring.
Next steps
- Finish the exercise and confirm the checklist items.
- Share your dashboard with definitions and agree on a weekly review cadence.
- Instrument alerts for sudden step-specific changes.
Note: The quick test is available to everyone; only logged-in users have their progress saved.
Quick Test
Ready to check your understanding? Take the short test below.