Thanks to everyone who attended my SaaStr 2020 presentation and thanks to those who provided me with great feedback and questions on the content of the session. The slides from the presentation are available here. The purpose of this post is to share the video of the session, courtesy of the folks at SaaStr. Enjoy!
The podcast in question is an interview performed by Harry Stebbings of The Twenty Minute VC where we sat down to talk about the importance of the lifetime value to customer acquisition cost ratio (LTV/CAC) and why, if you could only know one SaaS metric about a company, that LTV/CAC would be it.
Of course with Harry it’s easy to end up in a wide-ranging conversation, as we did, and we thus discussed many other fun topics including:
How I got into enterprise software and SaaS.
The biggest challenge as a leader in a high-growth company (hanging on).
Why, for a public SaaS company, I’d probably take billings growth as the single metric, because LTV/CAC isn’t available.
LTV/CAC and the idea that it’s a powerful (if compound) metric that weights what you pay for something vs. what’s it worth.
In looking at this issue across several companies, I’ve noticed a disturbing trend / missed opportunity in how many SaaS companies classify the reason for customer churn. Roughly speaking, if companies were hospitals, they’d too frequently be reporting the cause of death as “stopped breathing.”
Yes, the patient who died stopped breathing; the question is why did they stop breathing. In churn-speak, “yes, the customer who churned issued a churn notice and chose not to renew.” The question is why did they choose not to renew?
Many people have written great posts on reasons customers churn and how to prevent them. These reasons often look like hierarchies:
Product ease of use
Oversold / poor fit
These hierarchies aren’t a bad start, but they aren’t good enough, either. A new sponsor isn’t an automatic death sentence for a SaaS product. He or she might be, however, if the team using it had a rough implementation and was only half-satisfied with the product. Similarly, a failed implementation will certainly reduce the odds of renewal, but sometimes people do have the will to start over — and why did the implementation fail in the first place?
(And, at the time, literally observing that it was a better way to classify churn.)
The rule above spells it out quite clearly — “DO NOT enter terminal events such as respiratory arrest […] without showing the etiology.” That is, “stopped breathing” by itself isn’t good enough. Just like “sent churn notice” or “decided not to renew.”
I have not built out a full taxonomy here; classifying churn in this way remained a future item on my to-do list at the time we sold my last company. Nevertheless, while I know it’s not easy, I believe that companies should start trying to find a way to richly encode churn reasons using this “chain” concept so as to not lose critical information in encoding their data. Otherwise, we risk believing that all our customers churned because they sent us a churn notice (or some easily blamed “uncontrollable” event).
As one example:
Churned, due to
New sponsor, due to
Failed implementation, due to
Partner problem, due to
Churned, due to
Corporate edict, due to
M&A, due to
Product dissatisfaction, due to
Oversold, due to
These aren’t perfect, but I’m trying quickly demonstrate the real complexity behind why customers churn. For example, happy customers might challenge a corporate edict issued after an acquisition — so you can’t just blame the edict. You have to look more deeply. If you knew that the customer fought the edict and failed, you might stop the chain there. But if you knew they were never terribly happy with the system because they were overpromised capabilities at the start, then you should code that into the chain, too.
# # #
For more information on the warning signs and symptoms of a stroke, go here.
Career Development: What It Really Means to be a Manager, Director, or VP. The number two post of 2018 was actually written in 2015! That says a lot about this very special post which appears to have simply nailed it in capturing the hard-to-describe but incredibly important differences between operating at the manager, director, or VP level. I must admit I love this post, too, because it was literally twenty years in the making. I’d been asked so many times “what does it really mean to operate at the director level” that it was cathartic when I finally found the words to express the answer.
The SaaS Rule of 40. No surprise here. Love it or not, understanding the rule of 40 is critical when running a SaaS business. Plenty of companies don’t obey the rule of 40 — it’s a very high bar. And it’s not appropriate in all circumstances. But something like 80% of public company SaaS market capitalization is captured by the companies that adhere to it. It’s the PEG ratio of modern SaaS.
The Role of Professional Services in a SaaS Company. I was surprised and happy to see that this post made the top five. In short, the mission of services in a SaaS company is “to maximize ARR while not losing money.” SaaS companies don’t need the 25-35% services margins of their on-premises counterparts. They need happy, renewing customers. Far better to forgo modest profits on services in favor of subsidizing ARR both in new customer acquisition and in existing customer success to drive renewals. Services are critical in a SaaS company, but you shouldn’t measure them by services margins.
The Customer Acquisition Cost Ratio: Another Subtle SaaS Metric. The number five post of 2018 actually dates back to 2013! The post covers all the basics of measuring your cost to acquire a customer or a $1 of ARR. In 2019 I intend to update my fundamentals posts on CAC and churn, but until then, this post stands strong in providing a comprehensive view of the CAC ratio and how to calculate it. Most SaaS companies lose money on customer acquisition (i.e., “sell dollars for 80 cents”) which in turn begs two critical questions: how much do they lose and how quickly do they get it back? I’m happy to see a “fun with fundamentals” type post still running in the top five.
 See disclaimer that I’m not a financial analyst and I don’t make buy/sell recommendations.
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 . 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)  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?
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 .
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  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 compoundssoexposing 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 . Thisalso 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:
“You’re not going to believe it, I saw a company today with a 27% churn rate.”
“Yep, and it crushed their LTV/CAC — it was only 1.6.”
“Melting ice cube. Run away.”
Quite sad, in fact, because with a correct (annualized) churn rate of 10% and holding the other assumptions constant , 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 .
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 .
Then use churn rates calculated against the entire ARR pool and sidestep the mess we’re about to enter in the next section  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  :
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.
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.
# # #
 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.
 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.
 Thanks to its relatively flatter step-wise decay compared to Company A’s more linear decay.
 Retention rate = 1 – churn rate.
 If it helps, you can think of the ATR pool in a glass half-empty way as the available-to-churn pool.
 Assuming CAC ratio of 1.8 and subscription gross margins of 80%.
 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.
 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.
 Gross churn = churn / starting period ARR. Net churn = (gross churn – upsell) / starting period ARR.
 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.
 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.
I’m Dave Kellogg, advisor, director, consultant, angel investor, and blogger focused on enterprise software startups. I am an executive-in-residence (EIR) at Balderton Capital and principal of my own eponymous consulting business.
I bring an uncommon perspective to startup challenges having 10 years’ experience at each of the CEO, CMO, and independent director levels across 10+ companies ranging in size from zero to over $1B in revenues.
From 2012 to 2018, I was CEO of cloud EPM vendor Host Analytics, where we quintupled ARR while halving customer acquisition costs in a competitive market, ultimately selling the company in a private equity transaction.
Previously, I was SVP/GM of the $500M Service Cloud business at Salesforce; CEO of NoSQL database provider MarkLogic, which we grew from zero to $80M over 6 years; and CMO at Business Objects for nearly a decade as we grew from $30M to over $1B in revenues. I started my career in technical and product marketing positions at Ingres and Versant.
I love disruption, startups, and Silicon Valley and have had the pleasure of working in varied capacities with companies including Bluecore, FloQast, GainSight, Hex, MongoDB, Pigment, Recorded Future, and Tableau.