멈춰야 할 때를 아는 실험 : 시퀀셜 A/B 테스트 도입

2026-08-19

안녕하세요, 에이블리 데이터 분석가 정원혁입니다.

에이블리 서비스 뒤편에서는 매일 수많은 A/B 테스트가 진행되고 있습니다.
유저에게 전달되는 추천 알고리즘부터 UI/UX, 광고까지 ···. 에이블리 앱 상의 모든 변화는 직관이 아닌 데이터로 검증된 확신을 기반으로 만들어집니다. 가설을 세우고, 실험하고, 데이터를 통해 검증하며 더 나은 변화를 만들어가는 것이 에이블리의 일하는 방식이기 때문입니다.

하지만 수많은 실험이 항상 기대했던 결과로 이어지는 것은 아닙니다. 예상과 달리 새로운 피처가 서비스의 핵심 지표를 떨어뜨리는 부작용을 낳기도 하는데요. 그렇기에 데이터 분석가에게는 실험의 성공을 정확하게 판단하는 것만큼이나, 실험 과정에서 발생하는 예상치 못한 위험 신호를 빠르게 발견하고 대응하는 것 역시 중요한 과제입니다.

그렇다면 실험 결과를 충분히 신뢰할 수 있을 때까지 기다리면서도, 서비스에 악영향을 주는 실험은 어떻게 더 빠르게 발견하고 중단할 수 있을까요? 이번 글에서는 이 질문에 답하기 위해 에이블리 데이터 분석 챕터가 시퀀셜 A/B 테스트(Sequential A/B Test)를 구축하며 고민한 문제와 그 해결 과정을 공유하고자 합니다.

1. 문제를 알면서도 멈추지 못했던 이유 - 기존 실험 구조의 딜레마

실험 시 고려해야 할 지표에 실험의 성공 여부를 판단하는 ‘목표 지표’만 있는 것은 아닙니다. 목표 지표를 달성하더라도 절대 훼손해선 안 되는 가드레일 지표가 존재하며, 에이블리는 구매전환율 등과 같은 핵심 지표를 주요 가드레일 지표로 관리하고 있습니다.

기존 실험 방식의 문제는, 실험 초반에 가드레일 지표가 하락하더라도 정해진 기간 동안은 실험을 지속해야 했다는 것이었습니다. 데이터가 충분치 않은 실험 초반의 하락이 피처의 문제인지, 아니면 일시적인 우연인지를 판단할 객관적인 통계 기준이 없었기 때문입니다. 예를 들어, 새로운 피처를 배포한 다음 날부터 구매전환율이 조금씩 하락하기 시작했다고 가정해 볼까요? 담당자는 이상하단 점을 감지하지만, "우연히 떨어진 것이 아닐까? 조금 더 데이터를 모아봐야 하지 않을까?"라는 불확실성 때문에 함부로 실험을 중단할 수 없었습니다. 결국 정해진 실험 기간을 끝까지 채워야만 했고, 그 일주일 동안 비즈니스 손실은 누적되었습니다. 문제를 인지하고 있으면서도, 멈춰야 한다는 통계적 근거가 없어 실험을 중단하지 못하는 구조였던 것이죠.

이 지점에서 우리의 첫 번째 과제가 명확해졌습니다.

"객관적인 근거를 바탕으로 실험 초반 이상 징후를 빠르게 포착하고, 필요 시 실험을 중단할 수 있는 체계를 만드는 것.”

2. 자주 볼수록 커지는 위험 - 피킹(Peeking)의 함정

실험 기간이 끝날 때까지 기다리는 것이 문제라면, 매일 아침 실험 결과를 확인하고 이상 징후가 보이는 즉시 실험을 멈추면 되지 않을까요? 비즈니스 손실을 줄이기 위해 매일 지표를 살피고 빠르게 대응하는 식으로요.

하지만 이 방법에는 통계학적 함정이 숨어 있습니다. 데이터 분석 분야에서 흔히 피킹(Peeking)이라 부르는 현상인데요. 지표를 한 번 확인할 때는 실제로 문제가 없음에도 우연한 소폭 하락을 ‘문제’로 잘못 판단할 확률(오탐)을 보통 5%로 제한합니다. 하지만 결과를 자주 확인할수록 오탐의 가능성도 함께 증가하면서, 잘못된 판단을 내릴 가능성도 점점 커집니다. 결국 비즈니스를 지키기 위해 지표를 자주 들여다보는 행동이, 역설적으로 아무 문제가 없는 실험을 잘못 중단시키는 또 다른 위험을 만들 수 있다는 것이죠.

그래서 에이블리 데이터 분석 챕터는 서로 정반대 방향의 두 가지 문제를 해결해야 했습니다. 즉, 너무 늦지도, 너무 성급하지도 않게 이 둘 사이의 균형점을 찾는 것이 이번 프로젝트의 핵심 과제였습니다.

3. 피킹의 함정을 벗어나는 법 - 알파 소진 함수(Alpha Spending Function)

그렇다면 피킹 문제는 어떻게 해결할 수 있을까요?

문제 해결의 핵심은 허용 오탐률 5%를 하나의 '예산'으로 바라보는 것입니다. 통계학에서는 이를 알파 소진 함수(Alpha Spending Function)라고 부르는데요. 전체 예산이 α = 5%(0.05)라면, 이 예산을 미리 정해둔 중간 결과 확인 시점마다 나누어 사용함으로써 여러 번 결과를 확인하더라도 실험 전체의 오탐률을 5% 수준으로 통제하는 원리입니다. 흥미롭게도 이 방법은 신약 임상시험에서 시작되었는데요. 임상시험에서는 환자의 안전을 위해 실험이 끝나기 전에도 중간 결과를 여러 차례 확인해야 하지만, 동시에 위양성(False Positive), 즉 실제로는 효과가 없는데 효과가 있다고 잘못 판단하는 오류 역시 엄격하게 통제해야 합니다. 중간중간 결과를 확인하면서도 통계적 엄밀함은 유지해야 하는 상황은 우리가 가드레일 지표를 모니터링하며 마주한 문제와도 동일한 구조라고 할 수 있습니다.

알파 소진 함수에는 한 가지 중요한 원칙이 있습니다. 실험 초반일수록 예산 (허용 오탐률 5%)을 아껴 써야 한다는 점인데요. 실험 초반에는 데이터가 충분하지 않아 우연에 의해 극단적인 결과가 나타날 가능성이 높습니다. 따라서 초기 확인 시점에서는 강력한 신호만 실험 중단으로 이어질 수 있도록 매우 엄격한 기준을 적용합니다. 반대로 데이터가 충분히 누적된 후반부에는 판단의 신뢰도가 높아지므로 기준을 점차 완화할 수 있습니다.

물론 이러한 설계가 제대로 작동하기 위해서는 반드시 지켜야 할 전제가 있습니다. 데이터를 보기 전에 실험 결과를 확인할 시점과 각 시점의 판단 기준을 미리 확정해 두어야 한다는 것입니다. 만약 결과를 확인한 뒤 “이번에는 기준을 조금 완화해 볼까?”라며 판단 기준을 바꾼다면, 오탐률을 5%로 통제하는 것이 무의미해집니다. 기대한 결과가 나오지 않을수록 기준을 완화하고 싶은 유혹이 있기 마련이고, 이러한 조정이 반복되면 실제 오탐률은 처음 설계한 수준을 자연스럽게 넘어설 수밖에 없기 때문이죠. 결국 알파 소진 함수는 데이터를 확인하기 전에 정한 원칙을 실험이 끝날 때까지 일관되게 지키기 위한 규칙이라고 볼 수 있습니다.

4. 개입은 빠르게, 판단은 정확하게 - 세 번의 데이터 확인 시점

그렇다면 에이블리 데이터 분석 챕터는 이 규칙을 실제 실험 모니터링 체계에 어떻게 녹여냈을까요?

에이블리는 실험 시작 시점을 기준으로 세 번의 데이터 확인 시점을 미리 고정해 두었습니다. 그리고 허용 오탐률 5%라는 예산을 데이터가 충분하지 않은 초반에는 더 엄격하게, 데이터가 쌓이는 후반으로 갈수록 조금씩 완화하는 방식으로 배분했습니다.

세 시점의 p-value 기준값을 합산하면 0.051(5.1%)로 5%를 살짝 넘어서는 것처럼 보일 수 있습니다. 하지만 세 번의 확인이 모두 동일하게 누적되는 데이터를 기반으로 진행되기 때문에 각 시점의 결과는 서로 독립적이지 않습니다. 이러한 상관관계를 고려하면 실제 실험 전체의 오탐률은 5% 이내로 통제됩니다.

물론 각 시점 간의 상관관계까지 수학적으로 계산해 예산 배분을 더욱 정교하게 최적화할 수도 있었습니다. 하지만 시퀀셜 A/B 테스트를 처음 도입하는 단계에서 그 정도의 복잡성은 오버 엔지니어링이라고 판단했는데요. 완벽하지만 복잡한 첫 설계보다는, 실험에 참여하는 에이블리 구성원 누구나 직관적으로 이해하고 신뢰할 수 있는 설계가 더 중요하다고 생각했기 때문입니다. 그래서 우선 누구나 이해할 수 있는 명확한 정책으로 빠르게 시작하고, 운영 과정에서 얻는 피드백을 바탕으로 점진적으로 고도화하는 방향을 택했습니다. 그리고 처음 세운 원칙대로, 데이터 확인 시점과 판단 기준은 코드 레벨에서 엄격하게 고정해 두었습니다. 실험이 진행되는 도중 누군가의 주관적인 판단에 따라 기준이 임의로 조정되는 가능성 자체를 차단한 것이죠.

이렇게 데이터 확인 시점을 미리 고정해 두자 안고 있던 두 가지 문제가 해결되었습니다.

  • 문제 1. 리스크를 인지하고도 중단하지 못하는 구조 (개입의 지연) : 정해진 실험 기간을 무작정 기다릴 필요 없이, 배포 후 24시간이 지난 1일 차부터 기준에 해당하는 하락 신호가 감지되면 즉시 알림을 받아, 빠르게 실험을 홀딩할 수 있게 되었습니다.
  • 문제 2. 기준 없이 자주 실험 결과를 들여다보며 발생하는 오탐 (부정확한 개입) : 결과 확인 시점을 세 번으로 제한하고, 미리 정해진 허용 오탐률 예산 내에서만 실험 결과를 판단하도록 했습니다.

5. 모니터링의 자동화

기준을 세웠다면 이 기준이 사람의 개입 없이 일관되게 작동하도록 시스템화하는 과정이 필요했습니다. 에이블리 데이터 분석 챕터는 이를 주기적으로 실행되는 배치(Batch) 작업으로 자동화했습니다. 배치 작업이 실행될 때마다 데이터 확인 시점(24h / 72h / 168h)에 도달한 실험을 자동으로 추려 가드레일 지표를 평가하고, 기준을 넘어서는 하락 신호가 감지되면, 해당 실험의 담당자를 멘션해 즉시 알림을 발송하도록 설계했습니다.

여기서 담당자 멘션은 작지만 중요한 설계 중 하나였습니다. 알림이 채널의 여러 메시지 속에 묻히지 않고, "당신의 실험에서 지금 이상 신호가 감지되었습니다."라고 담당자를 정확히 호출해야 빠른 대응과 후속 행동으로 이어질 수 있기 때문입니다. 하지만 이 시스템의 진짜 목적은 단순히 알림을 보내는 것 자체가 아닙니다. 알림을 계기로 필요한 판단과 대응이 빠르게 이루어지도록 돕는 것이 더 중요하기 때문에, 이를 위해 알림이 발생한 이후의 대응 프로세스까지 함께 정의했습니다.

  1. 홀딩 : 실험을 대조군 상태로 일시 중단하여, 비즈니스 손실이 커지지 않도록 합니다.
  2. 원인 파악 및 논의 : 가드레일 지표가 하락한 원인을 다각도로 분석하고, 이해관계자들과 함께 현황을 검토합니다.
  3. 재시작 또는 종료 : 논의 결과에 따라 실험을 재개할지, 종료할지 결정합니다.

정리하면, 알림은 "잠시 멈추고, 데이터를 함께 들여다보자"는 신호입니다. 최종 판단과 의사결정은 여전히 사람이 내리되, 그 판단을 시작해야 할 적절한 타이밍만큼은 시스템이 일관된 기준에 따라 잡아주는 구조를 만든 셈이죠.

6. 마치며 - 정교한 통계보다 더 중요한 것

이번 프로젝트에서 얻은 가장 큰 배움은, 실험의 신뢰는 통계적 정교함보다 일관된 의사결정의 원칙에서 시작된다는 것이었습니다. 데이터 확인 시점을 미리 정해두었기에 초반의 이상 징후를 놓치지 않고 빠르게 대응할 수 있었고, 정해진 시점에만 결과를 평가하도록 했기에 잦은 확인으로 발생하는 오탐도 통제할 수 있었습니다. 그리고 원칙은 자동화된 시스템을 통해 일관되게 작동하기 때문에, 담당자는 "언제 확인해야 하지?"를 고민하는 대신 신호가 왔을 때 무엇을 판단하고 어떻게 대응할지에 집중할 수 있게 되었습니다.

“멈춰야 할 때를 아는 실험”

이처럼 실험의 기준을 하나씩 정교하게 만들어가며, 에이블리는 더 빠르고 안전한 의사결정을 쌓아가고 있습니다. 에이블리 데이터 분석 챕터는 앞으로도 좋은 의사결정이 개인의 감이나 판단에 좌우되지 않고, 누구나 신뢰할 수 있는 원칙과 시스템 위에서 이루어질 수 있도록 실험 문화와 정책을 계속 만들어가고자 합니다.

에이블리는 지금 채용 중

아무도 상상하지 못한 넥스트 커머스. 지금, 에이블리와 함께 해주세요.