tensorturnBETA
HomeUse Cases

How to Predict Customer Lifetime Value Without Code

TensorTurn predicts customer lifetime value (CLV) by learning from a historical cohort: upload one row per customer with their early behaviour and the value they went on to generate over a fixed future window, describe the target in chat, and it trains a regression model (usually XGBoost or scikit-learn) on an isolated cloud GPU, then deploys a /predict API that scores new customers. Because customer value is heavy-tailed — a few customers are worth many times the median — ranking customers by predicted value is often more useful and more reliable than hitting an exact rupee figure.

What CLV prediction actually estimates

Customer lifetime value is the total profit or revenue a customer will generate over a defined horizon — the next 12 months, say, or a fixed lifetime window. Framed for machine learning it is a regression problem: predict a continuous value per customer from what you know about them today. You use the score to prioritise acquisition and retention spend, cap acquisition cost, and route high-value customers to VIP treatment. It can also be framed as classification (high-value vs not) when a ranking or tier is all you need.

What data you need

The subtlety with CLV is the target: you can only train on customers whose future you have already observed, so you build it from an older cohort.

How to build a CLV model with TensorTurn (no code)

Algorithm, data and metrics at a glance

AspectWhat it looks like for CLV
Problem typeRegression (predict future value); optional high-value classification
Likely algorithmXGBoost or scikit-learn regression, often on a log-scaled target
Data you needEarly-window features + realised future value, from a complete cohort
Key metricsMAE, RMSE, R-squared; decile lift / ranking quality for prioritisation
Watch out forHeavy-tailed target and leakage from inside the value window
OutputPredicted value (and rank) per customer via /predict

Value is heavy-tailed — measure ranking, not just error

Spend data is dominated by a small number of big spenders, so a plain error metric can be misleading and a few whales can swamp the RMSE. Two honest practices help: train on a log-transformed target so the model is not ruled by extreme values, and judge the model on how well it ranks customers — a decile or lift table that shows the top 10% predicted really do contain most of the actual value. For many teams, correctly ranking who is high-value matters more than predicting an exact amount.

How accurate can a CLV model be?

Be realistic: individual customer value is genuinely hard to predict, so R-squared is often modest (0.2 to 0.5 is common and still useful), while ranking quality can be strong even when point accuracy is not. Short horizons and rich behavioural history help; sparse data and long horizons hurt. If you see suspiciously high accuracy, check for leakage — the most common cause is a feature that secretly comes from inside the value window you are trying to predict.

Deploy as an API

Save the best model and publish an authenticated /predict endpoint on Modal that scales to zero when idle, with a SHA-256-hashed Bearer key and per-call logging. The playground provides cURL, JavaScript, Python and Rust snippets so you can score customers straight into your CRM or marketing tools, and retrain on newer cohorts as your business evolves.

Start building free

Frequently asked questions

What data do I need to predict customer lifetime value?

One row per customer with early-behaviour features (RFM, tenure, channel, first-order value) and a target equal to the value they actually generated over a later fixed window, built from a cohort old enough to have that window complete.

Is CLV a classification or regression problem?

Usually regression, because you predict a continuous future value. If you only need tiers or a high-value flag, you can frame it as classification instead — just tell the chat which you want.

Which algorithm does TensorTurn use for CLV?

For tabular CLV it typically picks XGBoost or a scikit-learn regressor, often on a log-transformed target because customer value is heavy-tailed. You can ask it to prefer a specific model.

How accurate can a CLV model be?

Point accuracy is often modest (R-squared around 0.2 to 0.5) because individual value is hard to predict, but ranking customers from low to high value is usually reliable and is what most teams actually use.

How do I avoid leakage in a CLV model?

Make sure every feature comes strictly from before the value window you are predicting. The tabular health check and data-leakage detector flag columns that secretly encode the outcome.

Can I deploy the CLV model to score customers?

Yes. Publish a /predict endpoint and call it from your CRM or marketing stack with the provided snippets to get a predicted value and rank per customer. It scales to zero when idle.