2026-10-26·by Sijie Wang#product#retention

retention-curve

Retention curves: read the cohort, not the total

What a cohort is. The word is Latin: a Roman legion (about 5,000 men) was divided into 10 cohorts of about 480 men each, a unit that marched together. Analytics borrows exactly that sense: a cohort is a batch of users sharing one starting point, such as registering in the same week. Cohort analysis watches one batch over time.

Why cohorts, not totals. A total mixes batches, and new inflow masks outflow. Illustrative numbers, not any product's actuals: week 1 brings 100 users, week 2 keeps 40 of them reading, week 3 keeps 30, so the batch lost 70%. But if 100 new users arrive each week, the total reads 140, then 170, and looks healthy while the first batch bled out. A total cannot tell retention apart from replacement. The denominator of a cohort curve is the batch's initial size, and the numerator each week is how many of that batch are still active.

Shapes, and what each one indicts. A steep drop that then flattens means the early leavers were never the target audience (wrong acquisition, curious passersby) and the flat tail is a core that found value: the problem is targeting and filtering, not the product's core. A curve that keeps declining without flattening means even the survivors keep leaving: the product itself has no stickiness, and buying traffic pours water into a leaky bucket. A single-week cliff (a whole block dropping at, say, week 4) points at one mechanism (trial ends, content runs out, paywall hits): investigate that point, not stickiness in general. Flat then steep is the fourth shape: the core held for a while and then eroded. The flat part proves a core existed; the steep part proves the core's reason to stay expired or was broken: content exhausted with no next step, a change that drove core users away (paywall, price, bad update), or the cohort's natural lifecycle ending (exam over, semester over). Find what changed at the bend week, and for a reading product the classic case is finishing a book with no next book catching the reader.

Denominator traps. Registration versus activation denominators answer different questions: registration covers the whole funnel (acquisition quality plus onboarding plus product); activation covers only people who experienced the product. An active definition must be behavioral and event-instrumented, not "opened the app": opened-app definitions inflate the curve, over-strict ones deflate it. Frequency must match the product: weekly is the honest window for a low-frequency product like reading, daily would misjudge it as sticky-less. And batches must be cut, not pooled: by channel (different channels bring different-quality users) and by key-action completion (for example, whether the user imported a first book).

Derivation: the area under the curve is expected lifetime. Let weekly churn be c. Week 1 has 100% of the batch, week 2 has 1-c, week 3 has (1-c) squared, and so on. Summing the geometric series gives expected lifetime in weeks:

E[T]=∑k=0∞(1−c)k=1cE[T] = \sum_{k=0}^{\infty}(1-c)^k = \frac{1}{c}

Weekly churn of 20% means an expected lifetime of 5 weeks; 10% means 10 weeks. This is where the division by churn in the LTV formula comes from.

Lucerna worked conclusions (decided 2026-10-26). Weekly retention uses activated users as the denominator, not registered users: churn after activation is what indicts the product. Weekly active means at least one valid reading session in the week, defined by event instrumentation with a duration threshold. Per-user average events are tracked separately as engagement depth, not mixed into the retention numerator. The duration threshold must be set from the actual reading-duration distribution, not guessed; the duration is reading time, not app foreground time (screen-off and backgrounded time excluded); and depth is read with the median and the distribution alongside the mean, since a few heavy users pull the mean up.

about this entry

One of sijie's wiki entries. The AI on this site is grounded in the same corpus and answers in sijie's voice, with citations back to entries like this one — answering costs sijie money, so it waits behind a code: enter an access code →

retention-curve — Sijie Wang