"매 0.12% 매 spender 가 매 5080% revenue 를 만든다 — 매 product design 의 매 그들 위주 의 X". 매 F2P / gacha / casino 매 long-tail revenue distribution 의 매 결과 — 매 whale isolation, retention loop, social pressure mechanic 의 매 예측 가능한 pattern. 매 2026 매 regulatory scrutiny (EU loot box ban, JP gacha probability disclosure) 매 강화 중.
매 핵심
매 Spender Pyramid
Minnow (~80% of payers): $1-20/mo, conversion focus.
Dolphin (~15%): $20-100/mo, mid-funnel retention.
Whale (~5%): $100-1,000/mo.
Super Whale / Krill (<1%): $1,000+/mo, often $10K+/year — 매 여기 가 매 revenue 의 lion share.
매 ARPPU vs ARPDAU 매 split 매 critical metric.
매 Hunting Mechanics
Limited-time banner: FOMO via 14-day rotation, rate-up.
Pity ceiling: 매 guaranteed pull at N attempts (Genshin: 90, HSR: 80) — whale 가 매 "investment protected" 느낌.
Power creep: 매 신규 unit 매 기존 의 outclass — re-pull pressure.
Dupe / Constellation system: same character N copies for max power.
VIP tier: spend threshold 별 cosmetic + perk unlock.
// 매 진짜 working — Genshin-style 5-star pity simulator
typePullResult="5*"|"4*"|"3*";constbaseRate5=0.006;constsoftPityStart=74;consthardPity=90;functionpull(state:{count: number}):PullResult{state.count+=1;letrate=baseRate5;if(state.count>=softPityStart){rate+=(state.count-softPityStart+1)*0.06;}if(state.count>=hardPity||Math.random()<rate){state.count=0;return"5*";}if(Math.random()<0.051)return"4*";return"3*";}
Whale segmentation (LTV bucket)
# 매 simple cohort segmentation — production 에서 매 ML model 로 교체importpandasaspddefsegment_payer(monthly_spend_usd:float)->str:ifmonthly_spend_usd>=1000:return"super_whale"ifmonthly_spend_usd>=100:return"whale"ifmonthly_spend_usd>=20:return"dolphin"ifmonthly_spend_usd>0:return"minnow"return"f2p"defrevenue_concentration(df:pd.DataFrame)->dict:df["segment"]=df["monthly_spend"].map(segment_payer)total=df["monthly_spend"].sum()returndf.groupby("segment")["monthly_spend"].sum().div(total).to_dict()
Dynamic bundle pricing
// LTV-based offer — whale 에게 매 high-anchor bundle, minnow 에게 매 starter
functionpickOffer(player:{ltv: number;lastPurchase: Date|null}){constdaysSince=player.lastPurchase?(Date.now()-player.lastPurchase.getTime())/86_400_000
: Infinity;if(player.ltv>5000)return{sku:"whale_premium_99_99",priceUsd: 99.99};if(player.ltv>500)return{sku:"dolphin_29_99",priceUsd: 29.99};if(daysSince>7)return{sku:"comeback_4_99",priceUsd: 4.99};return{sku:"starter_0_99",priceUsd: 0.99};}
// 매 self-imposed limit — EU UK regulation 의 매 권장
constSPEND_SOFT_CAP=200;// monthly USD
functioncheckSpendCap(playerId: string,amount: number,monthlyTotal: number){if(monthlyTotal+amount>SPEND_SOFT_CAP){return{allow: true,warn:"monthly cap exceeded — confirm?",cooloff: 60};}return{allow: true};}
Whale churn early warning
-- 매 7-day spend drop > 70% 매 whale 에게 매 retention team intervention trigger
SELECTplayer_id,SUM(CASEWHENts>NOW()-INTERVAL'7 day'THENamountEND)ASrecent,SUM(CASEWHENtsBETWEENNOW()-INTERVAL'14 day'ANDNOW()-INTERVAL'7 day'THENamountEND)ASprevFROMpurchasesWHEREplayer_idIN(SELECTplayer_idFROMwhale_segment)GROUPBYplayer_idHAVINGrecent<prev*0.3;
매 결정 기준
상황
Approach
Casual indie F2P
Cosmetic only, battle pass, no gacha
Mid-core gacha
Pity 90, rate disclosure, constellation 6 max
Whale-driven MMO
VIP tier + auction house, but disclosed odds
Western market (regulation)
Loot box → direct purchase shift
Korean / Chinese / JP market
Gacha allowed, regulatory disclosure mandatory
기본값: Battle pass + cosmetic + bounded pity. 매 unbounded P2W 의 매 long-term reputation cost.
언제: F2P revenue model 분석, gacha probability simulation, LTV segmentation, regulatory compliance audit.
언제 X: Premium / one-time purchase game (steam-style buy-to-play), subscription SaaS — 매 다른 LTV curve.
❌ 안티패턴
No pity ceiling: 매 unbounded gacha — whale rage-quit risk + regulation 의 magnet.
Hidden rates: 매 JP/CN 매 illegal, 매 EU 매 점점 banned.
Power creep without sidegrade: whale fatigue, churn cliff.