How to forecast a subscription business accurately?


Summary

We use our own reporting system to get all the values. Then, we use two calculation formulas:
Forecasted Booking = Expiration (EXP) x Retention rate (RR%) x Average price (ASP)
Forecasted Booking = Units x ASP
… and if we don’t have the value, we create it based on trends.


Forecasting involves predicting the future based on as much reliable and existing data as possible. When this data does not exist, we create it. We do this either by extrapolating data or by making assumptions.

1. How to Forecast a subscription business 🔮💰

Most of the booking in my subscription business comes from the retention part. I need to predict how many subscriptions I’ll sell to existing customers. “Existing Customers” means I know their exact number, it’s existing data.
Then I must choose values for the retention rate (RR%) and the average price ASP). I can choose either the most recent values, or the values from last year at the same moment, if my business has a strong seasonality. Then I adjust them according to the current trend.
I use the formula:
Forecasted Booking = EXP x RR% x ASP
where:
EXP: number of subscriptions expiring during the chosen period, aka number of expirations (EXP)
RR%: Retention rate (RR%)
ASP: Average Selling Price (ASP)

2. Where do we find the values? 🔎

It’s expected I have a reporting system and Dashboards in which I find, and already monitor on a daily basis, the key values.
EXP: this is the most known data. It can be found in our customer database.
RR%: this is a KPI we monitor on a daily basis. This value varies mostly depending on the “quality” of customers as well as product prices and seasonality.
ASP: it’s a KPI we also monitor on a daily basis. This value depends on the product mix.

3. How to forecast with more “granularity” 🔮⚖️

It’s wise to build a forecast as detailed as possible. I can breakdown my forecast: by market segment, by product, by tenure, by month, by week or any combination of all these parameters. The granularity will depend on:

  • the time I want to spend on the forecast,
  • the availability of data in my information system,
  • the ability or ease of updating the forecast model,
  • and especially the number of subscribers per segment.

Indeed, more segmentation leads to fewer subscribers per segment and greater variations in RR% and ASP. I have to find the compromise between granularity and volatility.

4. The 3 levels of forecast precision

a. Level 1 : the classic forecast. 1️⃣

Reliable data exists, this is the most favorable case. In my dashboards, I take the number of subscriptions to renew, and the current values of RR% and adjusted ASP. I use the formula:
Forecasted Booking = EXP x RR% x ASP

Table #1 : forecast using standard formula

This is the calculation method giving the most reliable result because it requires the fewest assumptions.

b. Level 2: the forecast by extrapolating existing data 2️⃣

When we don’t have the data, we must create it based on known, nearby data, which we extrapolate based on the current trend or observed growth (YoY, QoQ, etc.).
Let’s take an example

I sell smartphone applications for $ 5. I offer two free weeks and then customers either buy or not. Last quarter I distributed 1000 applications.
The trend has been upwards of 10% quarter over quarter (QoQ) for several quarters. I have no reason to think that the trend will reverse.
I base my Forecast on last quarter’s data applying 10% growth on expirations and the most recent values of RR% and ASP.

Table #2 : forecast using current growth

This calculation method works well when trends (flat, upward or downward) are stable.

c. Level 3: the forecast by hypothesis 3️⃣

As with method 2, I need to choose plausible values to replace the missing ones. But this time, either too much information is missing, or the assumptions are no longer about trends but about hopes (or hypothesis). Using the usual formula wouldn’t make sense. We will directly choose a value for the units and use the formula:
Forecasted Booking = Forecasted Units x ASP

Table #3 : forecast using assumptions

This last resort method will work well on the Acquisition part of the business. For example, when acquisition is highly dependent on marketing investments, then there is a direct relationship between expected growth and spending growth.

Why not estimate the booking directly?
The ASP is mostly dependent on the product mix on which we have control. So it’s an easy data to approach. When you can get a value with confidence, you must use it. But if it is difficult to know the ASP, we will directly estimate growth in booking.

Want to see a real life example ?

5. Practical case for a yearly forecast

Let’s pretend it’s December 1st. I have to build next year’s forecast for the period from January to December.
The conditions are as follows:

  • My subscription business has been established for several years. The retention rate is 70%, increasing by 0.1 point each year for the last 2 years. I have already renewed 63,000 subscriptions since January.
  • My acquisition is up 10% YoY for 2 years thanks to growing investments. I acquire 1,000 new subscribers per month and December is twice as a regular month.
  • My acquisition product mix is the same every year and ASP is $40
  • My retention product mix is the same every year and ASP is $60
  • I charge my customers 3 weeks before the subscription expires, I have 10,000 expirations left to invoice this year.

Step 1: forecasting the retention part as of December 1st

As billing is made 3 weeks before expiration, almost all of this year’s existing subscribers have already been renewed. Only those expiring during the last ten days of December have not yet been renewed.
We start with forecasting the units that will retained during the last 10 days of this year:
EXP x RR% = Retained Units
EXP = 10,000
RR% = 70% (current value)
EXP = 10,000 x 70% = 7,000
This number is added to the number of units already retained. This is our retention opportunity for next year: Forecasted EXP = 63,000 + 7,000 = 100,000 expirations

Step 2: forecasting the Acquisition part from December 1 to 31

I’ve already acquired 11,000 subscribers since January (1,000 / month). I know I’ll acquire twice a regular month in December. That’s 2,000 new subscriptions.
Forecasted New subscribers = 11,000 + 2,000 = 13,000

Step 3: Reconciliation and Retention forecast

Total opportunity = Renewed Subscriptions + New Subscribers Acquired
EXP = 100,000 + 13,000 = 113,000
RR% = 70% adjusted by +0.1 point because it’s been growing every year for several years. There is no reason for this to change.
ASP = $60 no adjustment since the product mix is stable and no change is expected at this stage.
Forecasted Booking = EXP x RR% x ASP.
Forecasted Booking = 113,000 x (70% + 0.1%) x $60 = $475.27 M ($475,278,000)

Step 4: forecasting next year’s Acquisition part

We plan to continue our investments that should create a 10% YoY increase next year.
Forecasted Booking = (13,000 + 10%) x $40
Forecasted booking = $0.57 M
Total Forecasted Booking = $475.27 + $0.57 = $475.85 M

Note I use each and every information I listed under “condition”. Nothing more, nothing less.

👉Key Takeaways

  1. 🏗️ I build my forecast based on my opportunity (Expirations), the retention rate (RR%) and the average selling price (ASP). I use all known and reliable values and then adjust them based on performance history.
  2. ☝️When I don’t know a value, I either forecast it, or I adjust a close value, or I make a hypothesis based on factual elements.
  3. 📊 The more efficient my reporting system is, the more precise and reliable my forecast will be. You need to be able to extract the macro KPIs 🔭(Expirations, RR% and ASP) and also to have a view of all the micro KPIs 🔬that influence them.
One Comment

Add a Comment

Your email address will not be published. Required fields are marked *