함수랑 학예회에서 “A/B 테스트를 비교에서 검증으로 바꾸기”라는 주제로 발표했습니다.
처음에는 발표를 준비하면서 “내가 했던 A/B 테스트를 소개하면 되겠지” 정도로 생각했습니다. 그런데 스크립트를 정리하다 보니, 이 발표에서 정말 말하고 싶었던 건 특정 실험의 성공 사례가 아니었습니다. 오히려 그 실험이 끝난 뒤에 생긴 찝찝함에 가까웠습니다.
숫자는 올랐습니다. 참여율도, 스크롤 유지율도, 구매 페이지 진입률도 좋아졌습니다. 그런데 그 숫자를 보고 바로 “성공했다”고 말해도 되는지 확신이 없었습니다.
- 정말 사용자가 더 좋아해서 오른 걸까?
- 우연히 구매 의향이 높은 사람들이 실험군에 더 많이 들어간 건 아닐까?
- 이번에 관측한 일부 사용자 데이터로 전체 사용자에게도 효과가 있다고 말할 수 있을까?
- 이 실험은 2주 동안 했는데, 그 기간은 충분했던 걸까?
이 질문들에 답하지 못하면서 통계학을 공부하게 됐습니다.
왜 통계학이었나
저는 원래 “만드는 일”에 관심이 많았습니다. 디자인을 전공했고, 개발자가 된 뒤에도 결국 제가 좋아하는 건 코드를 쓰는 행위 자체라기보다는 어떤 제품을 만드는 일이었습니다.
회사에서 일하면서도 계속 비슷한 장면을 봤습니다. 누군가는 “이 기능이 있으면 좋을 것 같다”고 말했고, 누군가는 “이 UI가 더 전환이 잘 될 것 같다”고 말했습니다. 저도 그런 의견을 냈습니다. 그런데 막상 출시해보면 기대만큼 반응이 없거나, 오히려 사용자가 불편해하는 경우도 있었습니다.
그때부터 이런 생각을 자주 했습니다.
내 생각은 별로 중요하지 않을 수 있다. 중요한 건 사용자가 실제로 어떻게 반응했는지다.
그런데 “실제 유저의 데이터를 보자”는 말도 생각보다 애매했습니다. 데이터를 본다는 건 단순히 대시보드에서 숫자가 올랐는지 내려갔는지 확인하는 일이 아니었습니다. 일부 사용자에게서 관측한 결과를 바탕으로, 전체 사용자에게도 같은 효과가 있을지 판단하는 일이었습니다.
그 지점에서 통계학이 필요했습니다. 통계학은 결국 일부 데이터를 보고 전체를 추정하는 방법을 다루는 학문이기 때문입니다.
A/B 테스트도 일부 데이터로 전체를 추정하는 일이다
A/B 테스트는 출구조사와 비슷합니다.
선거 출구조사는 모든 유권자에게 묻지 않습니다. 투표를 마치고 나온 일부 사람들에게 누구를 뽑았는지 물어보고, 그 표본을 바탕으로 전체 결과를 예측합니다. 물론 표본에 따라 오차가 생길 수 있습니다. 그래서 출구조사에는 오차 범위가 따라옵니다.
A/B 테스트도 마찬가지입니다.
우리가 테스트에서 보는 건 전체 사용자의 진짜 반응이 아닙니다. 테스트 기간 동안 웹사이트에 들어온 일부 사용자의 행동입니다. 그 일부 사용자를 보고 “전체 사용자에게도 이 개편이 효과가 있을까?”를 추정합니다.
그래서 단순히 이렇게 보는 건 부족합니다.
A 전환율 = 5.0%
B 전환율 = 5.6%
B - A = 0.6%p
숫자만 보면 B가 좋아 보입니다. 하지만 이 차이가 정말 의미 있는 차이인지, 아니면 우연히 나온 차이인지 판단해야 합니다.
숫자가 올랐다는 것과 검증됐다는 것은 다르다
제가 처음 했던 A/B 테스트에서는 개편 전 페이지와 개편 후 페이지를 나누고, GA4로 참여율, 스크롤 유지율, 구매 페이지 진입률을 봤습니다. 테스트 기간도 가격 정책의 영향을 줄이기 위해 2주로 잡았습니다.
당시에는 나름 신경 써서 설계했다고 생각했습니다.
- Next.js 미들웨어에서 사용자를 5:5로 분리했습니다.
- 최대한 많은 뷰가 나오는 페이지를 골랐습니다.
- 가격 변동 주기를 고려해 테스트 기간을 정했습니다.
하지만 나중에 돌아보니 빠져 있던 질문이 있었습니다.
이 차이를 성공이라고 판단할 기준은 무엇인가?
이 질문에 답하려면 가설검정이 필요합니다.
A/B 테스트에서는 보통 다음처럼 가설을 세울 수 있습니다.
귀무가설: 개편 전/후 페이지의 구매 전환율은 같다.
대립가설: 개편 후 페이지의 구매 전환율이 더 높다.
여기서 중요한 건 “개편 후 페이지가 더 좋아 보인다”가 아니라, “전환율이 같다는 가정으로는 이번 결과를 설명하기 어렵다”고 말할 수 있어야 한다는 점입니다.
p-value와 유의수준은 무엇을 판단하기 위한 값인가
가설검정에서는 유의수준과 p-value를 비교합니다.
유의수준은 테스트의 기준을 얼마나 엄격하게 잡을지 정하는 값입니다. 보통 5%를 많이 사용합니다. A/B 테스트 맥락에서는 “실제로는 효과가 없는데 효과가 있다고 잘못 판단하는 일을 어느 정도까지 허용할 것인가”에 가깝습니다.
p-value는 이번에 관측한 결과가 우연히도 나올 수 있는 결과인지 표현하는 값입니다.
예를 들어 기존 페이지와 개편 페이지의 전환율이 실제로는 같다고 가정해보겠습니다. 그런데 실험 결과에서는 개편 후 페이지가 0.6%p 더 높게 나왔습니다. 이 정도 차이가 우연히도 꽤 자주 나올 수 있다면, 개편이 효과 있다고 말하기 어렵습니다. 반대로 이 정도 차이가 우연히 나오기 어려운 드문 결과라면, 개편이 영향을 줬다고 볼 근거가 생깁니다.
p-value < 유의수준
=> 귀무가설을 기각한다
=> 개편 후 페이지가 전환율을 높였다고 볼 근거가 있다
p-value >= 유의수준
=> 귀무가설을 기각하지 못한다
=> 효과가 있다고 말하기에는 근거가 부족하다
이때 중요한 표현은 “효과가 없다”가 아니라 “효과가 있다고 말할 근거가 부족하다”입니다. 이 차이를 구분하는 것도 실무에서 꽤 중요하다고 느꼈습니다.
테스트 기간도 감으로 정하면 안 된다
A/B 테스트를 하다 보면 기간을 먼저 정하고 싶어집니다.
“일단 2주 돌려보죠.”
저도 그렇게 했습니다. 당시에는 가격 정책 주기가 2주였기 때문에 나름 합리적인 결정이라고 생각했습니다. 하지만 통계학을 공부하고 나니, 기간보다 먼저 봐야 할 것은 표본수였습니다.
표본수를 정하려면 보통 다음 값들이 필요합니다.
- 기존 전환율
- 유의수준
- 검정력
- 최소 감지 가능 효과, MDE
여기서 MDE는 “이 정도 개선은 되어야 의미 있는 개선으로 보겠다”는 기준입니다. 아주 작은 차이까지 감지하려면 훨씬 많은 표본이 필요합니다. 반대로 큰 차이만 감지해도 된다면 필요한 표본수는 줄어듭니다.
즉 테스트 기간은 감으로 정하는 게 아니라, 필요한 표본수를 먼저 계산하고 현재 트래픽을 기준으로 역산해야 합니다.
필요 테스트 기간 = 필요한 총 표본수 / 일평균 실험 대상 트래픽
이 관점으로 다시 보니, 제가 했던 테스트도 다르게 설계할 수 있었습니다. 목표로 하는 개선 폭을 정하고, 필요한 표본수를 계산한 뒤, 실제 트래픽 기준으로 테스트 기간을 잡았다면 더 명확한 기준으로 실험을 운영할 수 있었을 것입니다.
그래서 A/B 테스트는 어떻게 달라져야 했을까
통계학을 공부한 뒤, 제가 이전에 했던 A/B 테스트를 다시 설계한다면 다음 세 가지를 꼭 포함했을 것 같습니다.
첫째, 명확한 가설을 세웁니다.
귀무가설: 개편 전/후 페이지의 구매 전환율은 같다.
대립가설: 개편 후 상세페이지의 구매 전환율이 더 높다.
둘째, 성공 판단 기준을 미리 정합니다.
단순히 전환율이 올랐는지가 아니라, 유의수준과 p-value를 기준으로 우연이라고 보기 어려운 차이인지 판단합니다.
셋째, 최소 표본수와 테스트 기간을 미리 계산합니다.
기존 전환율, 유의수준, 검정력, MDE를 바탕으로 필요한 표본수를 계산하고, 실제 트래픽으로 기간을 역산합니다.
이렇게 하면 A/B 테스트는 “A와 B를 비교해봤더니 B가 더 높았다”에서 끝나지 않습니다.
“우리가 정한 기준에서 B가 더 낫다고 판단할 근거가 충분한가?”까지 갈 수 있습니다.
비교에서 검증으로
이번 발표를 준비하면서 A/B 테스트를 보는 관점이 조금 바뀌었습니다.
예전에는 A/B 테스트를 두 화면의 성과를 비교하는 일로 생각했습니다. 지금은 조금 다르게 봅니다. A/B 테스트는 내가 만든 변화가 실제로 사용자 행동에 영향을 줬다고 말할 수 있는지 검증하는 과정에 가깝습니다.
그래서 중요한 질문도 바뀝니다.
전: B가 A보다 높았나?
후: B가 A보다 높다고 판단할 충분한 근거가 있나?
이 차이가 작아 보이지만, 실무에서는 꽤 큽니다. 전자는 숫자를 보는 일이고, 후자는 의사결정의 근거를 만드는 일입니다.
저는 앞으로 제품을 만들 때 이 관점을 더 자주 떠올리려고 합니다. 내 생각이 맞는지 증명하려는 게 아니라, 사용자의 실제 반응을 더 정확하게 이해하기 위해서요.
발표자료
아래에서 함수랑 학예회 발표자료 PDF를 확인할 수 있습니다.
