무턱대고 AB test만 한다고 능사가 아니다.
양승화 님의 도서 [그로스해킹], 이미 1번 읽은 책이지만 다시 한번 그로스해킹과 AARRR 퍼널 개념을 점검하기 위해 데이 터리 안의 데이터넥스트챌린지 4기가 계기가 되어 다시 읽게 되었습니다.
책을 읽다 보니, 그로스해킹이라는 단어의 의미를 정확히 이해하지 않고 얘기했었더라고요. 이를 저뿐만 아니라 그로스해킹을 처음 공부하는 분들에게 도움이 될 수 있도록 쉽고 명료하게 정리해 보려고 합니다.
#데이터리안 #데밸챌 #데이터넥스트레벨챌린지
이번 글은 실제로 스프린트 형태로 그로스 실험을 하면서, 자주 했던 실수와 이를 해결할 수 있는 대안을 함께 적어보려고 합니다.
AB test를 위해 가설을 세우고, 처치가 되는 독립변수와 영향을 받게 되는 종속변수까지는 잘 정의했었다. 하지만 독립 변수 외에 종속 변수에 영향을 줄 수 있는 외부 요인인 통제 변수는 사실 생각하지도 못했었다. 그냥 무작위로 50:50 샘플링만 되면 되는 거 아닌가라고 생각하며 통제 변수는 크게 고려하지 않았었다.
결과에 영향을 줄 수 있는 통제 변수가 무엇이 있는지, 사전에 고민하는 절차를 실험 프레임워크에 넣고 의식적으로 검토한다면 더 정확한 실험 결과를 얻어낼 수 있었을 것이다.
실험을 시작하고, 일정 시간이 지나면 실험군과 대조군의 총 유입대비 전환율을 비교하고, 이 값이 신뢰할만한지 p value와 observed power 값만 보며 실험을 해석했었다. 하지만 이 실험을 제대로 해석하려면 실험을 시작하고부터 매일 꾸준히 전환율이 차이 났던 것인지, 실험 시작 때는 전환율 차이가 나지 않다가 시간이 지나면서 차이가 벌어진 것인지 등 시간이 변화에 따른 전환율 추이도 확인했어야 했다.
그렇게 해야 실험군의 처치가 전환율을 높이는 맥락이 무엇이었는지 더 자세히 알 수 있었을 것이고, 그 말은 실험 후 인사이트를 더 깊고 넓게 얻을 수 있다는 뜻이 된다. 이 실험의 처치가 그 즉시 사용자의 행동에 영향을 미치는 건지, 실험군의 처치를 경험한 사용자는 며칠간 고민한 후 전환하는 결정을 내릴 수도 있는데, 이런 추이를 보지 않고 결과를 해석하면 그저 이 처치가 대조군보다 전환에 유리하다는 평면적인 인사이트만 얻었을 수 있을 것이다.
앞으로는 일별로 실험군과 대조군의 핵심 지표를 시계열로 지켜봄과 동시에, 실험 기간 동안 최종 유입, 전환 모수를 동시에 지켜볼 수 있도록 대시보드를 세팅해서 더 풍부한 해석을 갖추어야겠다고 생각했다.
팀원들과의 아이템을 선정하기 위해 아이디에이션을 진행 후 실험을 진행했었다. (고백하자면 그 당시에는 실험을 짧은 시간에 많이 해내면 그만큼 얻어지는 레슨도 많을 것이라고 무식하게 생각했다.)
실험안과 대조군의 버튼명을 다르게 표시하고 AB 어떤 안을 더 많이 클릭하는지 AB test 하는 실험이었고 이 당시에는 유입 대비 어떤 버튼을 더 많이 클릭하는지에 따라 버튼명의 매력도를 결정하면 되겠다고 생각했다. 시간이 지난 후 실험 결과를 해석하기 위해 진입 대비, A와 B버튼의 클릭률을 해석하고 있었는데, 문득 "유입 대비 버튼 클릭만 봐야 할게 아니라 페이지 진입 후, 아이템을 얼마나 많이 눌러보는지, 버튼 명에 따라서 최종 전환율과 탐색 패턴에 어떤 영향을 미치는지도 알아봐야 하는 거 아닌가?"라는 생각이 스쳤다.
확인해 보니 A안으로 유입된 사용자는 B안 대비, 아이템 평균 클릭 횟수가 4배가 높았지만 반면 최종 결제 전환율은 B안 보다 소폭 낮았다. 단순히 A안과 B안의 버튼 명을 바꾼 것만으로(두 안은 서로 글자 2개만 달랐다) 사용자의 탐색 패턴이 완전히 달라져 버렸었다.
겉보기에 간단해 보이는 텍스트 변경이, 사용자들의 탐색 패턴을 통째로 바꿔버렸었다. 급하게 이 실험을 진행하는 게 아니라 텍스트를 변경했을 때 사용자가 해당 상품을 받아들이는 맥락이 달라진다는 걸 인지했더라면 가설도 달라졌을 것이고, 모니터링 지표나 가드레일 지표를 선정하며 실험 결과를 더 풍부하게 해석할 수 있는 기반을 미리 만들어두고 혹여나 문제가 생기더라도 원인을 빠르게 파악하고 실험을 종료하고 결과를 정리할 수 있었을 것이다.
AB test 결과를 해석하기 위해 통계 지식과 테크닉이 필요할 때가 있다. 이를테면 A안과 B안의 최종 결제 전환율에 어떤 변화가 있는지 확인하려고 할 때, 실험군과 대조군의 결제 전환율에 큰 차이가 없었다. 이때 실험군의 영향을 평가하기 위해 최종 전환에 걸린 시간을 비교해 보아야겠다는 판단을 했다. 최종 전환에 걸린 평균 시간은 오히려 대조군이 짧았는데, 사실 평균은 극단적인 아웃라이어가 많으면 오염되기 쉬운 대푯값이다. 이를 더 정밀하게 파악하기 위해서는 중앙값, 분산과 표준 편차를 파악해서 대조군의 평균시간이 짧은 게 우연인지, 인과관계인지 파악해야 했었다. 이 당시 나는 통계 지식의 깊이가 얕아서(지금도) 어떤 테크닉이 필요한지는 알았지만 위 지표들이 어떤 의미를 가지는지 사실 정확히 이해하지 못했다.
뿐만 아니라 p value 0.05가 신뢰도 95%라는 사실만 알았지 p value 값이 어떻게 도출된 값인지, 귀무가설은 무엇이며 양측검정과 단측검정은 뭔지 실험에 따라 어떤 검정을 선택해야 하는지 AB test 해석에 필요한 통계적 지식이 충분하지 않았다.
실험을 기획하고 진행하고 세팅하는데 드는 팀원들의 리소스, 결과를 기다리는 시간과 결과의 해석이 다음 실험을 결정하는 프로세스에서 사용되는 시간과 비용은 어마어마하다. 실험을 진행하는 PM으로서 이런 리소스 투자가 유의미하려면 실험 설계와 해석에 필요한 통계적 지식은 탄탄히 갖추어야 한다. 이 투자가 팀의 성장과 나의 성장, 나아가 더 많은 이익을 만드는 게 기여한다는 사실은 확실하니 꼭 통계 지식을 익히자.
내가 다루는 툴에 대한 지식이 짧고 얕으면, 그만큼 좁은 사고의 틀에서 실험을 설계하고 결과를 해석하게 되니 작은 인사이트만 얻을 확률이 높다. 당장 꺾은선, 파이, 바 그래프를 구분 짓는 특징을 이해하고 있어야 데이터 해석에 적합한 그래프를 선택할 수 있는 것처럼, 내가 다루고 있는 툴이 어떤 기능을 지원하는지 온전히 이해하고 있어야 분석 목적에 적합한 올바른 테크닉을 사용할 수 있다.
과일을 사시미칼로 깎는 것보다 과도로 깎는 게 당연히 편리한 것처럼, 아는 것이 많아야 보다 적은 시간을 들여 양질의 인사이트를 발견할 수 있다. 구글 애널리틱스의 퍼널 분석 리포트도 더 아는 사람이 아는 만큼 더 깊게 다룰 수 있다.
특정 데이터 툴을 다루고 있다면 공식 문서를 꼭 읽어 보자. 그리고 꼭 내가 사용하는 툴이 아니더라도 관련있는 주제에 대해서 세계에서 점유율이 가장 높은 서비스의 가이드 문서를 보며 관련 도메인 지식을 쌓자. 아틀라시안(jira, confluence)에서 프로젝트 관리 방법에 대한 양질의 글을 볼 수 있고, Segment 블로그에서 행동 로그 이벤트 규칙과 관리 방법을 학습할 수 있으며 Intercom 블로그에서 고객의 목소리를 수집하고 정량화하여 가장 먼저 대응해야 할 고객의 보이스를 파악하는 방법을 배울 수 있다.
어디선가 보았던 말이 생각난다. "옆에 있는 친구한테 물어보지 말고 앞에 있는 박사에게 물어보세요." 기왕 배운다면 최고에게 배우자.