Blog · How-to guides · Software
Product funnel analysis compares signup cohorts through a defined activation sequence. Use prepared usage summaries, exact spreadsheet formulas, and a reconciliation to locate the transition that needs investigation.
Product funnel analysis finds where signup cohorts stop before a defined activation action, using supplied usage records and equal follow-up windows. Start by proving the stage counts, then compare the transition rates; a lower overall rate alone does not identify the problem.
The user funnel guide covers the broader decisions about identities, stages, and cohort measurement. Here the question is specific: which activation transition weakened for new users of a business software product?
Consider Harbor Field Software, a fictional US provider of field-service scheduling software. Its agreed sequence is signup, workspace creation, first job scheduled, and first job closed. For this exercise, closing a first job within 14 elapsed days is the activation definition. That is a business definition for the example, not a claim that it predicts retention.
Choose whether the unit is a user or an account before exporting. This example uses distinct users throughout. If several employees collaborate in one workspace, user conversion and account adoption will differ. Later commercial analysis, including product fit reconciled to ARR, needs its own account and revenue mapping.
Ask the file owner for one row per de-identified signup user, with the earliest timestamps that satisfy the agreed sequence. The summary should include all eligible signups, including users who completed nothing afterward.
| Column | Header | What belongs in it |
|---|---|---|
| A | User ID | Stable de-identified identifier, unique in this file |
| B | Signup cohort | Week beginning date, stored as a date |
| C | Signup at | Signup timestamp |
| D | Workspace at | First workspace timestamp qualifying after signup |
| E | First job at | First scheduled-job timestamp qualifying after workspace creation |
| F | First close at | First closed-job timestamp qualifying after the scheduled job |
| G | Workspace flag | Formula returning 1 when the workspace qualifies, otherwise 0 |
| H | Scheduled flag | Formula returning 1 when the scheduling stage qualifies, otherwise 0 |
| I | Activated flag | Formula returning 1 when the closing stage qualifies, otherwise 0 |
Use one time zone throughout. Keep absent actions blank. A timestamp for an earlier, out-of-order event cannot simply substitute for the first event that actually meets the sequence.
Google's funnel documentation explains the distinction between open and closed funnels and the effect of ordered steps. This example uses closed entry: nobody joins at the workspace stage without belonging to the signup cohort. The supplied summary must already contain the qualifying action history; this workflow does not collect product events.
On a sheet named Data, put headers in the first row and the prepared user records underneath. The export contains 440 users, so records occupy rows 2 through 441. Use a cutoff after every included signup has had the full observation period.
Enter these formulas in G2, H2, and I2 respectively, and fill down. Blank checks keep missing events from being interpreted as dates. The later flags require completion of the earlier stage.
=IF(D2="",0,IF(AND(D2>=C2,D2<=C2+14),1,0))
=IF(E2="",0,IF(AND(G2=1,E2>=D2,E2<=C2+14),1,0))
=IF(F2="",0,IF(AND(H2=1,F2>=E2,F2<=C2+14),1,0))
Create a summary sheet with cohort dates in column A and the following counts in B through E. Put the first cohort date in A2. These formulas count signups, workspaces, scheduled jobs, and activated users in that order:
=COUNTIFS(Data!$B$2:$B$441,$A2)
=COUNTIFS(Data!$B$2:$B$441,$A2,Data!$G$2:$G$441,1)
=COUNTIFS(Data!$B$2:$B$441,$A2,Data!$H$2:$H$441,1)
=COUNTIFS(Data!$B$2:$B$441,$A2,Data!$I$2:$I$441,1)
Google documents COUNTIFS as counting a range against multiple criteria. All ranges must cover the same rows. Extend every range together when adding records, and resolve duplicate user IDs before counting.
The usage summary produces these counts after the full observation window:
| Signup week beginning | Signups | Workspace created | First job scheduled | First job closed |
|---|---|---|---|---|
| September 1, 2026 | 200 | 160 | 100 | 60 |
| September 8, 2026 | 240 | 180 | 90 | 54 |
| Total | 440 | 340 | 190 | 114 |
In F2 through I2 of the summary, calculate the adjacent transitions and overall activation:
=IF(B2=0,"",C2/B2)
=IF(C2=0,"",D2/C2)
=IF(D2=0,"",E2/D2)
=IF(B2=0,"",E2/B2)
Format percentages to one decimal place, retaining unrounded values underneath. Blank output means there was no eligible denominator, rather than a measured conversion rate of zero.
| Cohort | Signup to workspace | Workspace to scheduled | Scheduled to closed | Signup to activated |
|---|---|---|---|---|
| September 1 | 160 / 200 = 80.0% | 100 / 160 = 62.5% | 60 / 100 = 60.0% | 60 / 200 = 30.0% |
| September 8 | 180 / 240 = 75.0% | 90 / 180 = 50.0% | 54 / 90 = 60.0% | 54 / 240 = 22.5% |
| Combined | 340 / 440 = 77.3% | 190 / 340 = 55.9% | 114 / 190 = 60.0% | 114 / 440 = 25.9% |
Overall activation fell by 7.5 percentage points, from 30.0% to 22.5%. The workspace-to-scheduled transition fell by 12.5 percentage points, from 62.5% to 50.0%, while the final transition stayed at 60.0%. That makes first scheduling a focused investigation, alongside the smaller decline in workspace creation.
The count check partitions every signup into its furthest qualifying stage:
| Cohort | No workspace | Workspace, no scheduled job | Scheduled, no close | Activated | Entrants checked |
|---|---|---|---|---|---|
| September 1 | 40 | 60 | 40 | 60 | 200 |
| September 8 | 60 | 90 | 36 | 54 | 240 |
| Total | 100 | 150 | 76 | 114 | 440 |
The identity is 100 + 150 + 76 + 114 = 440. Check the individual memberships as well as the totals. Every activated flag requires a scheduled flag, and every scheduled flag requires a workspace flag.
Ask the product owner whether scheduling requirements changed. Ask customer success whether the later cohort included accounts waiting for staff availability. Review acquisition source and company size before attributing the difference to onboarding. The counts locate a transition; they do not prove a cause.
A product analysis dashboard can carry the agreed measures into a recurring review. Keep qualified opportunities and booked sales in sales funnel analysis, where the commercial counting unit and timing differ.
Covirage is not affiliated with Google.
Upload a prepared usage-summary file or Google Sheet containing the qualifying stages and cohort definitions. Covirage maps the columns, and its tools compute and check the stage counts, conversion rates, and loss reconciliation; the external AI model explains the results with every figure traced to its rows. Create a free Covirage account and bring a sample of your own data.
See Covirage for SaaS sales teams for the business context around those comparisons.
Choose an observable action that represents initial business use, then document its qualifying conditions and deadline. Validate that choice against later customer outcomes separately. A completed setup step can be convenient to count without demonstrating that a customer received useful value.
Yes, if the counts already enforce the same cohort, identity, sequence, and observation rules. Independent event totals are insufficient. Ask the export owner how repeated events and missing identifiers were handled before interpreting differences between stages as user drop-off.
No. Activation records a defined usage outcome, while paid conversion records a commercial outcome. Users can activate without purchasing, or purchase before activating. Keep those measures separate and connect them only with an agreed account mapping and matching observation periods.