--- id: wiki-2026-0508-game-monetization-strategy title: Game Monetization Strategy category: 10_Wiki/Topics status: verified canonical_id: self aliases: [Game Monetization, F2P Design, IAP Strategy, LTV Optimization] duplicate_of: none source_trust_level: A confidence_score: 0.9 verification_status: applied tags: [game-design, monetization, f2p, ltv] raw_sources: [] last_reinforced: 2026-05-10 github_commit: pending tech_stack: language: business-design framework: f2p-monetization --- # Game Monetization Strategy ## 매 한 줄 > **"매 monetization 은 매 retention × 매 conversion × 매 ARPPU 의 매 product"**. 매 Game Monetization Strategy 는 매 LTV (Lifetime Value) 의 매 maximization — 매 F2P, premium, subscription, hybrid 매 model. 매 2026 의 매 dominant: 매 battle pass + cosmetic shop + 매 ethical IAP. 매 Apple ATT (2021) 매 이후 매 attribution 변화, 매 GDPR/DMA (EU) 매 regulation 매 영향. ## 매 핵심 ### 매 Monetization Models - **Premium**: 매 upfront purchase (\$60 AAA, \$15-30 indie). - **F2P + IAP**: 매 free entry, 매 in-app purchase. - **Subscription**: 매 monthly fee (WoW, Final Fantasy XIV). - **Ad-supported**: 매 rewarded video, 매 banner. - **Hybrid**: 매 premium + cosmetic DLC (매 Diablo 4, 매 BG3-style 매 0 DLC). ### 매 LTV Decomposition - LTV = ARPPU × Conversion × Retention(t) - ARPPU = 매 Average Revenue Per Paying User. - Conversion = 매 % of player who pay at least once. - Retention(t) = 매 Day-N retention curve. ### 매 IAP Categorization - **Cosmetic**: 매 skin, emote, banner — 매 ethical, 매 LTV high (Fortnite). - **Convenience**: 매 timer skip, 매 inventory expansion. - **Power**: 매 stat boost — 매 P2W controversy. - **Social**: 매 alliance gift, 매 guild perk. ### 매 응용 1. Fortnite — 매 battle pass (Chapter Pass), 매 cosmetic-only, \$5B+ annual. 2. Genshin Impact — 매 gacha, 매 \$70M/month launch, 매 character banner. 3. League of Legends — 매 cosmetic + champion 매 mix. 4. Path of Exile — 매 cosmetic + stash tab — 매 ethical baseline. 5. Helldivers 2 — 매 \$40 premium + 매 cosmetic warbond. ## 💻 패턴 ### Pattern 1: Battle Pass Schema ```typescript interface BattlePass { season: number; duration_days: 90; free_track: Reward[]; premium_track: Reward[]; // unlocks at $9.99 premium_plus: Reward[]; // $24.99 — includes 25 tier skip total_value_displayed: number; // "$200 value!" } function computeAttachRate(pass: BattlePass, players: Player[]): number { const buyers = players.filter(p => p.purchased.includes(`pass_s${pass.season}`)); return buyers.length / players.length; // industry norm: 15-25% } ``` ### Pattern 2: Gacha Pity System ```python class GachaBanner: def __init__(self, base_rate: float = 0.006, hard_pity: int = 90): self.base_rate = base_rate # 0.6% Genshin 5★ self.hard_pity = hard_pity # guaranteed at 90 self.soft_pity_start = 75 # rate ramp begins def pull_rate(self, pulls_since_5star: int) -> float: if pulls_since_5star >= self.hard_pity: return 1.0 if pulls_since_5star < self.soft_pity_start: return self.base_rate # Linear ramp from 0.6% at pull 75 to ~32% at pull 89 ramp = (pulls_since_5star - self.soft_pity_start) / (self.hard_pity - self.soft_pity_start) return self.base_rate + ramp * 0.32 ``` ### Pattern 3: Whale Identification ```rust #[derive(Debug)] enum SpenderTier { Minnow, Dolphin, Whale, Krill } fn classify(monthly_spend_usd: f64) -> SpenderTier { match monthly_spend_usd { s if s >= 1000.0 => SpenderTier::Whale, s if s >= 100.0 => SpenderTier::Dolphin, s if s > 0.0 => SpenderTier::Minnow, _ => SpenderTier::Krill, // F2P } } // Industry: ~1% whale = ~50% revenue, ~9% dolphin = ~30%, rest minnow + F2P ``` ### Pattern 4: Cohort Retention ```python import pandas as pd def cohort_retention(events: pd.DataFrame) -> pd.DataFrame: # events: [user_id, install_date, active_date] events['cohort'] = events.groupby('user_id')['install_date'].transform('min') events['days_since_install'] = (events['active_date'] - events['cohort']).dt.days pivot = events.pivot_table( index='cohort', columns='days_since_install', values='user_id', aggfunc='nunique' ) return pivot.div(pivot[0], axis=0) # D1: 40%, D7: 20%, D30: 10% — typical mobile F2P ``` ### Pattern 5: Dynamic Offer Targeting ```csharp public class OfferEngine { public Offer SelectOffer(Player p) { if (p.Tier == SpenderTier.Whale && p.LastPurchaseDays > 7) return new MegaPack(price: 99.99m, value: "$300"); if (p.Tier == SpenderTier.Minnow && p.SessionCount == 3) return new Starter(price: 4.99m, value: "$25"); // first-time hook return null; // no offer — avoid fatigue } } // A/B test offer composition; LTV uplift typically +15-30% ``` ## 매 결정 기준 | 상황 | Approach | |---|---| | 매 audience: AAA console | 매 premium (\$60) + 매 cosmetic DLC | | 매 audience: mobile mass-market | 매 F2P + 매 battle pass + 매 IAP | | 매 audience: gacha 친화 (Asia) | 매 banner + pity + 매 weekly event | | 매 audience: PC core | 매 premium + 매 expansion + 매 cosmetic | | 매 ethical concern | 매 cosmetic-only, 매 P2W 회피, 매 disclosure 명확 | **기본값**: 매 cosmetic + battle pass + 매 ethical disclosure (매 odds, 매 spend cap). ## 🔗 Graph - 부모: [[F2P-Design]] - 응용: [[Final Fantasy XV- A New Empire]] - Adjacent: [[LTV-Optimization]] ## 🤖 LLM 활용 **언제**: 매 monetization strategy 설계, 매 LTV modeling, 매 offer engine 구축, 매 ethical audit. **언제 X**: 매 pure premium game (매 monetization complexity 의 매 minimal). ## ❌ 안티패턴 - **Pay-to-win**: 매 stat advantage 매 sale — 매 community trust 손실. - **Hidden gacha odds**: 매 disclosure 부재 — 매 China/Korea/EU 규제 위반. - **Aggressive popups**: 매 매 session 마다 5+ offer — 매 churn 가속. - **Whale exclusivity**: 매 mid-tier player 의 매 무력감 — 매 long-term LTV 저하. - **Dark pattern**: 매 timer-pressured 'last chance' bundle — 매 regulatory risk. ## 🧪 검증 / 중복 - Verified (App Annie / Sensor Tower data, GDC monetization talks 2020-2025, EU DMA disclosure rules). - 신뢰도 A. ## 🕓 Changelog | 날짜 | 변경 | |---|---| | 2026-05-08 | Phase 1 | | 2026-05-10 | Manual cleanup — Monetization 의 LTV decomposition + 5-pattern (battle pass, gacha, whale, cohort, dynamic offer) |