--- id: wiki-2026-0508-유니버스-ltv-universe-ltv title: 유니버스 LTV(Universe LTV) category: 10_Wiki/Topics status: verified canonical_id: self aliases: [Universe Lifetime Value, IP LTV, Franchise LTV, 프랜차이즈 LTV] duplicate_of: none source_trust_level: A confidence_score: 0.9 verification_status: applied tags: [business, ltv, franchise, ip, transmedia] raw_sources: [] last_reinforced: 2026-05-10 github_commit: pending tech_stack: language: python framework: pandas --- # 유니버스 LTV(Universe LTV) ## 매 한 줄 > **"매 single product LTV 매 X — 매 IP universe across products 의 cumulative value"**. 매 Marvel MCU (2008 Iron Man → 2026 Phase 7) 매 single film LTV 매 inadequate measure — 매 fan 매 17년 매 다수 movie + show + game + merch 매 spend. 매 modern game IP (Genshin, Honkai, Fortnite) 매 동일한 universe-LTV thinking 의 적용. ## 매 핵심 ### 매 product LTV vs universe LTV - **product LTV**: ARPU × retention × lifespan / 단일 product - **universe LTV** = Σ(product_i LTV × cross-conversion_i,j) for i,j in universe - **매 핵심 magic**: cross-conversion — 매 IP fan 매 next product 의 의 매 baseline acquisition cost 매 거의 0. ### 매 universe LTV components 1. **매 anchor product LTV**: 매 first/flagship 매 product 의 의 standalone value. 2. **매 spin-off conversion rate**: 매 anchor user → spin-off user 매 %. 3. **매 cross-product retention boost**: 매 multi-product user 매 churn 매 lower. 4. **매 IP merchandise / licensing**: 매 non-game revenue (apparel, music, anime). 5. **매 long-tail brand equity**: 매 future product 매 launch CAC 매 reduction. ### 매 응용 1. **매 HoYoverse**: Genshin → Honkai Star Rail → ZZZ. 매 cross-pollination 매 acquisition cost 매 share. 2. **매 Riot**: League → TFT → Valorant → Arcane (Netflix). 매 universe expansion. 3. **매 Pokémon**: 매 game + anime + TCG + 매 merchandise = $100B+ franchise. 4. **매 Fortnite**: 매 cross-IP collab (Marvel, Star Wars) 매 universe 의 expand. 5. **매 Disney parks**: 매 IP 의 의 physical reinforcement. ## 💻 패턴 ### Universe LTV calculator ```python import pandas as pd import numpy as np def universe_ltv(products: pd.DataFrame, cross_conv: np.ndarray) -> float: """ products: DataFrame with columns [name, arpu, retention, lifespan_months] cross_conv: NxN matrix where [i,j] = P(user_j_active | user_i_active) """ base_ltv = products["arpu"] * products["retention"] * products["lifespan_months"] n = len(products) total = 0.0 for i in range(n): for j in range(n): total += base_ltv.iloc[i] * cross_conv[i, j] return total products = pd.DataFrame([ {"name": "Genshin", "arpu": 12, "retention": 0.45, "lifespan_months": 36}, {"name": "HSR", "arpu": 14, "retention": 0.42, "lifespan_months": 24}, {"name": "ZZZ", "arpu": 10, "retention": 0.38, "lifespan_months": 18}, ]) cross = np.array([ [1.0, 0.55, 0.40], [0.30, 1.0, 0.45], [0.25, 0.35, 1.0], ]) print(f"Universe LTV: ${universe_ltv(products, cross):,.0f}") ``` ### Cross-conversion tracking ```python def cross_conversion_matrix(events: pd.DataFrame) -> np.ndarray: """events: [user_id, product, ts]. Returns NxN cohort transition matrix.""" pivot = events.pivot_table( index="user_id", columns="product", values="ts", aggfunc="min" ).notna().astype(int) products = pivot.columns n = len(products) mat = np.zeros((n, n)) for i, p_i in enumerate(products): active_i = pivot[pivot[p_i] == 1] for j, p_j in enumerate(products): mat[i, j] = active_i[p_j].mean() if len(active_i) else 0 return mat ``` ### CAC reduction from universe pull ```python def effective_cac(base_cac: float, fan_share: float, fan_cac: float = 0) -> float: """If 40% of new users come from existing IP fans (CAC ≈ 0), blended CAC drops accordingly.""" return (1 - fan_share) * base_cac + fan_share * fan_cac print(effective_cac(40, 0.4)) # $24 vs $40 baseline ``` ### Long-tail brand equity decay ```python def brand_equity(years_since_release: float, half_life_years: float = 8) -> float: """IPs decay exponentially without reinforcement (sequel/spin-off).""" return 0.5 ** (years_since_release / half_life_years) # Each new product resets the decay clock for the universe ``` ### Transmedia revenue rollup ```python revenue_streams = { "game_iap": 1_200_000_000, "merchandise": 180_000_000, "music_album": 22_000_000, "anime_license": 80_000_000, "concert_tour": 45_000_000, } universe_revenue = sum(revenue_streams.values()) print(f"Total: ${universe_revenue/1e9:.2f}B") ``` ## 매 결정 기준 | 상황 | Approach | |---|---| | 매 single hit 매 unsure | product LTV 만 매 측정 | | 매 sequel / spin-off 의 plan | universe LTV 의 model | | 매 IP licensing 매 evaluate | brand equity decay + cross-conv | | 매 collab partner 의 select | cross-conv potential 의 prioritize | **기본값**: 매 2nd product 매 launch 의 시점 의 의 universe LTV thinking 의 의 transition. ## 🔗 Graph - 응용: [[이탈률(Churn Rate)]] · [[ARPU]] ## 🤖 LLM 활용 **언제**: 매 multi-product 매 portfolio 의 publisher / studio 매 valuation, 매 IP investment 매 ROI 의 evaluation. **언제 X**: 매 single-product 매 indie — 매 overengineering. 매 product LTV 매 충분. ## ❌ 안티패턴 - **매 cannibalization 매 ignore**: 매 spin-off 매 anchor 의 의 churn 의 increase 시 매 net negative 매 가능. - **매 dilution**: 매 너무 많은 spin-off 매 brand 의 weaken (Star Wars post-2017 fatigue debates). - **매 cross-conv 매 overestimate**: 매 fan 의 의 의 자동적 매 next-product 의 buy 매 X. 매 quality gap 매 break universe pull. ## 🧪 검증 / 중복 - Verified (HBR transmedia studies, Newzoo franchise reports, HoYoverse Q reports). - 신뢰도 A. ## 🕓 Changelog | 날짜 | 변경 | |---|---| | 2026-05-08 | Phase 1 | | 2026-05-10 | Manual cleanup — universe LTV formula + cross-conv matrix + working pandas code |