Power analysis와 MDE — 실험 시작 전에 표본·기간을 정직하게 잡는 법
A/B 시작 전 "표본 얼마나 모아야?"의 답이 power analysis. 검출력 80%로 검출 가능한 최소 효과(MDE)를 미리 계산해 실험 기간·해석 한도를 명확히 잡는 흐름.
A/B 실험을 시작하기 전 “표본 얼마나 모으면 돼?”라는 질문에 답하지 못하면, 결과 단계에서 “p-value 0.07이라 결론 못 냄”이 흔히 나옵니다. Power analysis는 그 질문에 답하는 표준 도구이고, MDE(Minimum Detectable Effect) 개념이 결정의 핵심입니다. 실험 시작 전 한 번의 계산이 실험 운영의 절반을 정직하게 만듭니다.
마케터가 이 글을 읽어야 하는 이유: 실험 결과 회의에서 “결론 보류”가 자주 나오는 자리는 사실 실험 시작 전의 power analysis 부족이 원인입니다. 검출력·MDE를 미리 계산하면 “이 실험은 +3%p 이상 효과만 검출 가능하다”는 한도를 알고 시작할 수 있습니다.
1. 4개 변수의 관계
A/B 실험의 통계적 결정은 4개 변수가 서로 묶여 있습니다.
| 변수 | 의미 |
|---|---|
| 표본 크기 (그룹당) | |
| 효과 크기 (MDE) | |
| 양측 유의수준 (보통 0.05) | |
| 검출력 (보통 0.80) |
이 4개 중 3개를 정하면 나머지 1개가 결정됩니다.
N과 , 를 정하면 → MDE가 결정 (이만큼 작은 효과까지 검출 가능) , , 를 정하면 → 필요한 N이 결정
마케팅 자리에서 가장 자주 마주치는 건 두 번째 — “이만큼 효과면 의미 있을 것 같으니 표본 얼마나 모을까?”.
2. 표본 크기 공식
이항 비율(전환율) 비교의 표준 공식.
- : baseline 전환율
- : 검출하고자 하는 절대 효과 크기
- (양측 5%)
- (검출력 80%)
예시: baseline 전환율 5%, 효과 1%p (5% → 6%) 검출.
- ,
각 그룹 8,136명, 총 16,272명. 효과 크기를 절반(0.5%p)으로 잡으면 표본은 4배(32,500+).
3. MDE — 표본 거꾸로 풀기
표본이 정해져 있을 때 거꾸로 검출 가능한 최소 효과를 풉니다.
예시: 그룹당 5,000명, baseline 5%.
- MDE
- 약 1.22%p
이 실험은 +1.22%p 이상의 효과만 통계적으로 검출. +1%p 효과는 결과 보류 위험.
| 그룹당 N | MDE (baseline 5%) |
|---|---|
| 1,000 | 2.7%p |
| 5,000 | 1.2%p |
| 10,000 | 0.85%p |
| 50,000 | 0.38%p |
작은 효과를 잡으려면 표본 폭증. 보통 +1%p 이하 효과를 잡으려면 그룹당 1만+ 필수.
4. 코드 한 묶음 — 표본·MDE 계산기
이게 글에 박는 유일한 코드입니다.
import numpy as npfrom scipy import stats
def required_sample_size(p, mde, alpha=0.05, power=0.8): """그룹당 필요한 표본 크기""" z_alpha = stats.norm.ppf(1 - alpha / 2) z_beta = stats.norm.ppf(power) p_avg = p + mde / 2 n = (z_alpha + z_beta) ** 2 * 2 * p_avg * (1 - p_avg) / (mde ** 2) return int(np.ceil(n))
def detectable_effect(n, p, alpha=0.05, power=0.8): """그룹당 N명일 때 검출 가능한 최소 효과""" z_alpha = stats.norm.ppf(1 - alpha / 2) z_beta = stats.norm.ppf(power) return (z_alpha + z_beta) * np.sqrt(2 * p * (1 - p) / n)
# 시나리오 1: baseline 5%, 1%p 효과 검출하려면?print(f"필요 표본: {required_sample_size(0.05, 0.01)}/group")# 8136
# 시나리오 2: 그룹당 5000명일 때 검출 가능 효과는?print(f"MDE: {detectable_effect(5000, 0.05) * 100:.2f}%p")# 1.22
# 시나리오 3: 일일 트래픽 2000명 가정 시 실험 기간daily_traffic = 2000needed = required_sample_size(0.05, 0.01) * 2 # 양 그룹 합계days = needed / daily_trafficprint(f"실험 기간: {days:.0f}일")# 약 8일이 한 묶음이 실험 디자인의 의사결정 도구. 시작 전에 한 번만 돌리면 표본·기간이 정해집니다.
5. 효과 크기 결정의 근거
MDE를 잡는 결정은 통계가 아니라 비즈니스 의미입니다.
5-1. 비즈니스 의미가 있는 최소 효과
“이 실험에서 +0.1%p 효과면 운영적으로 의미 있는가?” → 의미 없으면 검출할 가치도 없음. 의미 있는 최소 효과를 MDE로 잡음.
5-2. 과거 비슷한 실험의 효과 분포
비슷한 실험에서 효과가 보통 +2-5%p였다면 MDE를 +2%p로 잡음. 그보다 작은 효과는 의미 없는 자리.
5-3. 운영적 결정 임계값
실험 결과로 “B안 채택” vs “A안 유지”의 결정 임계값. 임계값 차이 정도를 MDE로.
| 자리 | MDE 결정 근거 |
|---|---|
| 이메일 CTR | +0.5%p (운영 표준) |
| 광고 CVR | +1-2%p (효과 분포) |
| 매출/유저 | +5% 상대 (비즈니스) |
| Onboarding 완료율 | +2-3%p (의사결정) |
6. 실험 기간 결정
표본이 정해지면 일일 트래픽으로 나누면 실험 기간.
은 그룹당. 양 그룹 합쳐 일일 트래픽으로 나눔. 추가 고려:
6-1. 주말 효과
주중·주말 트래픽 패턴이 다르면 한 주 단위로 자르는 게 안전. 7-14일 권장.
6-2. Novelty effect
새 기능·디자인은 처음 며칠 효과가 부풀어짐. 효과 안정화에 1-2주 기다림.
6-3. 시즌성
큰 시즌(블프, 설) 직전·직후는 매출 분포 격변. 평상시 기간으로 한정.
대부분의 실험이 1-3주가 실용적. 1주 미만은 노이즈, 1달+은 비효율.
7. 작은 표본 자리의 대안
일일 트래픽이 작아 표본 8,000명/group이 어렵다면.
7-1. CUPED 분산 축소
CUPED는 사전 데이터로 분산을 깎아 같은 N에서 더 작은 MDE 검출. 분산 30-50% 감소가 흔함.
7-2. 베이지안 A/B
Bayesian A/B는 prior로 정보 보강. 작은 N에서도 합리적 추정.
7-3. 효과 크기 재평가
작은 효과 검출이 비즈니스적 의미 없으면 MDE를 키워 표본 감축.
7-4. 실험 단위 변경
유저 단위 실험이 어려우면 캠페인·세그먼트 단위로 변경해 효과 크기 키움.
| 작은 표본 자리 | 대안 |
|---|---|
| 분산 큼 | CUPED |
| 사전 정보 있음 | Bayesian A/B |
| 효과 잘게 보고 싶음 | Sequential testing |
| 단위 작음 | 실험 단위 확대 |
8. 분기 보고에 박을 표 양식
실험 시작 전 사전 등록 문서에 다음 한 표를 박아둡니다.
| 항목 | 값 |
|---|---|
| 실험 가설 | ”B안이 A안 대비 CVR +2%p 개선” |
| Baseline CVR (사전 측정) | 5.2% |
| MDE | 2.0%p (절대) |
| 양측 | 0.05 |
| 검출력 () | 0.80 |
| 그룹당 필요 표본 | 2,034 |
| 일일 트래픽 (예상) | 1,500/그룹 |
| 실험 기간 | 약 3일 + 안정화 4일 = 7일 |
| 결과 발표 | 실험 종료 즉시 |
이 표가 실험 사전 등록의 표준 양식. 실험 시작 후 결과 보고 임의 조정하지 않는 신뢰성의 기반.
9. 마치며 — 실험의 정직성은 시작 전에 결정
A/B 실험의 운영 신뢰도는 사후 분석이 아니라 시작 전 power analysis에 달려 있습니다. 표본·MDE·기간을 미리 계산하고 사전 등록 문서에 박아두면, 실험 결과 회의가 데이터로 답하는 자리가 됩니다. 일일 트래픽이 부족하면 CUPED·베이지안·실험 단위 변경 같은 대안이 답이 됩니다.
다음 분기에 한 번만 시도해 볼 만한 것은 모든 A/B 실험에 사전 등록 문서를 표준화해 power analysis 표를 의무화하는 흐름입니다. 결과 단계의 “보류” 비율이 한 단계 내려갑니다.
다음에 읽을 글
- CUPED 분산 축소 — 같은 N에서 더 작은 MDE
- Sequential testing — 실험 도중 의사결정
- Bayesian A/B — 작은 N에서 prior 보강
참고
- Cohen (1988), “Statistical Power Analysis for the Behavioral Sciences”: https://www.routledge.com/Statistical-Power-Analysis-for-the-Behavioral-Sciences/Cohen/p/book/9780805802832
- “G*Power”: https://www.psychologie.hhu.de/arbeitsgruppen/allgemeine-psychologie-und-arbeitspsychologie/gpower
- statsmodels (Python power analysis): https://www.statsmodels.org/stable/stats.html#power-and-sample-size-calculations
- Kohavi, Tang & Xu (2020), “Trustworthy Online Controlled Experiments”: https://www.amazon.com/Trustworthy-Online-Controlled-Experiments-Practical/dp/1108724264
- “Sample size in marketing research” (Microsoft): https://www.microsoft.com/en-us/research/group/experimentation-platform-exp/
통계·ML 카테고리의 다른 글
전체 보기 →-
2026·05·10
마케팅 실험 플랫폼 설계 — 사내 A/B 시스템의 5가지 원칙
광고 플랫폼 자체 A/B로는 부족하고 외부 SaaS는 비쌉니다. 사내 마케팅 실험 플랫폼을 설계할 때 깔아야 할 split assignment·exposure log·SRM 검정·sequential safe·메타 표준 5가지 원칙.
-
2026·05·09
Bayesian A/B 테스트 심화 — prior 잡는 법과 HDI 해석
베이지안 A/B는 "p-value < 0.05"가 아니라 "B가 A보다 좋을 확률 0.92"를 줍니다. 그 확률이 정직하려면 prior를 잘 잡아야 하고, HDI를 잘못 읽으면 함정이 옵니다. 마케터 시선에서 prior·posterior·HDI 정리.
-
2026·05·09
Doubly robust estimation — IPW와 outcome 모델의 결합으로 인과 추정 안정화
PSM·IPW는 propensity 모델이 틀리면 무너지고, 회귀는 outcome 모델이 틀리면 무너집니다. doubly robust는 두 모델을 결합해 둘 중 하나만 맞으면 정직한 효과 추정. 마케팅 인과 분석의 안전판.
-
2026·05·09
Heterogeneous treatment effects — 평균 효과 너머의 개인별 효과
A/B 평균 효과 +5%p가 모든 사람에게 같지 않습니다. 일부에게는 +20%p, 일부에게는 -3%p. CATE·uplift forest로 효과의 이질성을 추정해 타겟 마케팅을 정밀화하는 흐름.