인앱 A/B 테스트로 앱 개선하기

  • 개발
  • 테스트
  • 분석
  • 참여
  • 성장

A/B 테스트를 사용하면 일부 사용자를 대상으로 앱 개선사항을 테스트하여 얻은 데이터로 전체 사용자층을 위한 최상의 방법을 선택할 수 있습니다.

효과가 있는 이유

A/B 테스트를 수행하면 앱의 기능이나 콘텐츠 변경이 유익할지 확인할 수 있으며, 일부 사용자를 대상으로 변경사항을 테스트할 수 있으므로 예상치 못한 영향이 있는지 파악하기 위해 전체 사용자에게 업데이트를 배포하지 않아도 됩니다.

진행 방법

  1. Firebase용 Google 애널리틱스 및 Google 태그 관리자가 포함된 Firebase 원격 구성 임의 백분위 수 타겟팅 등의 적절한 A/B 테스트 플랫폼을 선택하고 앱에 통합합니다.
  2. 테스트하려는 변형 기능 또는 콘텐츠를 결정하고 성공 여부를 가늠할 기준을 정합니다.
  3. 각 테스트 변형 및 테스트에 참여하지 않는 사용자에게 표시할 기능 또는 콘텐츠를 설정합니다. 예를 들면 다음과 같습니다.

    시나리오: 기존 기능의 새로운 구현

    예: 탭 대신 하단 탐색을 사용하여 사용자 참여도 향상

    그룹 사용자에게 표시되는 항목
    테스트에서 제외된 사용자 기존 구현(탭)
    변형 A 기존 구현(탭)
    변형 B 새로운 기능 구현(하단 탐색)
    변형 C, D 등(선택사항) 추가 기능 구현(예: 탐색 창)

    시나리오: 새로운 측정항목이 생성되는 새로운 기능

    예: 가격이 아닌 인기도로 인앱 구매 항목을 나열하면 더 많은 수익이 창출됨

    그룹 사용자에게 표시되는 항목
    테스트에서 제외된 사용자 새로운 기능 없음(인앱 구매가 사용 설정되지 않음)
    변형 A 새로운 기능 구현 1(인앱 구매 항목 인기순 나열)
    변형 B 새로운 기능 구현 2(인앱 구매 항목 가격순 나열)
    변형 C, D 등(선택사항) 추가 기능 구현(예: 구매 항목 알파벳순 나열)

    시나리오: 기존 측정항목으로 새로운 기능 측정

    예: 사용자가 항목에 표시할 수 있도록 허용하면 사용자 참여가 높아짐

    그룹 사용자에게 표시되는 항목
    테스트에서 제외된 사용자 새로운 기능 없음(표시 항목이 비활성화됨)
    변형 A 새로운 기능 없음(표시 항목이 비활성화됨)
    변형 B 새로운 기능 구현(예: 하트 기호를 사용하여 항목 표시)
    변형 C, D 등(선택사항) 추가 기능 구현(예: 별표를 사용하여 항목 표시)
  4. A/B 테스트 플랫폼의 기능에 따라 테스트 인원 또는 테스트 기간을 선택하고 최소 1,000명의 테스트 인원을 달성한다는 목표를 설정합니다.
  5. 테스트를 실행합니다.
  6. 테스트 결과를 검토하여 통계적으로 유의한지 확인하고 테스트된 변형이 앱 성능을 개선하는지 여부를 알아봅니다.
  7. 모든 사용자에게 '성공'한 변경사항을 출시합니다.

권장사항

  • 대규모 테스트가 가능한 플랫폼을 선택합니다. 앱과 비즈니스가 성공하면 A/B 테스트를 더 자주 실행하게 됩니다. 선택한 플랫폼이 동일한 사용자 그룹에 여러 테스트를 동시에 실행할 수 있는지 확인합니다. 공유된 그룹을 사용하여 사용자가 동시에 여러 테스트에 참여할 수 있도록 하는 것이 가장 좋습니다.
  • 테스트가 유용하도록 하려면 최소한이나 필요한 수의 변형만 테스트하는 것이 좋습니다. 개선을 제공할 수 있는 유용한 대체 기능 또는 콘텐츠 옵션이 여러 개인 경우 두 개 이상의 변형을 테스트하시기 바랍니다.

    다변수 방식을 사용하여 변형을 정의합니다. 예를 들면 다음과 같습니다.

버튼 텍스트(변수 2)
구입하기 구매하기
버튼 색상(변수 1) 파란색 변형 A 변형 B
초록색 변형 C 변형 D
  • 충분한 기간 동안 테스트를 실행하여 주기적 변형(periodic variation) 요인을 제거합니다. 사용자 행동은 시간별, 일별, 주별 또는 유사한 주기별로 달라질 수 있습니다. 테스트 기간을 설정할 때 이러한 주기적 행동을 고려합니다. 행동이 장기간에 걸쳐 달라진다고 알려져 있는 분야에서는 테스트 기간을 짧게 잡아 결과를 산출해야 합니다.
  • 사용자 세그먼트 간에 알려진 변형이 테스트에 영향을 미치지 않게 합니다. 사용자 세그먼트 간에 사용자 행동이 달라진다고 생각하는 경우 하나의 세그먼트 내에서 테스트를 실행하거나 모든 사용자를 대표하는 샘플을 사용합니다. 예를 들어 사용자당 수익이 국가별로 달라진다고 알려져 있는 경우 한 국가의 사용자 또는 모든 국가의 사용자를 대상으로 테스트합니다.
  • 여러 세그먼트에서 테스트합니다. 국가, 획득 채널 등의 알려진 유용한 사용자 세그먼트가 있는 경우 다른 세그먼트에서 테스트를 실행하여 결과가 다른지 확인합니다. 그런 다음 일부 세그먼트에만 변경사항을 출시하거나 다른 세그먼트에 다른 변경사항을 출시할 수 있습니다.
  • 테스트 기간을 설정할 때 잠재적 비즈니스 이점을 고려합니다. 테스트 기간이나 테스트 그룹의 크기, 그리고 그 결과 변형이 테스터에게 표시되는 데 걸리는 시간 등을 설정할 때, 테스트를 단기간 동안만 시행하여 이득을 더 빨리 실현하는 등 비즈니스상의 개선사항을 빨리 얻는 게 도움이 될 수 있습니다.
  • 테스트에 예상치 못한 부정적 결과가 있는지 모니터링하고 필요 시 테스트를 중단할 준비를 합니다. 테스트에 일부 사용자만 포함되었더라도, 결과가 너무 나쁘면 평점 및 리뷰에 영향을 미치거나 소셜 미디어에서 공유된 정보를 통해 다른 사용자에게 악영향을 줄 수 있습니다.
  • 플랫폼에서 허용하는 경우 점진적으로 변경사항을 출시합니다. 테스트 결과에서 변경사항을 적용하는 데 통계적인 이점이 있다고 나타났더라도, 모든 사용자에게 변경사항이 적용되었을 때 예상치 못한 결과가 있을 수 있습니다. 변경사항을 점진적으로 출시하면 더 많은 사용자에게 적용되는 과정에서 효과를 모니터링하고 예상한 이점이 없는 경우 출시 과정을 중지할 수 있습니다.
  • 측정항목에서 맞춤설정한 사용자를 제외합니다. 사용자에게 테스트하는 새 기능을 보거나 사용하도록 선택할 수 있도록 허용한 경우 이러한 사용자는 측정항목에서 제외해야 합니다.