Most metric disputes are denominator disputes wearing a disguise.
Someone says conversion rate is 2.4%. Someone else says it’s 3.1%. Both pulled the number this morning, both are competent, and both are right — because one divided by sessions and the other divided by users. Nothing about the business changed. Only the denominator did.
This is the first of eight deep dives that sit underneath the product analytics and data science cheat sheet. The cheat sheet gives you the one-line definition; this piece explains what actually goes wrong with these metrics in a digital product, and how to define them so they survive a results review.
The denominator is the decision
Every rate metric is a fraction, and the numerator is almost never the interesting part. “Purchases” is unambiguous. What you divide it by is a modelling choice that changes the answer, and it usually gets made by whoever built the dashboard rather than by whoever has to act on it.
Three common denominators for the same numerator:
- Sessions. Conversion rate per session. Falls whenever people browse more before buying — so a change that increases consideration looks like a loss.
- Users. Conversion rate per unique visitor over a window. More stable, but sensitive to how you deduplicate and how long the window is.
- Triggered-eligible users. Only those who could actually have converted — reached the page, saw the component, met the eligibility rule. This is the one you want for experiments, and the one almost nobody has by default.
The practical rule: pick the denominator that matches the decision. If you are testing a change to the delivery options on a product page, the denominator is people who reached a product page — not everyone who landed on the site, most of whom never saw your change and can only dilute it.
Write the denominator into the metric’s name in the dashboard. cr_per_session and cr_per_user sitting side by side ends the argument permanently, and costs about ten minutes.
Retention has three flavours and they are not interchangeable
Ask three analysts for day-30 retention and you can get three different curves from the same data.
- N-day retention — active exactly on day 30. Strict, spiky, and unforgiving of weekly-usage products. A product people use every Saturday will show a sawtooth.
- Unbounded retention — active on day 30 or later. Always the highest number. Also the least honest, because it retroactively promotes anyone who came back once in month four.
- Rolling or bracket retention — active anywhere in a window around day 30, say days 28–34. Usually the most faithful for consumer products, because it tolerates weekly rhythm without rewarding a single stray return.
None of these is wrong. Reporting one without saying which is. If you take a single thing from this section, make it this: put the flavour in the chart title.
The related trap is cohort mixing. A retention curve that improves month over month can be entirely explained by a change in acquisition mix — you started buying better traffic, and the product did not change at all. Always cohort by acquisition month, and always be able to answer “did the product get better, or did the customers?”
Activation is found, not decided
Activation is the first moment a user gets real value from the product. In practice it is the event that best predicts whether they are still around in week four.
The failure mode is deciding this in a workshop. Someone says “activation is completing onboarding”, it goes into the dashboard, and eighteen months later nobody has checked whether completing onboarding predicts anything at all.
Find it instead:
- Take a cohort from three months ago.
- Split into retained and churned at week four.
- For each candidate early action, compare the proportion of each group who did it in their first week.
- Look for the action with the biggest separation, then check it holds on a different cohort.
You are looking for correlation as a starting hypothesis, not proof. The honest follow-up is an experiment: if you push more people to that action, does week-four retention actually rise? Sometimes it does. Sometimes the action was just a marker for people who were always going to stay — see regression to the mean and selection bias.
Revenue metrics: why RPV beats conversion rate
For ecommerce and any transactional product, revenue per visitor is the honest headline:
RPV = conversion rate × average order value
Conversion rate alone can be won by doing damaging things. Push a heavy discount banner and conversion rate rises while margin falls. Strip the basket cross-sells and conversion rate rises while AOV falls. Optimise for conversion rate in isolation for a year and you can end up with a higher-converting, less profitable business.
RPV catches both halves. It is also noisier — which matters more than people expect, and is covered in descriptive statistics. Revenue per session on a store with a wide price range routinely has a coefficient of variation above 4, meaning you need far more traffic to detect a change in RPV than in conversion rate. That is a real trade-off, not a reason to avoid the metric: measure RPV as the decision metric, and use conversion rate as a faster-moving diagnostic.
AOV on its own is a trap on low-volume tests. One trade order or one bulk purchase moves it visibly. If you must report AOV, report the median alongside, and say what your outlier rule is.
Lifetime value, done without lying
The version most businesses use:
LTV ≈ ARPU × gross margin ÷ churn rate
Two things go wrong. First, people build it on revenue instead of margin, which makes low-margin categories look like winners and quietly misdirects acquisition spend. Second, they use a single blended churn rate, when churn is always much higher in the first period than later — an average hides that most of your losses happen in month one.
For a first pass, margin-based LTV with a cohort-specific churn rate is enough. For anything you will spend real money against, model the retention curve properly (survival analysis handles the censoring correctly, because plenty of your customers have not churned yet).
Then hold it against CAC, fully loaded — not just media spend but the agency fees, the tooling, and the discount you gave to win the order. Blended CAC across paid and organic is the most common way a business convinces itself paid is working, when organic is quietly subsidising it.
Engagement metrics that mean something
DAU/WAU/MAU are windowed unique counts. The single most common error is arithmetic: MAU is not the sum of DAU, and you cannot divide a metric deduplicated one way by a metric deduplicated another. Stickiness (DAU/MAU) is legitimate because both are unique counts over defined windows; “conversions per MAU” usually is not.
Feature adoption needs three numbers, not one:
- Breadth — what share of users ever used it
- Depth — how often adopters use it
- Duration — what share are still using it at day 30
Report breadth alone and every feature looks successful, because launching anything with a banner produces a spike of one-time triers. The interesting feature is the one with modest breadth and high duration; the failed feature is the one with high breadth and no duration at all.
Bounce rate deserves a warning specific to GA4. It is now simply the inverse of engaged sessions — an engaged session being 10+ seconds, a conversion, or two-plus pageviews. That is a materially different definition from Universal Analytics, which is why your bounce rate changed on migration day without anything happening to the site. Do not trend it across the migration boundary.
A metric set that holds up
For most digital products, a defensible core looks like this:
| Layer | Metric | Denominator to state |
|---|---|---|
| Acquisition | New users | by channel, by week |
| Activation | Reached the value event | of new users in cohort |
| Engagement | Stickiness (DAU/MAU) | both unique, same window |
| Monetisation | Revenue per visitor | per session, stated |
| Retention | Week-4 retention, bracket | by acquisition cohort |
| Efficiency | Margin LTV : CAC | fully loaded CAC |
Six numbers, each with its denominator written down. That is usually enough to run a product, and it is far more useful than forty metrics nobody can reconcile.
Where this connects
Metric definitions are the foundation everything else sits on. A beautifully designed experiment measuring a badly defined metric produces a confident, precise, wrong answer.
- The variance of your metric determines how much traffic you need — see descriptive statistics for product analytics
- Choosing which metric decides an experiment is the OEC problem in experiment design
- Getting from “this metric moved” to “we caused it” is hypothesis testing and, where you cannot randomise, causal inference
The full vocabulary, including everything above in one-line form, is in the product analytics and data science cheat sheet.