LTV per Download

The Pour Over App · value of a single install · cohort-survival model with power-law retention extrapolation.
LTV per Download (all-traffic) Q3 Rocks · Paid cohort →
Center of truth · May 18 – Jul 5 · seven complete weeks
May 18 – July 5 · seven complete dashboard weeks (49 days). Rolled up from May 18–24 through Jun 29–Jul 5: clicks/new-users/upgrades summed, WAU averaged across the seven weeks. Jun 29–Jul 5 contributed 14 annual + 13 monthly + 0 lifetime (only 2 sponsors ran app placements → just 58 windowed clicks). Monthly subs churn on their own rate (16%/mo, refined from RevenueCat: 9 of 55 set-to-cancel, down from 18% as the base grew) → $31.25 LTV, not the $272.73 the old annual-renewal method implied. Annual renewal 78% from internal Stripe (RevenueCat shows ~83% set-to-renew, so conservative).
Total LTV / download
$0.00
Sponsor + Upgrade value of one install
Sponsor LTV
Newsletter sponsor clicks over lifetime
Upgrade LTV
$0.00
Annual + monthly + lifetime conversions
Expected active days
0
Area under retention curve, D0 → horizon (5 yr)

0 Week-over-week · rolling-window LTV blended value of the whole window each refresh

RefreshedWindowWksTotal LTVΔ WoW% Δ
Rolling cumulative window (May 18 → present), 5-yr horizon + real monthly churn. Each point is the whole window's blended LTV, not the single newest week — so movement reflects mix shift (monthly-sub growth, churn settling), not one week's performance. Earlier windows used the pre-fix monthly method and are excluded for comparability.

1 Window inputs May 18 – Jul 5

Active users (window)avg WAU — stock, not summed · (8,254 + 7,554 + 5,958 + 6,297 + 6,122 + 6,209 + 6,002) ÷ 7
Sponsor clicks (window)Edition-windowed app clicks · 441 + 326 + 297 + 186 + 409 + 434 + 58 (Jun 29–Jul 5)
New users (window)Downloads / first opens · 2,904 + 1,068 + 1,018 + 1,311 + 994 + 1,104 + 1,014 (Jun 29–Jul 5)
Annual upgrades ($49)14 + 10 + 13 + 13 + 11 + 18 + 14 (Jun 29–Jul 5)
Monthly upgrades ($5/mo)0 + 0 + 2 + 7 + 10 + 12 + 13 (Jun 29–Jul 5)
Lifetime upgrades ($199)0 + 2 + 1 + 1 + 0 + 0 + 0 (Jun 29–Jul 5)
Days in window49 = May 18 – Jul 5 (7 weeks) · validate $2.26 with one week (days=7) + horizon=365
Lifetime horizon (days)how far the retention curve is integrated · 1825 = 5 yr · 365 = 1 yr

3 Retention anchors Firebase / GA4

D1 retentionlive Q2 cohort (Apr 1–Jul 7, n=18,682) · % active 1 day after install
D30 retentionlive Q2 cohort · % active 30 days after install

2 Pricing & renewal

Sponsor CPC ($/click)
Annual sub price
Monthly sub price ($/mo)$5/mo · churned on its own rate below, not the annual one
Monthly churn (per month)16% — RevenueCat: 9 of 55 active monthly subs set-to-cancel (Jul 9 2026, n=55; refined down from 27%→18%→16% as the cohort matured). Monthly LTV = price ÷ churn
Lifetime sub price
Annual renewal rate78% — internal Stripe: TPO premium newsletter subs churn ~2%/mo → ~78.5% annual retention. RevenueCat snapshot: ~83% of annual subs set-to-renew, so 78% is conservative

4 Derived parameters

Decay exponent kR(d) = D1 · d^(−k), fit from D1 & D30
Sponsor rev / active user / day(clicks ÷ AU ÷ days) × CPC
Annual sub LTVgeometric: price ÷ (1 − renewal)
Monthly sub LTVgeometric: price ÷ monthly churn
Lifetime sub LTV
Annual conversion rateannual upgrades ÷ new users
Monthly conversion ratemonthly upgrades ÷ new users
Lifetime conversion ratelifetime upgrades ÷ new users

7 Diagnostics verify vs dashboard

CheckModelExpected
D7 retention (model)12.4% live Q2
Active days · year 1 (D0–D365)~12.7
Active days · tail (D366→horizon)power-law tail
Sponsor rev / WAU / wk= (clk÷AU)×CPC
Total LTV per download$2.26 single-wk check

5 Daily retention curve D0 → 5 yr · log time axis