I talk to mobile app developers every day. After each conversation, it still amazes me how most of them don’t know what LTV means, and for those that do, they might be fuzzy on the math. This post is intended to get developers up to speed, if not to expert level (a tall order!).
What is LTV?
LTV stands for lifetime value. Put simply, the LTV of a single user is the amount of money you can expect to earn from them over their entire life in your app.
The tricky part of LTV is that “lifetime” and “value” are two separate measures. Here’s an example: Starbucks has a customer lifetime of about 20 years. Separately, the customer has a value per purchase averaging $5.90.
To find LTV from these separate numbers, we’ll need to know how often a customer visits over a period of time. For Starbucks, Kissmetrics has calculated that the weekly expenditure is $24.30. From there it’s simple multiplication: with about a thousand weeks spread over 20 years, the lifetime value could be as high as $25,272.
Apps and games would typically have an average lifetime ranging from weeks to a few years, for a Facebook or Snapchat. A realistic example for an app would be a user who lasted 1 year and averaged 3.5 cents per day in spending, resulting in an LTV of $12.78 (calculated as 365 days * 0.035 = $12.775).
Whether you’re making money from in-app purchases, advertising, subscriptions or some other purchase channel, every cent earned over time goes into LTV.
Why use LTV?
The goal of any business is to maximize LTV. But that doesn’t mean your predictions need to be spot on. It’s unlikely that the creators of Pokemon Go care whether their LTV calculations are perfect yet, for instance: they need to retain their millions of new users and keep their servers from melting down first.
But Pokemon Go situations are one in a million. Most developers are knee-deep in the daily slog to increase users and revenue. For this, there are several good reasons to calculate your LTV:
If you’ve already launched, knowing LTV keeps you informed about your app’s health and competitiveness. Or, if you’re still pre-launch, eyeballing the LTV of a competitor can tell you if you’re making a good business decision.
If you’re looking for publishers, investors or partners, they’ll be focused on revenue opportunities. Showing LTV is the most bullet-proof defense of your app’s potential success.
If you’re acquiring users, you’d better know your LTV. Many a developer has gone out of business by assuming that buying users for $3 or $4 was a good deal. Unless you know your LTV is higher than the acquisition price, you could be flushing money down the toilet.
The final reason is the most important one for most mature businesses. Apps listed in the “Top Grossing” charts on iOS usually have a team of analysts who help calculate LTV using difficult math and, increasingly, machine learning. All that effort is directed toward acquiring the maximum number of users possible without the cost per install exceeding projected LTV.
How to start calculating LTV
Think back to what you read above on calculating LTV, and you may spot a problem: you already had the numbers for lifetime and value. Sadly, that’s not realistic for an app developer who’s just getting underway. If you’re calculating LTV many of your users are probably still in the app, with an unknown end date.
So most app developers measure LTV based on the length of time a user definitely had the app — and you should too.
As an example, if a user downloads your app on January 1st you can say on January 31st that the user had your app for 30 days. Let’s assume the user also purchased $3 of goods. So your 30-day LTV is $3.
Looking at the above illustration, you can see that the player goes on to spend another $1 as they approach 45 days after install. “X-day” prefixes like 30-day or 45-day LTV are typical for games or apps: since it’s difficult to predict the future, most developers end up calculating for a more reliable span of time.
It is good to be able to peer some distance into the future, though — and it’s possible, with somewhat more complex calculations. We’ll return to that subject in a future blog post. Stay tuned!