Cohorts
analyses/cohorts.md

Cohorts

How cohort months (M1, M2, ...) are defined and when each column appears.

Overview

The Cohorts page groups customers by the month of their first order and tracks repeat purchases in 30-day windows from that first order.

Two toggles control what you see: a Value toggle (what you’re measuring, e.g., revenue or margin) and a Display mode toggle (how it’s aggregated across windows, e.g., cumulative or percentage increase).

Value

ValueWhat it measures
CM3Contribution margin after COGS, variable costs, and ad spend. When a product filter is active this becomes CM2 since ad spend cannot be attributed to a product subset.
RevenueTop-line revenue. You can choose between with and without tax via the tax toggle in the filter settings.
Repeat RateThe share of the cohort that came back for at least one more order. 40% means 40% of the cohort’s customers returned. Caps at 100% since each customer is only counted once.
Repurchase RateHow often the cohort comes back on average, measured as total repeat orders divided by cohort size. 150% means the cohort’s customers have placed 1.5 repeat orders each on average.

Display mode

ModeHow windows are aggregated
Post-AcquisitionRunning total of repeat orders, without including the first order. Useful once you’ve broken even on acquisition.
CumulativeRunning total of repeat orders, including the first order.
IncrementalValue in each window only, not summed. Useful for seeing when customers add value.
%Running total as a percentage of first order. 120% means 20% growth over the first order; first order is always 100%.
LTV:CACCumulative LTV divided by CAC. In CM3 mode, values above 1 indicate payback has been reached. Unavailable when a product filter is active, since CAC can’t be attributed to a product subset.

Columns

ColumnCovers
First Order (R)Realized first order value — what’s left after refunds and return costs. Use this to decide how much you can pay to acquire a new customer.
First OrderOriginal first order value at time of purchase, before any refunds.
M1Orders within the first 30 days of first order.
M2Orders between days 30 and 60 after first order.
M3, M4, …Subsequent 30-day windows (60–90 days, 90–120 days, and so on).

Example

A customer places their first order on April 3 for $100 and a second order on April 20 for $50. On May 5 they return $30 worth of the first order.

  • First Order for the April cohort = $100, unaffected by the later refund to show the original order amount.
  • First Order (R) for the April cohort = $100 - $30 = First order revenue - refund = $70, once the May 5 refund is applied.
  • The April 20 order is 17 days after the first order, so its $50 falls into the M1 window.
  • The May 5 refund is 32 days after the first order, so the −$30 reduces the M2 window.

As you can see, refunds are applied to the M-window that contains the refund date, and first-order refunds also reduce the First Order (R) column.

Product filter

The Cohorts page has a product filter that limits cohorts to customers whose first order contained the selected products. When this filter is active, CM3 becomes CM2 (no ad spend attribution), and payback period is hidden since CAC does not apply to a product subset. See Filter & Compare for details.