+150 XP

Lifetime value modeling for subscribers versus ad-supported users

Take one cohort: 100,000 signups from a single spring campaign, 60,000 on the ad-free plan and 40,000 on the with-ads plan. Same creative, same channels, near-identical cost per head. Twelve months later finance asks what that cohort is worth. Answer with one blended number and you bury the fact that two different revenue machines are running inside it. This lesson builds the value side of the model: subscription LTV on one hand, ARPU-driven ad-supported value on the other, both calculated on that same cohort so they can actually be compared.

Why one LTV formula doesn't fit both models

LTV answers one question: how much total value will this user generate before they leave?

LTV = Average Revenue Per User (ARPU) × Gross Margin % × Average Customer Lifespan

For subscription revenue, ARPU is clean. The New York Times reports average revenue per digital-only subscriber every quarter, and the figure moves slowly, mostly as promotional subscribers roll onto full price. It is contractual, known in advance, and indifferent to whether that subscriber reads one article a month or two hundred.

Ad-supported ARPU sits on a second stack of variables: watch time, ad load, fill rate (the share of available slots that actually sell) and CPM (cost per mille, the price advertisers pay per 1,000 impressions). A subscriber's revenue is locked the moment a billing cycle starts. An ad-supported user's revenue is re-priced every time a slot sells, or doesn't.

Building the subscription LTV model

Illustrative, rounded figures for an ad-free streaming plan:

  • Monthly ARPU: $16 (typical US premium ad-free pricing, blended across monthly and annual billing)
  • Gross margin: 45% (content and delivery costs are heavy; an industry-typical estimate, not a company figure)
  • Average monthly churn: 4.5%

Average lifespan in months = 1 / 0.045 ≈ 22.2

LTV = $16 × 0.45 × 22.2 ≈ $160

The number only means something set against the fully loaded acquisition cost the CAC lesson shows you how to build. At $50 per subscriber the ratio is 3.2:1, inside the 3:1 to 5:1 band borrowed from SaaS practice (see OpenView's SaaS benchmarks for the origin of the heuristic).

Two refinements to build in early. Discount the total: $160 collected over 22 months is not $160 today, and at a 10% annual cost of capital the present value is nearer $150. And split billing frequencies, because a 12-month prepay cannot cancel in month three. Blend annual and monthly plans into one churn rate and your lifespan estimate drifts upward for a reason that has nothing to do with loyalty.

Building the ad-supported LTV model

Now the with-ads half of the same cohort. Its ARPU has two components: a reduced subscription fee, plus ad revenue per user, which is (impressions sold × CPM) / 1,000.

Worked example:

  • Watch time: 20 hours a month
  • Ad load: 6 minutes an hour, so 120 ad-minutes, or 240 impressions at 30 seconds each
  • Fill rate: 85%, giving 204 sold impressions
  • CPM: $20 (US streaming CPMs are commonly cited in the $15 to $30 range, varying with genre and season)

Monthly ad revenue per user = (204 × $20) / 1,000 ≈ $4.10

Add a with-ads fee of about $8 (Hulu's ad-supported plan has sat roughly in the $8 to $12 band in recent years) and blended ARPU is around $12. Gross margin drops to about 35%, because content costs barely change while ad sales, measurement and ad-tech take a slice. Monthly churn runs higher, say 6%, since price-sensitive users leave faster.

Average lifespan = 1 / 0.06 ≈ 16.7 months

LTV = $12 × 0.35 × 16.7 ≈ $70

$160 against $70, one cohort. At a 3:1 floor that is a CAC ceiling near $53 for the ad-free plan and $23 for the with-ads plan. A single blended target of $38 overpays for every ad-tier signup while starving the bids for the tier that pays twice as much.

Where the model breaks if you get it wrong

Mean watch time hides a skew. Consumption is concentrated: the top decile of viewers can deliver several times the impressions of the median. Model on the mean and you value a median ad-tier user at roughly half what the spreadsheet claims, and cheap low-intent reach buys land in the bottom half. Value the tier by decile.

Fill rate assumed at 100%. In a soft quarter it slips. At 60% rather than 85%, the same user's ad revenue falls from $4.10 to about $2.90 and tier LTV drops to roughly $55. Part of ad-tier LTV is a bet on advertiser demand you do not control.

Duplicate identities. Without device stitching, one household on a TV, a phone and a laptop counts as three users: ad revenue per user reads a third of reality and churn reads worse. Segment, which sells the identity infrastructure this depends on, exists because that join is hard. Audit what your ad-tier denominator actually contains before trusting its ARPU.

One churn definition for both. Subscription churn is a dated cancellation. Free ad-supported churn is behavioural, usually an inactivity window such as no session in 60 days, so the two lifespans are not measured on the same clock. Which behaviours flag a leaver in advance is the churn lesson's territory; here churn is only a rate input, and it needs to be a defensible one.

Ignoring migration between tiers. If 12% of ad-tier users move to ad-free within 18 months, add roughly 0.12 × $160 ≈ $19 of expected value and most of the gap narrows. Downgrades work the other way. Pull more people down from $16 than you pull up from free and cohort LTV falls while the subscriber count rises, which is the version of this that gets celebrated in a board deck for a quarter before margin exposes it.

A simple way to code the comparison

python
def ltv(arpu, gross_margin, monthly_churn):
    lifespan_months = 1 / monthly_churn
    return arpu * gross_margin * lifespan_months

sub_ltv = ltv(arpu=16, gross_margin=0.45, monthly_churn=0.045)
avod_ltv = ltv(arpu=12, gross_margin=0.35, monthly_churn=0.06)

print(f"Subscription LTV: ${sub_ltv:.0f}")
print(f"Ad-supported LTV: ${avod_ltv:.0f}")

Run it with your own fill rate and CPM assumptions. The output people argue about is not the LTV, it is the separate CAC ceiling per tier that falls out of it.

Knowledge check

1. Why do subscription and ad-supported (AVOD) users require separate LTV models rather than one blended average?

2. In the classic LTV formula (ARPU × Gross Margin % × Average Customer Lifespan), what role does gross margin play?

3. A company using a single blended LTV formula for both its ad-tier and premium subscribers is most likely to make which mistake?

MULTIPLE CHOICE

4. Select ALL correct answers about what drives ARPU for an ad-supported (AVOD) user, as distinct from a subscriber.

Select all the correct answers.

MULTIPLE CHOICE

5. Select ALL correct answers about why building separate LTV models for subscription and ad-supported cohorts matters for business decisions.

Select all the correct answers.

Regional and benchmark notes

In Europe, subscription ARPU generally runs below US levels, and the free alternatives are stronger: the BBC is licence-fee funded and carries no ads at all, while ITV's streaming service is ad-funded, so commercial pricing is squeezed from both directions. CPMs in the UK, Germany and France are usually cited below US levels, though the gap has narrowed as programmatic buying matured. Treat cross-border figures as directional; how to normalise external datasets is the benchmarking lesson's problem.

The sector split matters more than the region. At The New York Times, subscription revenue is the majority of the business and advertising a minority, so a non-paying reader is worth an order of magnitude less than a subscriber and the ad-supported model is a top-of-funnel tool rather than a revenue line. In streaming the two can land within about 2x, sometimes closer. Hulu is the long-running case: it launched as a free ad-supported service in 2008 and its paid plan has carried ads since 2010, so its ad stack had a decade of maturity before the recent wave of ad tiers arrived. Ad-supported LTV is not structurally inferior, it is structurally later.

🎬 [VIDEO: "How Streaming Services Make Money (Subscriptions vs Ads)" - youtube.com - search for recent explainer content from CNBC or Wall Street Journal breaking down streaming monetization models, useful for a visual walkthrough of ARPU mechanics]

Key takeaways

  • Never blend the two into one LTV. Subscription LTV runs on contractual ARPU; ad-supported LTV requires watch time, ad load, fill rate and CPM as live inputs, and a 2x gap on the same cohort is normal.
  • Set a CAC ceiling per tier. On the worked numbers that is about $53 ad-free and $23 with-ads; one blended $38 target misallocates in both directions at once.
  • Fill rate and CPM are the fragile inputs. Dropping fill from 85% to 60% cut tier LTV from $70 to roughly $55 in the example above, so model the downside quarter, not just the annual average.
  • Watch time is skewed, so decile-level modeling beats a mean, and duplicate device identities can understate per-user ad revenue by a factor of two or three.
  • Price upgrade and downgrade flows into the model. An ad tier that cannibalises full-price subscribers faster than it recruits from free lowers cohort value while the headline subscriber number improves.