Calculating your customers lifetime value (with code)

  • I've done some work on CLTV for one of the major online gaming services. Definitely agree with the segmentation by High/Med/Low as well as the deeper analytic segmentation.

    One thing I like to tack onto the setup described is a survival analysis. I've done it mostly in SAS due to my clients, but it's just as easy (and free) in R. Essentially I'm using survival analysis to see what signs indicate someone who is likely to leave/downgrade/upgrade.

    Can't really go into details, but essentially I was checking on: minutes played / # of friends who played the same games / freq of games purchased / freq of in-game purchases / purchase method (online vs. in-store giftcard) / plus a lot more. This was in order to predict likelihood of renewing at the next subscription term. Ostensibly this was to intervene and make an offer to retain a customer or squeeze more out of them. Can't say for sure what ultimately happened with the analysis and tools I delivered: I do know it helped someone score a new job.

    I can't offer any of the original code (but I could write up some of the basic structure if there's some interest).

  • I admire what Paul is doing with the site.

    He launched it here on HN with a goal of adding substance to startup blogging. This post shows he's sticking with that mission.

    It's much easier to get traffic by stirring controversy or talking about bubblegum issues like "5 ways Twitter is changing everything" posts. But substance posts like this are harder to pull off on a regular-basis.

  • Disclaimer: I'm the co-founder of Custora (YC W11), and one of the keys to our product is accurate lifetime value estimation.

    This is a great rundown of how to do a descriptive revenue per customer analysis.

    As many have pointed out here, true CLV really needs to account for the expected value of customers as well -- not just what we have seen, but how we expect customers to behave into the future. This information can help us determine how much to spend on customer acquisition. Even better, performing the calculations across acquisition sources helps us decide where to spend our advertising dollars in future periods.

    The single most important thing to recognize when building a survival model is that there isn't a constant retention rate. Instead, when customers join, some are good (slow churners) and others are bad (quick churners). The key to an accurate survival analysis (and thus, an accurate LTV number), is getting a sense of this distribution of customers.

  • That's not lifetime value. Let's break the term down:

    Lifetime: The entire length of the relationship with your customer, including the future, not just for the period where you have data, as done in the article. Of course there will be some estimating involved, but that's what happens when you consider an entire "lifetime".

    Value: All cash flows (in AND out) attributable to the customer, discounted to present value. Not just revenue as used in the article. If your sales (e.g. adwords) or support costs are at all significant, you can't ignore them.

    I know it's easier to criticize than to write up a helpful article. I do applaud the blogger for taking the time to write about this, but can only recommend not using words like lifetime value to describe something else entirely.

  • How do you calculate CLTV without knowing how long people subscribe with some precision? Doesn't attrition rate factor into the calculation?

    It seems that this would be especially hard to determine if (a) you're a fairly new biz or (b) users stay with you for a long time.