Author Archives: Dave Kellogg

Video of my SaaStr 2018 Presentation: Ten Non-Obvious Things About Scaling SaaS

While I’ve blogged about this presentation before, I only recently stumbled into this full-length video of this very popular session — a 30-minute blaze through some subtle SaaS basics.  Enjoy!

I look forward to seeing everyone again at SaaStr Annual 2019.

The Big Mistake You Might Be Making In Calculating Churn: Failing to Annualize Multi-Year ATR Churn Rates

Most of the thinking, definitions, and formulas regarding SaaS unit economics is based on assumptions that no longer reflect the reality of the enterprise SaaS environment.  For example, thinking in terms of MRR (monthly recurring revenue) is outdated because most enterprise SaaS companies run on annual contracts and thus we should think in terms of ARR (annual recurring revenue) instead.

Most enterprise SaaS companies today do a minimum one-year contract and many do either prepaid or non-prepaid multi-year contracts beyond that. In the case of prepaid multi-year contracts, metrics like the CAC payback period break (or at the very least, get difficult to interpret).  In the case of multi-year contracts, calculating churn correctly gets a lot more complicated – and most people aren’t even aware of the issue, let alone analyze it correctly.

If your company does multi-year contracts and you are not either sidestepping this issue (by using only ARR-pool-based rates) or correcting for it in your available-to-renew (ATR) churn calculations, keep reading.  You are possibly making a mistake and overstating your churn rate.

A Multi-Year Churn Example
Let’s demonstrate my point with an example where Company A does 100% one-year deals and Company B does 100% three-year deals.  For simplicity’s sake, we are going to ignore price increases and upsell [1].  We’re also not going to argue the merits of one- vs. three-year contracts; our focus is simply how to calculate churn in a world of them.

In the example below, you can see that Company A has an available-to-renew-based (ATR-based) [2] churn rate of 10%.  Company B has a 27% ATR-based churn rate.  So we can quickly conclude that Company A’s a winner, and Company B is a loser, right?

Capture

Not so fast.

At the start of year 4, a cohort of Company A customers is worth 72.9 units, the exact same as a cohort of Company B customers.  In fact, if you look at lifetime value (LTV), the Company B cohort is worth nearly 10% more than the Company A cohort [3].

my churn1

Wait a minute!  How can a company with 27% churn rate be “better” than a company with 10% churn rate?

It’s All About Exposure:  How Often are Deals Exposed to the Churn Rate?
One big benefit of multi-year deals is that they are exposed to the churn rate less frequently than one-year deals.  When you exclude the noise (e.g., upsell, discounts, and price increases), and look at churn solely as a decay function, you see that the N-year retention rate [4] is (1-churn rate)^N.  With 10% churn, your 2-year retention rate is (1-0.1)^2 = 0.9^2 = 0.81.  Your 3-year retention rate is (1-0.1)^3 = 0.9^3 = 0.729, or a retention rate of 73%, equivalent to a churn rate of 27%.

Simply put, churn compounds so exposing a contract to the churn rate less often is a good thing:  multi-year deals do this by excluding contracts from the ATR pool, typically for one or two years, before they come up for renewal [5].  This also means that you cannot validly compare churn rates on contracts with different duration.

This is huge.  As we have just shown, a 10% churn rate on one-year deals is equivalent to a 27% churn rate on three-year deals, but few people I know recognize this fact.

I can imagine two VCs talking:

“Yo, Trey.”

“Yes.”

“You’re not going to believe it, I saw a company today with a 27% churn rate.”

“No way.”

“Yep, and it crushed their LTV/CAC — it was only 1.6.”

“Melting ice cube.  Run away.”

“I did.”

Quite sad, in fact, because with a correct (annualized) churn rate of 10% and holding the other assumptions constant [6], the LTV/CAC jumps to healthy 4.4.  But any attempt to explain a 27% churn rate is as likely to be seen as a lame excuse for a bad number as it is to be seen as valid analysis.

Best Alternative Option:  Calculate Churn Rates off the Entire ARR Pool
I’m going to define the 27% figure as the nominal ATR-based churn rate.  It’s what you get when you take churn ARR / ATR in any given period.  I call it a nominal rate because it’s not annualized and it doesn’t reflect the varying distribution of 1Y, 2Y, and 3Y deals that are mixed in the ATR pool in any given quarter.  I call it nominal because you can’t validly compare it to anything [7].

Because correcting this to a more meaningful rate is going to involve a lot of brute force math, I’ll first advise you to do two things:

  • Banish any notion from your mind that ATR rates are somehow “more real” than churn rates calculated against the entire ARR pool [8].
  • Then use churn rates calculated against the entire ARR pool and sidestep the mess we’re about to enter in the next section [9] where we correct ATR-based churn rates.

In a world of mixed-duration contracts calculating churn rates off the entire ARR pool effectively auto-corrects for the inability of some contracts to churn.  I have always believed that if you were going to use the churn rate in a math function (e.g., as the discount rate in an NPV calculation) that you should only use churn rates calculated against the entire ARR pool because, in a mixed multi-year contract world, only some of the contracts come up for renewal in any given period.  In one sense you can think of some contracts as “excluded from the available-to-churn (ATC) pool.”  In another, you can think of them as auto-renewing.  Either way, it doesn’t make sense in a mixed pool to apply the churn rate of those contracts up for renewal against the entire pool which includes contracts that are not.

If you want to persist in using ATR-based churn rates, then we must correct for two problems:  we need to annualize the multi-year rates, and we then need to calculate ATR churn using an ATR-weighted average of the annualized churn rates by contract duration.

Turning Nominal ATR Churn into Effective, Annualized ATR Churn
Here’s how to turn nominal ATR churn into an effective, annualized ATR churn rate [10] [11]:

Step 1:  categorize your ATR and churn ARR by contract duration.  Calculate a 1Y churn rate and nominal 2Y and 3Y ATR churn rates.

Step 2:  annualize the nominal multi-year (N-year) churn rates by flipping to retention rates and taking the Nth root of the retention rate.  For example, our 27% 3-year churn rate is equivalent to a 73% 3-year retention rate, so take the cube root of 0.73 to get 0.9.  Then flip back to churn rates and get 10%.

Step 3:  do an ATR-weighted average of the 1Y and annualized 2Y and 3Y churn rates.  Say your ATR was 50% 1Y, 25% 2Y, and 25% 3Y contracts and your annualized churn rates were 10%, 12%, and 9%.  Then the weighted average would be (0.5*0.10) + (0.25*0.12) + (0.25*0.09) = 10.25%, as your annualized, effective ATR churn rate.

That’s it.  You’ve now produced an ATR churn rate that is comparable to a one in a company that does only 1-year contracts.

Conclusion
If nothing else, I hope I have convinced that you it is invalid to compare churn rates on contracts of different duration and ergo that is simpler to generally calculate churn rates off the entire ARR pool.  If, however, you still want to see ATR-based churn rates, then I hope I’ve convinced you that you must do the math and calculate ATR churn as a weighted average of annualized one-, two-, and three-year ATR churn rates.

# # #

Notes
[1] In a world of zero upsell there is no difference between gross and net churn rates, thus I will simply say “churn rate” in this post.

[2] As soon as you start doing multi-year contracts then the entire ARR base is no longer up for renewal each year.  You therefore need a new concept, available to renew (ATR), which reflects only that ARR up for renewal in a given period.

[3] Thanks to its relatively flatter step-wise decay compared to Company A’s more linear decay.

[4] Retention rate = 1 – churn rate.

[5] If it helps, you can think of the ATR pool in a glass half-empty way as the available-to-churn pool.

[6] Assuming CAC ratio of 1.8 and subscription gross margins of 80%.

[7] Unless your company has a fixed distribution of deals by contract duration – e.g., a degenerate case being 100% 3Y deals.  For most companies the average contract duration in the inbound ATR pool is going to vary each quarter.  Ergo, you can’t even validly compare this rate to itself over time without factoring in the blending.

[8] Most people I meet seem to think ATR rates are more real than rates based on the entire ARR pool.  Sample conversation  — “what’s your churn rate?”  “6%.”  “Gross or net?  “Gross.”  “No, I mean your real churn rate – what gets churned divided only by what was up for renewal.”    The mistake here is in thinking that using ATR makes it comparable to a pure one-year churn rate – and it doesn’t.

[9] Gross churn = churn / starting period ARR.  Net churn = (gross churn – upsell) / starting period ARR.

[10] I thought about trying a less brute-force way using average contract duration (ACD) of the ATR pool, but decided against it because this method, while less elegant, is more systematic.

[11] Note that this method will still understate the LTV advantage of the more step-wise multi-year contract decay because it’s not integrating the area under the curve, but instead intersecting what’s left of the cohort after N years.  In our first example, the 1Y and 3Y cohorts both had 73 units of ARR, but because the multi-year cohort decayed more slowly it’s LTV to that point was about 10% higher.

The Use of Ramped Rep Equivalents (RREs) in Sales Analytics and Modeling

How many times have you heard this conversation?

VC:  how many sales reps do you have? 

CEO:  Uh, 25.  But not really.

VC:  What do you mean, not really?

CEO:  Well, some of them are new and not fully productive yet.

VC:  How long does it take for them to fully ramp?

CEO:  Well, to full productivity, four quarters.

VC:  So how many fully-ramped reps do you have?

CEO:  9 fully ramped, but we have 15 in various stages of ramping, and 1 who’s brand new …

There’s a better way to have this conversation, to perform your sales analytics, and to build your bookings capacity waterfall model.  That better way involves creating a new metric called ramped rep equivalents (RREs). Let’s build up to talking about RREs by first looking at a classical sales bookings waterfall model.

ramped rep equivalents, picture 1, revised

I love building these models and they’re a lot of fun to play with, doing what-if analysis, varying the drivers (which are in the orange cells) and looking at the results.  This is a simplified version of what most sales VPs look at when trying to decide next year’s hiring, next year’s quotas [1], and next year’s targets.  This model assumes one type of salesrep [2]; a distribution of existing reps by tenure as 1 first-quarter, 3 second-quarter, 5 third-quarter, 7 fourth-quarter, and 9 steady-state reps; a hiring pattern of 1, 2, 4, 6 reps across the four quarters of 2019; and a salesrep productivity ramp whereby reps are expected to sell 0% of steady-state productivity in their first quarter with the company, and then 25%, 50%, 75% in quarters 2 through 4 and then become fully productive at quarter 5, selling at the steady-state productivity level of $1,000K in new ARR per year [3].

Using this model, a typical sales VP — provided they believed the productivity assumptions [4] and that they could realistically set quotas about 20% above the target productivity — would typically sign up for around a $22M new ARR bookings target for the coming year.

While these models work just fine, I have always felt like the second block (bookings capacity by tenure), while needed for intermediate calculations, is not terribly meaningful by itself.  The lost opportunity here is that we’re not creating any concept to more easily think about, discuss, and analyze the productivity we get from reps as they ramp.

Enter the Ramped Rep Equivalent (RRE)
Rather than thinking about the partial productivity of whole reps, we can think about partial reps against whole productivity — and build the model that way, instead.  This has the by-product of creating a very useful number, the RRE.  Then, to get bookings capacity just multiply the number of RREs times the steady-state productivity.  Let’s see an example below:

ramped rep equivalents, picture 2, revised

This provides a far more intuitive way of thinking about salesrep ramping.  In 1Q19, the company has 25 reps, only 9 of whom are fully ramped, and rest combine to give the productivity of 8.5 additional reps, resulting in an RRE total of 17.5.

“We have 25 reps on board, but thanks to ramping, we only have the capacity equivalent to 17.5 fully-ramped reps at this time.”

This also spits out three interesting metrics:

  • RRE/QCR ratio:  an effective vs. nominal capacity ratio — in 1Q19, nominally we have 25 reps, but we have only the effective capacity of 17.5 reps.  17.5/25 = 70%.
  • Capacity lost to ramping (dollars):  to make the prior figure more visceral, think of the sales capacity lost due to ramping (i.e., the delta between your nominal and effective capacity) expressed in dollars.  In this case, in 1Q19 we’re losing $1,875K of our bookings capacity due to ramping.
  • Capacity lost to ramping (percent):  the same concept as the prior metric, simply expressed in percentage terms.  In this case, in 1Q19 we’re losing 30% of our bookings capacity due to ramping.

Impacts and Cautions
If you want to move to an RRE mindset, here are a few tips:

  • RREs are useful for analytics, like sales productivity.  When looking at actuals you can measure sales productivity not just by starting-period or average-period reps, but by RRE.  It will provide a much more meaningful metric.
  • You can use RREs to measure sales effectiveness.  At the start of each quarter recalculate your theoretical capacity based on your actual staffing.  Then divide your actuals by that start-of-quarter theoretical capacity and you will get a measure of how well you are performing, i.e., the utilization of the quarterly starting capacity in your sales force.  When you’re missing sales targets it is typically for one of two reasons:  you don’t have enough capacity or you’re not making use of the capacity you have.  This helps you determine which.
  • Beware that if you have multiple types of reps (e.g., corporate and field), you be tempted to blend them in the same way you do whole reps today –i.e., when asked “how many reps do you have?” most people say “15” and not “9 enterprise plus 6 corporate.”  You have the same problem with RREs.  While it’s OK to present a blended RRE figure, just remember that it’s blended and if you want to calculate capacity from it, you should calculate RREs by rep type and then get capacity by multiplying the RRE for each rep type by their respective steady-state productivity.

I recommend moving to an RRE mindset for modeling and analyzing sales capacity.  If you want to play with the spreadsheet I made for this post, you can find it here.

Thanks to my friend Paul Albright for being the first person to introduce me to this idea.

# # #

Notes
[1] This is actually a productivity model, based on actual sales productivity — how much people have historically sold (and ergo should require little/no cushion before sales signs up for it).  Most people I know work with a productivity model and then uplift the desired productivity by 15 to 25% to set quotas.

[2] Most companies have two or three types (e.g., corporate vs. field), so you typically need to build a waterfall for each type of rep.

[3] To build this model, you also need to know the aging of your existing salesreps — i.e., how many second-, third-, fourth-, and steady-state-quarter reps you have at the start of the year.

[4] The glaring omission from this model is sales turnover.  In order to keep it simple, it’s not factored in here. While some people try to factor in sales turnover by using reduced sales productivity figures, I greatly prefer to model realistic sales productivity and explicitly model sales turnover in creating a sales bookings capacity model.

[5] This is one reason it’s so expensive to build an enterprise software sales force.  For several quarters you often get 100% of the cost and 50% of the sales capacity.

[6] Which should be an weighted average productivity by type of rep weighted by number of reps of each type.

How To Sales Manage Upside and Unlikely Deals

If your sales organization is like most, you classify sales opportunities in about four categories, such as:

  • Commit, which are 90% likely to close
  • Forecast, which are 70% likely to close
  • Upside, which are 33% likely to close
  • Unlikely, which are 5% likely to close

And then, provided you have sufficient pipeline, your sales management team basically puts all of its effort into and attention on the commit and forecast deals.  They’re the ones that get deal reviews.  They’re the ones where the team does multiple dry runs before big demos and presentations.  They’re the deals that get discussed every week on the forecast call.

The others ones?  No such much.  Sure, the salesreps who own them will continue to toil away.  But they won’t get much, if any, management attention.  You’ll probably lose 75% of them and it won’t actually matter much, provided you have enough high-probability deals to make your forecast and plan.

But, what a waste.  Those opportunities probably each cost the company $2500 to $5000 to generate and many multiples of that to pursue.  But they’re basically ignored by most sales management teams.

The classical solution to this problem is to tell the sales managers to focus on everything.  But it doesn’t work.   A smart sales manager knows the only thing that really matters is making his/her number and doing that typically involves closing almost all the committed and most of the forecast deals.  So that is where their energy goes.

jumpballThe better way to handle these deals is to recognize they’re more likely to be lost than won (e.g., calling them jump-balls, 50/50 balls, or face-offs, depending on your favorite sport), find the most creative non-quota-carrying manager in the sales organization (e.g., VP of salesops) and have him/her manage these low-probability, high-risk deals in the last month of the quarter using non-traditional (i.e., Crazy Ivan) tactics.

This only works if you have happen to have a VP of salesops, enablement, alliances, etc., who has the experience, passion, and creativity to pull it off, but if you do it’s a simply fantastic way to allow core sales management to focus on the core deals that will make or break the quarter while still applying attention and creativity to the lower probability deals that can drive you well over your targets.

This is not as crazy as it might sound, because those in sales ops or productivity positions typically do have prior sales management experience.  Thus, this becomes a great way to keep their saw sharp and keep them close/relevant to the reality of the field in performing their regular job.  What could be better than a VP of sales productivity who works on closing deals 4 months/year?

If your VP of sales ops or sales enablement doesn’t have the background or interest to do this, maybe they should.  If not, and/or you are operating at bigger scale, why not promote a salesperson with management potential into jump-ball, overlay deal management as their first move into sales management?

Important Subtleties in Calculating Quarterly, Annual, and ATR-based Churn Rates

This post won’t save your life, or your company.  But it might save you a few precious hours at 2:00 AM if you’re working on your company’s SaaS metrics and can’t foot your quarterly and annual churn rates while preparing a board or investor deck.

The generic issue is a lot of SaaS metrics gurus define metrics in a generic way using “periods” without paying attention to some subtleties that can arise in calculating these metrics for a quarter vs. a year.  The specific issue is, if you do what many people do, that your quarterly and annual churn rates won’t foot — i.e., the sum of your quarterly churn rates won’t equal your annual churn rate.

Here’s an example to show why.

saas churn subtle

If I asked you to calculate the annual churn rate in the above example, virtually everyone would get it correct.  You’d look at the rightmost column, see that 2018 started with 10,000 in ARR, see that there were 1,250 dollars of churn on the year, divide 1,250 by 10,000 and get 12.5%.  Simple, huh?

However, if I hid the last column, and then asked you to calculate quarterly churn rates, you might come up with churn rate 1, thinking churn rate = period churn / starting period ARR.  You might then multiply by 4 to annualize the quarterly rates and make them more meaningful.  Then, if I asked you to add an annual column, you’d sum the quarterly (non-annualized) rates for the annual churn and either average the annualized quarterly rates or simply gray-out the box as I did because it’s redundant [1].

You’d then pause, swear, and double-check the sheet for errors because the sum of your quarterly rates (10.2%) doesn’t equal your annual rate (12.5%).

What’s going on?  The trap is thinking churn rate = period churn / starting period ARR.

That works in a world of one-year contracts when you look at churn on an annual basis (every contract in the starting ARR base of 10,000 faces renewal at some point during the year), but it breaks on a quarterly basis.  Why?  Because starting ARR is increasing every quarter due to new sales that aren’t in the renewal base for the year.  This depresses your churn rates relative to churn rate 2, which defines quarterly churn as churn in the quarter divided by starting-year ARR.  When you use churn rate 2, the sum of the quarterly rates equals the annual rate, so you can mail out that board deck and go back to bed [2].

Available to Renew (ATR-based) Churn Rates

While we’re warmed up, let’s have some more fun.  If you’ve worked in enterprise software for more than a year, you’ll know that the 10,000 dollars of starting ARR is most certainly not distributed evenly across quarters:  enterprise software sales are almost always backloaded, ergo enterprise software renewals follow the same pattern.

So if we want more accurate [3] quarterly churn rates, shouldn’t we do the extra work, figure out how much ARR we have available to renew (ATR) in each quarter, and then measure churn rates on an ATR basis?  Why not!

Let’s first look at an example, that shows available to renew (ATR) split in a realistic, backloaded way across quarters [4].

ATR churn 1

In some sense, ATR churn rates are cleaner because you’re making fewer implicit assumptions:  here’s what was up for renewal and here’s what we got (or lost).  While ATR rates get complicated fast in a world of multi-year deals, for today, we’ll stay in a world of purely one-year contracts.

Even in that world, however, a potential footing issue emerges.  If I calculate annual ATR churn by looking at annual churn vs. starting ARR, I get the correct answer of 12.5%.  However, if I try to average my quarterly rates, I get a different answer of 13.7%, which I put in red because it’s incorrect.

Quiz:  what’s going on?

Hint:  let me show the ATR distributed in a crazy way to demonstrate the problem more clearly.

atr churn 2

The issue is you can’t get the annual rate by averaging the quarterly ATR rates because the ATR is not evenly distributed.  By using the crazy distribution above, you can see this more clearly because the (unweighted) average of the four quarterly rates is 53.6%, pulled way up by the two quarters with 100% churn rates.  The correct way to foot this is to instead use a weighted average, weighting on an ATR basis.  When you do that (supporting calculations in grey), the average then foots to the correct annual number.

# # #

Notes:

[1] The sum of the quarterly rates (A, B, C, D) will always equal the average of the annualized quarterly rates because (4A+4B+4C+4D)/4 = A+B+C+D.

[2] I won’t go so far as to say that churn rate 1 is “incorrect” while churn rate 2 is “correct.”  Churn rate 1 is simple and gives you what you asked for “period churn / starting period ARR.”  (You just need to realize that the your quarterly rates will only sum to your annual rate if you have zero new sales and ergo you should calculate the annual rate off the yearly churn and starting ARR.)  Churn rate 2 is somewhat more complicated.  If you live in a world of purely one-year contracts, I’d recommend churn rate 2.  But in a world of mixed one- and multi-year contracts, then lots of contracts are in starting period ARR aren’t in the renewal base for the year, so why would I exclude only some of them (i.e,. those signed in the year) as opposed to others.

[3] Dividing by the whole ARR base basically assumes that the base renews evenly across quarters.  Showing churn rates based on available-to-renew (ATR) is more accurate but becomes complicated quickly in a world of mixed, multi-year contracts of different duration (where you will need to annualize the rates on multi-year contracts and then blend the average to get a single, meaningful, annualized rate).  In this post, we’ll assume a world of exclusively one-year contracts, which sidesteps that issue.

[4] ATR is normally backloaded because enterprise sales are normally backloaded.  Here the linearity is 15%, 17.5%, 25%, 42.5% or a 32.5/67.5 split across the first vs. second half of the year (which is pretty backloaded even for enterprise software).

[5] The spreadsheet I used is available here if you want to play with it.