Churn, Retention & Cohort Modelling

This use case explains how to represent churn, retention and revenue cohorts inside a Model Reef SaaS model. It extends basic ARR and MRR forecasting by making the dynamics of customer behaviour explicit.

You will use drivers and variables to represent cohorts, retention curves and expansion behaviour without relying on spreadsheet style cell references.

When to use this pattern

Use this pattern when:

  • Aggregate churn assumptions are no longer sufficient.

  • You want to understand cohorts by signup month, year, product or channel.

  • You care about how expansion and contraction differ across cohorts.

  • Investors ask for metrics like gross retention, net retention and cohort based LTV.

If you only need simple net churn, the ARR/MRR Forecasting pattern might be enough.

Architecture overview

The cohort modelling structure has three main parts:

  • Cohort definition How you group customers into cohorts (for example by signup month, product, channel or segment).

  • Retention and expansion drivers Retention curves by cohort, plus expansion and contraction rates by cohort.

  • Revenue and churn variables Per-cohort revenue streams, aggregate revenue and churn metrics, and derived retention/net dollar retention metrics.

All of this sits within the same three-statement and driver engine as the rest of the model.

1

Decide your cohort dimensions

First, choose how you will define cohorts. Common choices are:

  • Signup month or quarter for all customers.

  • Signup month or quarter by segment (for example SME vs enterprise).

  • Signup by channel (for example direct, partner, self serve).

More dimensions add complexity. Start with one or two that reflect meaningful differences in behaviour.

Examples of cohort names:

  • Cohort - SME - 2024-01

  • Cohort - SME - 2024-02

  • Cohort - Enterprise - 2024-Q1

2

Create cohort size drivers

In the Data Library, create drivers for cohort sizes, for example:

  • Cohort Size - SME - 2024-01

  • Cohort Size - SME - 2024-02

Populate these drivers from:

  • Historical data (for past cohorts).

  • Forecast assumptions (for future cohorts), often linked to sales or marketing activity.

Alternatively, use a single driver that defines new customers by period and derive cohort sizes from that if your cohort dimension is simply signup month.

3

Define retention curves

For each cohort type, define a retention curve that specifies the percentage of the cohort that remains active over time.

Implementation options:

  • Generic retention drivers such as:

    • Retention Curve - SME

    • Retention Curve - Enterprise

  • Or separate retention drivers per cohort or cohort family for more detail.

Example retention values:

  • Month 1: 100%

  • Month 2: 95%

  • Month 3: 92%

  • Month 6: 85%

  • Month 12: 80%

  • Month 24: 70%

Store these curves in the Data Library for reuse.

4

Combine cohort size and retention into active customers

For each cohort, create a driver or variable for active customers over time:

Active Customers - Cohort X = Cohort Size - Cohort X × Retention Curve (aligned by age, not by calendar date).

Because Model Reef works in calendar periods, simulate cohort age by shifting the retention curve along the timeline for each cohort. Do this by specifying non-zero retention values starting in the cohort start period and continuing over the chosen horizon.

If needed, pre-compute age-aligned retention series outside the engine and import them as cohort-specific drivers.

5

Model cohort level revenue, churn and expansion

For each cohort, define Revenue variables that use:

  • Active customers from the previous step.

  • ARPA or price per customer.

  • Expansion rates if applicable.

Example formula:

Revenue - MRR - Cohort X = Active Customers - Cohort X × ARPA × (1 + Expansion Rate)

From this you can derive:

  • Cohort revenue per period.

  • Cohort churned revenue as the difference between revenue at 100% retention and actual revenue.

  • Expansion revenue from the expansion component.

Aggregate revenue and churn metrics can be created by summing across cohorts using categories or custom report configurations.

6

Derive retention metrics

From cohort and revenue variables, define metrics such as:

  • Logo retention: customers retained as a percentage of starting cohort size.

  • Gross revenue retention: retained revenue from existing customers divided by starting revenue.

  • Net revenue retention: retained revenue plus expansion divided by starting revenue.

Implement these as custom chart formulas using cohort revenue series, or as external calculations based on model exports if you need complex time alignment.

Surface key metrics on a SaaS dashboard as KPI cards and trend charts.

7

Ensure cohort-based revenue variables tie into:

  • COGS (e.g., support and hosting costs that scale with active customers).

  • Staff planning (e.g., customer success headcount driven by cohort sizes).

  • Valuation (cohort-based projections feed into cashflow and valuation models).

Keep retention and expansion assumptions in the Data Library and document them for stakeholders.

Check your work

  • Cohort sizes and retention curves match historical behaviour where data is available.

  • Aggregate MRR and ARR from cohorts reconcile to existing high level revenue series.

  • Retention metrics are stable and plausible when compared with benchmarks or internal expectations.

  • The structure remains understandable and is not over-engineered relative to decision needs.

Troubleshooting

chevron-rightCohort model becomes too detailed to maintainhashtag

Reduce the number of cohort dimensions and aggregate similar cohorts into families.

chevron-rightRetention metrics fluctuate wildlyhashtag

Check that cohorts are defined consistently and that retention curves are aligned to cohort age correctly.

chevron-rightStakeholders cannot follow the cohort logichashtag

Provide a summary view that shows only total MRR, ARR and high level retention metrics, and use cohort outputs mainly for internal analysis.

Last updated