A/B 테스트에 필요한 샘플 사이즈(표본 크기)와 테스트 기간 구하는 법을 실제 수치로 정리했습니다. 전환율 3%에서 10% 개선을 검출하려면 variation당 몇 명이 필요한지, 실험 후 SRM과 p-value로 결과를 판정하는 순서까지 무료 계산기로 확인할 수 있습니다.

상세페이지의 장바구니 버튼 문구를 바꾸는 A/B 테스트를 시작했습니다. 3일 뒤 대시보드를 열어보니 실험군의 구매 전환율이 대조군보다 15% 높게 나옵니다. 팀은 실험을 종료하고 새 문구를 전체에 적용했습니다. 그런데 한 달 뒤 전환율은 실험 전 수준으로 돌아와 있습니다.
실험 설계나 SDK 연동이 잘못된 것이 아닙니다. 판정 시점이 이른 것입니다. 3일 동안 모인 방문자는 우연히 생긴 차이와 실제 개선을 구분하기에 부족했고, 이 판단은 실험이 끝난 뒤에는 되돌릴 수 없습니다.
결론부터 말하자면, 현재 전환율이 3%이고 상대 개선율 10%를 검출하려면 variation당 약 53,000명이 필요하고, 하루 방문자가 1만 명이면 약 11일이 걸립니다. 계산상 며칠이 나오든 최소 14일은 돌리는 편이 안전합니다. 실험이 끝난 뒤에는 그룹 배정이 의도대로 됐는지(SRM)를 먼저 보고, 그다음에 p-value로 유의성을 판정합니다.
A/B 테스트의 샘플 사이즈(표본 크기, sample size)는 신뢰할 수 있는 결론을 내리기 위해 각 variation에 필요한 최소 방문자 수입니다. 동전을 10번 던져 앞면이 7번 나왔다고 해서 그 동전이 앞면 쪽으로 치우쳐 있다고 말할 수는 없습니다. 7번은 우연으로도 충분히 나올 수 있는 횟수이기 때문입니다.
방문자가 부족한 실험은 두 방향으로 실험 결과를 잘못 해석할 수 있습니다.. 하나는 실제로는 차이가 없는데 있다고 판단하는 경우로, 통계에서 1종 오류라고 부릅니다. 버튼 문구를 바꾼 실험이 3일 만에 15% 개선으로 보였다가 한 달 뒤 원래대로 돌아오는 경우가 여기에 해당합니다. 다른 하나는 그 반대로, 실제로 효과가 있는 변경인데 통계적으로 검출하지 못해 폐기하는 경우이고 이것을 2종 오류라고 합니다.
더 조심해야 하는 쪽은 2종 오류입니다. 잘못 적용한 개선은 지표가 원래대로 돌아오면서 어쨌든 드러나지만, 검출하지 못하고 버린 개선은 유의하지 않음으로 남을 뿐 아무도 다시 확인하지 않습니다.

세 가지 값으로 정해집니다. 현재 전환율, 검출하고 싶은 최소 개선율(MDE), 그리고 통계 기준입니다.
첫 번째는 현재 전환율입니다. 전환율이 낮을수록 같은 비율의 개선을 검출하는 데 더 많은 방문자가 필요합니다. 전환율 10%인 지표와 1%인 지표는 똑같이 10% 개선을 본다고 해도 요구되는 샘플이 크게 다릅니다.
두 번째는 검출하고 싶은 최소 개선율(MDE) 입니다. MDE(Minimum Detectable Effect)는 실험으로 검출하고자 하는 가장 작은 개선율입니다. 세 값 중 샘플 사이즈를 가장 크게 움직이는 변수로, MDE를 절반으로 줄이면 필요한 샘플은 약 4배가 됩니다.

핵클 A/B 테스트 계산기 기준으로, 현재 전환율이 3%일 때 필요한 방문자 수는 이렇습니다. 상대 개선율 20%(3% → 3.6%)를 검출하려면 variation당 약 14,000명, 10%(3% → 3.3%)는 약 53,000명, 5%(3% → 3.15%)는 약 208,000명이 필요합니다. 신뢰수준 95%, 검정력 80%, 양측 z-검정 기준입니다.
기준만 20%에서 5%로 낮췄는데 요구 트래픽은 15배가 됩니다. 그래서 MDE는 "얼마나 작은 개선까지 보고 싶은가"가 아니라 "우리 트래픽으로 얼마까지 볼 수 있는가" 에서 역산해야 합니다.
세 번째는 통계 기준입니다. 신뢰수준 95%는 차이가 없는데 있다고 잘못 판단할 확률(1종 오류)을 5% 이하로 묶는다는 뜻이고, 검정력 80%는 실제로 차이가 있을 때 검출해 낼 확률이 80%라는 뜻입니다. 핵클 A/B 테스트 계산기도 신뢰수준 95%(α=0.05), 검정력 80%(β=0.2), 양측 z-검정(two-proportion z-test)을 기준으로 합니다. 특별한 이유가 없다면 그대로 두면 됩니다.
나눠도 됩니다. 되돌리기 어렵거나 장애 위험이 있는 변경은 90:10, 95:5로 시작하는 편이 안전합니다. 전환율처럼 비율로 보는 지표는 그룹 크기가 달라도 각 그룹의 값을 편향 없이 추정할 수 있습니다.
다만 두 비율의 차이를 판정하는 데 필요한 총 트래픽은 늘어납니다. 차이의 표준오차가 두 그룹 크기에 함께 묶여 있어, 한쪽이 작아지면 다른 쪽이 그만큼을 보상해야 하기 때문입니다.

전환율 3%에서 상대 개선율 10%를 검출하는 경우입니다. 50:50이면 합계 약 106,000명이지만, 90:10은 대조군 262,052명에 실험군 29,117명으로 합계 약 291,000명이 되어 2.7배가 필요합니다. 95:5는 약 551,000명으로 5.2배입니다.
오해하기 쉬운 지점이 있습니다. 노출을 줄인 쪽이 병목일 것 같지만 실제로 커지는 쪽은 대조군입니다. 90:10에서 실험군은 29,117명으로 오히려 균형 실험의 53,210명보다 적고, 대조군이 26만 명까지 불어나면서 전체가 늘어납니다.
그래서 분배를 기울이는 것은 안전을 사는 대신 기간을 지불하는 거래입니다. 하루 1만 명이면 50:50은 약 11일, 90:10은 약 30일입니다. 노출을 줄여야 한다면 기간을 길게 잡거나 MDE를 키워서 맞춰야 합니다.
노출 비율을 도중에 올리는 경우(95:5 → 50:50)에는 구간마다 그룹 구성이 달라, 전체를 단순 합산하면 시기 효과가 그룹 차이로 섞일 수 있습니다. 비율을 확정한 이후 구간만으로 판정하는 편이 안전합니다.
샘플을 채우는 데 걸리는 날수와 최소 2주 중 더 긴 쪽입니다.
필요한 샘플 사이즈를 일평균 방문자 수로 나누면 소요 일수가 나옵니다. variation이 2개이고 각각 53,000명이 필요한데 하루 방문자가 10,000명이라면, 106,000을 10,000으로 나눠 약 11일입니다.
다만 계산상 며칠이 나오든 최소 14일은 확보하는 편이 안전합니다. 주중과 주말의 방문자는 다르게 행동합니다. 월요일부터 수요일까지 모은 데이터로 내린 결론은 주중 방문자에 대한 결론일 뿐입니다. 2주는 요일 효과를 두 번 반복해서 담을 수 있는 최소 단위입니다.
정한 기간을 채우기 전에는 판정하지 않아야 합니다. 중간에 결과를 열어보다가 유의해지는 순간 멈추는 행동(peeking)은 잘못된 판정을 크게 늘립니다. 확인하는 것 자체가 아니라, 그 결과로 조기 종료하는 것이 문제입니다.
핵클 대시보드는 실험 시작 1시간 뒤부터 약 1시간 단위로 결과를 갱신합니다. 이 화면은 데이터가 정상적으로 쌓이고 있는지 점검하는 용도로 보고, 판정은 처음에 정해둔 날짜에 하면 됩니다.
할 수 있습니다. 트래픽이 적다는 것은 작은 개선을 검출할 수 없다는 뜻이지, 실험을 못 한다는 뜻이 아닙니다. 바꿔야 하는 것은 실험 여부가 아니라 실험의 크기입니다.
순서는 역산입니다. 한 달에 variation당 2만 명을 모을 수 있고 현재 전환율이 3%라면, 핵클 A/B 테스트 계산기 기준 검출 가능한 개선율은 약 17%입니다. 이 숫자가 나오면 실험 후보가 좁혀집니다. 버튼 문구 한 줄로 17% 개선을 기대하기는 어렵고, 상세페이지 개편이나 결제 단계 축소처럼 기대 효과가 큰 변경이 남습니다.
지표를 바꾸는 방법도 있습니다. 최종 구매 전환율 대신 장바구니 담기처럼 전환율이 높은 퍼널 상단 지표를 1차 지표로 두면 같은 트래픽으로도 검출이 가능해집니다. 다만 상단 지표가 올랐다고 매출이 따라온다는 보장은 없어서, 최종 전환은 보조 지표로 함께 봐야 합니다.
판정은 두 단계입니다. 먼저 그룹 배정이 의도대로 됐는지 확인하고, 그다음에 전환율 차이가 통계적으로 유의한지 봅니다. 순서를 바꾸면 안 됩니다. 배정이 틀어진 실험의 p-value는 아무리 낮아도 근거가 되지 못합니다.

SRM(Sample Ratio Mismatch, 샘플 비율 불일치)은 각 그룹에 실제로 배정된 샘플 수가 의도한 비율과 크게 다른 현상입니다.
50:50으로 설계한 실험에서 대조군 10,000명, 실험군 9,800명이 들어왔다고 하겠습니다. 카이제곱 적합도 검정 결과 p-value는 0.1552로, 이 정도는 표본 변동으로 설명됩니다. 다음 단계로 넘어가면 됩니다.
분배를 일부러 기울인 실험이라면 기대 비율에 실제 설계 비율을 넣어야 합니다. 90:10으로 설계한 실험에서 90,000명과 9,800명이 관측됐을 때, 기대 비율을 50:50으로 놓고 검사하면 p-value가 0에 가깝게 나와 불일치로 오판합니다. 기대 비율을 0.9와 0.1로 넣으면 p-value는 0.0575로 정상 범위입니다.
실험군이 9,400명이었다면 p-value는 0.0001 미만이 됩니다. 이때는 해석 전에 원인을 찾아야 합니다. SDK 연동 위치, 특정 플랫폼의 이벤트 누락, 봇 트래픽 필터링이 흔한 원인입니다. SRM 판정 기준은 p-value 0.01입니다.
대조군 10,000명 중 300명 전환(3.00%), 실험군 10,000명 중 360명 전환(3.60%)인 실험입니다. 상대 개선율 20%, 양측 z-검정 p-value는 0.0175로 0.05보다 작아 통계적으로 유의한 차이입니다.
실험군 전환이 340명(3.40%)이었다면 어떨까요? 상대 개선율 13%로 여전히 눈에 띄지만 p-value는 0.108이라 통계적으로 유의하지 않습니다. 전환율이 올라 보이는 것과, 그 차이가 우연이 아니라고 말할 수 있는 것은 다른 문제입니다.
p-value(유의확률, p값)는 두 그룹에 실제로는 차이가 없다고 가정했을 때 관측된 것만큼의 차이가 우연히 나올 확률입니다. 신뢰수준 95% 기준으로 0.05 미만이면 유의하고, 0.05 이상이면 유의하지 않습니다.
두 번째를 오해하는 경우가 많습니다. 유의하지 않다는 것은 차이가 없다는 증명이 아닙니다. 지금 모인 데이터로는 두 안을 구분할 수 없다는 뜻입니다.
가능성은 두 가지입니다. 실제로 차이가 없었거나, 차이는 있었지만 샘플이 그것을 검출할 만큼 모이지 않았습니다. 어느 쪽인지는 MDE 계산기로 갈라낼 수 있습니다.
검출 가능한 최소 개선율이 20%인데 관측된 차이가 13%였다면, 이 실험은 애초에 그 차이를 잡아낼 수 없는 설계였습니다. 결론은 "효과가 없다"가 아니라 "이 트래픽으로는 판단할 수 없다"입니다. 반대로 검출 가능한 개선율이 5%인데 차이가 1%에 그쳤다면, 두 안이 비슷하다는 쪽에 무게가 실립니다. 이것도 결과이고, 다음 실험에서 더 큰 변화를 시도할 근거가 됩니다.

지금까지의 계산을 직접 할 필요는 없습니다. 핵클이 무료로 공개한 [A/B 테스트 계산기]에는 다섯 개의 도구가 있고, 로그인 없이 바로 쓸 수 있습니다. 샘플 사이즈·기간·MDE·유의성은 신뢰수준 95%, 검정력 80%, 양측 z-검정 기준이고, SRM만 카이제곱 적합도 검정에 유의수준 0.01을 씁니다.
실험을 시작하기 전에 쓰는 도구가 세 개입니다.
실험이 끝난 뒤에 쓰는 도구가 두 개입니다.

A/B 테스트 샘플 사이즈는 어떻게 구하나요?
현재 전환율과 검출하고 싶은 상대 개선율(MDE)을 정한 뒤 두 비율 비교용 양측 z-검정 공식에 넣습니다. 신뢰수준 95%와 검정력 80%는 업계 표준값을 그대로 쓰면 됩니다. 핵클 A/B 테스트 계산기에 두 값만 입력하면 variation당 필요 방문자 수가 바로 나옵니다.
표본 크기와 샘플 사이즈는 같은 말인가요?
같은 말입니다. 영어 sample size를 통계학에서는 표본 크기로, 실무에서는 샘플 사이즈로 부릅니다. 유의확률과 p값도 p-value를 가리키는 같은 말입니다.
A/B 테스트에 최소 몇 명이 필요한가요?
모든 실험에 통하는 고정된 최소 인원은 없습니다. 현재 전환율과 검출하려는 개선율에 따라 달라집니다. 전환율 3%에서 상대 개선율 20%를 검출하려면 variation당 약 14,000명, 10%를 검출하려면 약 53,000명이 필요합니다.
전환율이 낮으면 샘플이 더 많이 필요한가요?
그렇습니다. 전환이 드물게 일어날수록 관측되는 전환 수의 변동이 상대적으로 커지기 때문에, 같은 비율의 개선을 검출하는 데 더 많은 방문자가 필요합니다.
MDE는 어떻게 정해야 하나요?
보고 싶은 값이 아니라 확보 가능한 트래픽에서 역산합니다. MDE를 절반으로 줄이면 필요한 샘플은 약 4배가 되므로, 욕심을 내면 시작할 수 없는 숫자가 나옵니다. MDE 계산기에 variation당 모을 수 있는 방문자 수를 넣으면 현실적인 개선율을 먼저 확인할 수 있습니다.
실험군과 대조군의 비율을 다르게 해도 되나요?
됩니다. 되돌리기 어렵거나 위험이 큰 변경은 90:10, 95:5처럼 노출을 줄여 시작하는 경우가 많습니다. 비율 지표는 그룹 크기가 달라도 각 그룹의 값을 편향 없이 추정합니다. 다만 총 트래픽은 늘어납니다. 전환율 3%에서 상대 개선율 10% 기준으로 50:50은 합계 약 106,000명, 90:10은 약 291,000명, 95:5는 약 551,000명이 필요합니다.
90:10으로 실험하면 실험군을 더 많이 모아야 하나요?
반대입니다. 늘어나는 쪽은 대조군입니다. 전환율 3%에서 상대 개선율 10%를 검출할 때 90:10이면 실험군은 29,117명으로 균형 실험의 53,210명보다 적고, 대조군이 262,052명까지 커집니다.
매출이나 객단가로도 이 방식으로 계산할 수 있나요?
할 수 없습니다. 두 비율 z-검정은 전환 여부처럼 예·아니오로 나뉘는 지표를 전제합니다. 1인당 매출(ARPU)이나 객단가, 체류 시간처럼 값이 연속적인 지표는 분산 구조가 달라 다른 검정을 써야 합니다.
p-value가 0.05보다 크면 실험이 실패한 건가요?
아닙니다. 차이가 없다는 증명이 아니라, 지금 모인 데이터로는 구분할 수 없다는 뜻입니다. 확보한 샘플로 검출 가능했던 최소 개선율을 확인하면, 효과가 없었던 것인지 샘플이 모자랐던 것인지 갈라낼 수 있습니다.
전환율은 올랐는데 통계적으로 유의하지 않다고 나옵니다. 왜 그런가요?
관측된 차이가 그 샘플 크기로 검출할 수 있는 수준보다 작기 때문입니다. 10,000명 중 300명 대 340명 전환이면 상대 개선율 13%로 눈에 띄지만 p-value는 0.108로 유의하지 않습니다. 같은 조건에서 340명이 360명이 되면 p-value는 0.0175로 유의해집니다.
A/B 테스트 도중에 결과를 봐도 되나요?
확인하는 것 자체는 문제가 없습니다. 문제는 그 결과를 근거로 실험을 조기 종료하는 것입니다. 유의해지는 순간 멈추는 행동(peeking)은 차이가 없는데 있다고 판단할 확률을 크게 높입니다.
두 그룹의 방문자 수가 다르게 나왔습니다. 결과가 틀린 건가요?
어느 정도 차이는 정상입니다. 50:50 설계에서 10,000명과 9,800명이면 카이제곱 적합도 검정 p-value가 0.1552로 표본 변동 범위입니다. p-value가 0.01보다 작다면 샘플 비율 불일치(SRM)로 보고, 전환율을 비교하기 전에 랜덤 배정과 이벤트 수집부터 점검해야 합니다.
3일 만에 나온 15% 개선이 사라진 이유는 실험이 틀려서가 아니라, 판정 기준이 시작 전에 정해져 있지 않았기 때문입니다. 실험 문서에 아래 다섯 가지가 적혀 있으면 같은 일이 반복되지 않습니다.
숫자를 정했다면 다음은 실험을 돌리는 단계입니다. [핵클 A/B 테스트]는 SDK 연동 한 번으로 실험을 시작하고, 빈도주의 분석(p-value, 신뢰구간)과 베이지안 분석(가장 우수할 확률, 대조군 대비 우수할 확률)을 대시보드에서 선택해 확인할 수 있습니다.