Cohort Transition Table¶
Cohort tracking table — instantiates Funnel Attrition Localization
Follows fixed cohorts stage by stage over a stable window, keeping each cohort's own starting count as the denominator so drop-off is never blurred by mixing arrivals from different periods.
Cohort Transition Table is a table whose rows are defined cohorts (say, everyone who entered in a given period) and whose columns are the ordered stages, with each cell counting how many of that cohort are still present at that stage. Its defining move is to lock the population: it follows the same cohort forward in time, so every stage's conversion is measured against the fixed count that cohort started with. That immunizes it against the denominator-mixing that corrupts a snapshot funnel — where this period's conversions get divided by that period's arrivals — which is exactly the error a longitudinal ledger exists to prevent. It is the funnel's memory, not its live gauge.
Example¶
A university tracks its Fall 2024 applicant cohort down the enrollment funnel: applied (≈12,000) → admitted (≈4,200) → deposited (≈1,600) → enrolled (≈1,450) → retained to sophomore year (≈1,220). Rows hold successive entry terms; columns hold the stages. Because the table follows the same 12,000, the admit→deposit rate is honestly 1,600 of 4,200 — not muddled by a later term's applicants who haven't yet reached deposit. Read down a column and you compare cohorts at the same stage; read across a row and you watch one cohort decay. The payoff: a naïve snapshot (this month's deposits over this month's applications) would understate conversion badly, because those two counts belong to different cohorts sitting at different funnel positions. The table shows the deposit→enroll melt is stable year over year, but admit→deposit slipped versus the prior cohort — localizing the change to a specific transition and a specific cohort.
How it works¶
Fix the cohort key (entry period, acquisition channel, plan tier), pick an observation window long enough for the slowest cohort to traverse every stage, then count survivors at each stage for each cohort — never re-basing on a population that is still moving. Lay cohorts as rows and stages as columns; each cell is a count, or a percentage of the cohort's origin, or both. What distinguishes it from every aggregate view is that the denominator travels with the cohort: nothing is divided by a number drawn from a different time or a different population.
Tuning parameters¶
- Cohort definition — by signup period, channel, or tier; finer cohorts localize better but thin each row until small counts get noisy.
- Window length — must exceed the slowest cohort's full traversal; too short and late stages look artificially empty (censoring), too long and you wait forever for a clean read.
- Absolute counts vs. cohort-relative percent — counts show volume, percent-of-origin shows conversion; showing both stops a large cohort's raw numbers from hiding a poor rate.
- Time grain of cohorts — daily, weekly, or monthly buckets; coarser is stabler, finer catches a sudden regime change sooner.
- Maturation cutoff — how you treat cohorts that haven't fully aged (flag as still-maturing versus exclude), so you never compare a mature cohort against an immature one.
When it helps, and when it misleads¶
Its strength is that it kills two illusions at once: denominator-mixing and time-censoring. It makes "did this period's funnel actually change, or did the arrival mix change?" an answerable question, and it surfaces cohort-over-cohort drift that a blended dashboard averages away. Its sharpest failure mode is misreading immature cohorts: the most recent row hasn't had time to convert, so a literal reading screams "conversion is collapsing" when the cohort simply isn't done. It is also vulnerable to Simpson's paradox[1] — a trend visible within cohorts can reverse once they are blended, or vice versa. Its classic misuse is post-hoc cohort-slicing: cutting cohorts every possible way until one row tells the story you wanted. The discipline is to fix cohort definitions and the maturation cutoff before looking, and to always mark immature cohorts as such.
How it implements the components¶
denominator_transition_frame— each cohort carries its own origin count forward as the denominator for every downstream transition, so a stage's conversion is always measured against the population that genuinely entered it.segment_or_cohort_slice— the table's rows are the cohort partition; the mechanism exists to hold that slice fixed while time passes.
It does not compute or display the live aggregate metrics and yield-versus-baseline (per_stage_conversion_and_loss_metrics, expected_yield_baseline — Conversion Funnel Dashboard), nor compare segments side by side to locate divergence (that framing is the Segment Funnel Comparison), nor verify the counts reconcile across systems (instrumentation_integrity_check — Denominator Reconciliation Checklist).
Related¶
- Instantiates: Funnel Attrition Localization — the table is the archetype's longitudinal, denominator-honest record of attrition.
- Consumes: Event Instrumentation Specification supplies the consistent stage-transition events needed to place each cohort.
- Sibling mechanisms: Segment Funnel Comparison · Conversion Funnel Dashboard · Stage Drop-Off Waterfall · Loss Pareto Review · Denominator Reconciliation Checklist · Event Instrumentation Specification · Event Trace Process Mining · Stage Conversion Anomaly Alert · Survivorship Bias Audit · Funnel Experiment Backlog
Editorial Notes¶
Form Classification¶
Form family: Analysis, Modeling & Optimization
Rationale: The mechanism fixes cohort keys and windows, computes stage survivors against each cohort's own starting denominator, and exposes comparable drop-off without population mixing, so its operative form is cohort-flow analysis.
Nearest alternative: Representation, Specification & Plan — A table presents the results durably, but its distinctive contribution is the denominator-preserving calculation and comparison rather than the grid as a passive artifact.
Review outcome: Adjudicated after independent review; high confidence.
Origin Attribution¶
Primary origin: Data Science & Analytics
Origin pattern: Cross-disciplinary synthesis
Present-day reach: Multi-domain
Rationale: Funnel and retention analytics established fixed-entry cohorts across ordered stages with the original cohort count retained as denominator.
Related originating lineages:
- Statistics & Experimental Design — Longitudinal analysis and Simpson's-paradox controls explain why cohorts must remain separate.
Review resolution: Both reviewers agree on data_science as primary. Reading the source mechanism confirms that its defining operation belongs to that lineage; the final record retains statistics_experimental_design only where it materially formed the mechanism and keeps present-day application breadth separate from provenance.
Review outcome: Reconciled after independent review; high confidence.
Notes¶
The cohort key has to exist in the data at the moment of entry. If you cohort on an attribute assigned partway through the funnel — a plan tier the user only chooses at checkout, say — the table quietly becomes a selection artifact: every cohort was defined by surviving to the point where the attribute was set, so its early-stage rates are structurally flattering. Cohort on something known at origin.
References¶
[1] Pearl, J. "Comment: Understanding Simpson's Paradox". The American Statistician 68(1), 8–13 (2014). Defines Simpson's paradox as a reversal between disaggregated group trends and the combined aggregate trend. registry ↩