타겟팅 설정하기

개요

핵클은 특정 속성을 가진 사용자, 특정 A/B 테스트 혹은 기능 플래그에 참여한 사용자에 한정하여 A/B 테스트에 참여하도록 설정하는 기능, 즉 타겟팅(Targeting)을 제공합니다. 예를 들어 모바일 운영체제 중 안드로이드 사용자만을 대상으로 A/B 테스트에 참여하도록 설정할 수 있습니다.
단, 수동할당 대상이 된 사용자는 타겟 설정 대상이 될 수 없습니다.

(참고) A/B 테스트에 참여하는 사용자는 트래픽 할당의 대상이 되며, 트래픽 할당된 경우 테스트 그룹 분배 대상이 될 수 있습니다. 자세한 내용은 테스트 그룹 분배 과정 문서를 참고하세요.

📘

타겟팅 설정하기 기능을 사용하려면

SDK 조건 확인

  • 지원 대상: Android, iOS, JavaScript, React, React Native, Java/Kotlin, Python, Node.js
  • 지원 버전: iOS 및 React Native는 2.0.0 이상, 그 외는 2.1.0 이상
  • SDK에서 제공하는 기능과 버전에 대한 보다 자세한 내용은 SDK 문서를 참고 바랍니다.

요금제 확인

  • 프로 플랜 이상의 유료 요금제인 경우 사용할 수 있습니다.

정책

  1. 설정 가능 시점
    A/B 테스트 생성부터 ~ 종료까지, 즉 준비, 진행중, 일시정지, 종료 상태일 때 설정하거나 설정을 변경할 수 있습니다.

  2. 기본값
    타겟팅을 설정하지 않을 경우 모든 사용자가 A/B 테스트 참여 대상이 됩니다.

  3. 환경
    운영, 개발 환경에서 설정할 수 있습니다.

  4. 규칙
    특정 사용자로 타겟을 제한하고자 할 경우, 최소 1개의 규칙이 필요합니다.
    타겟에 대한 규칙은 최대 10개를 가질 수 있습니다. 각 규칙은 OR 연산자가 적용되어, 해당 규칙 중 하나만 만족하면 타겟이 됩니다.
    예를 들어 신상품을 구매한 소비자를 타겟으로 정한다고 한다면 "'신상품' 카테고리에 속한 상품을 구매한 사용자" 라는 규칙과 "상품명에 '신상'이 들어가는 상품을 구매한 사용자"라는 규칙을 정하고, 이 중 하나만 만족하면 타겟이 되도록 설정할 수 있습니다.

  5. 조건
    규칙은 생성과 동시에 1개의 조건을 가지며, 최대 10개의 조건을 가질 수 있습니다.
    각 조건은 AND 연산자가 적용되어, 해당 조건을 모두 만족하는 경우에 타겟이 됩니다.
    예를 들어 모바일 운영체제 중 안드로이드 사용자이면서 연령대가 30대인 사용자를 타겟으로 한다면 "모바일 운영체제가 안드로이드인 사용자" 라는 조건과 "연령대가 30대인 사용자" 라는 조건을 모두 만족해야 합니다.

  6. 속성
    조건은 속성을 활용하여 설정할 수 있습니다. 따라서 속성을 지원하는 핵클 SDK를 연동하고 최소한 타겟 규칙에 정의한 사용자의 속성을 수집할 수 있어야 합니다.
    속성에 대한 자세한 내용은 속성 문서를 참고하세요.
    또한, A/B 테스트, 기능 플래그를 활용한 조건 설정도 가능합니다.

규칙 및 조건의 구성

📘

중요!

규칙과 조건은 아래의 조합으로 구성될 수 있습니다.

(1) 속성명 + 연산자 + 속성값

(2) A/B 테스트 (기능 플래그) + 연산자 + A/B 테스트 그룹 (기능 플래그 상태 값)

(3) 타겟팅 그룹 + 연산자 + 사용자 그룹 키

예를 들어 사용자의 운영체제를 osName이라는 속성명으로 수집하고 있던 상황에서 모바일 운영체제 중 안드로이드 사용자를 타겟으로 설정하고 싶은 경우 아래와 같은 조합을 만들 수 있습니다.

  • 속성명: osName
  • 연산자: 다음 중 하나
  • 속성값: Android, android

최초로 만들어진 조합은 첫 번째 규칙이 됩니다. 이러한 규칙에 또 다른 조합을 AND로 추가하느냐 OR로 추가하느냐에 따라 전혀 다른 성격의 타겟을 만들 수 있습니다.

아래에서 연산자와 AND/OR에 대해 좀 더 자세히 알아보겠습니다.

연산자

연산자는 조건을 설정할 때 사용되며, 속성명과 속성값의 관계를 설명하는 역할을 합니다.
핵클은 총 22가지의 연산자를 제공하며, 선택한 속성명이 갖는 속성값의 타입에 따라 적절한 연산자를 선택해야 합니다.

보다 자세한 내용은 아래 표를 참고하세요.

연산자속성값 타입속성값 선택 가능 개수
다음 중 하나String복수 선택 가능
다음 중 하나가 아닌String복수 선택 가능
다음 중 하나로 시작하는 것String복수 선택 가능
다음 중 하나로 시작하지 않는 것String복수 선택 가능
다음 중 하나로 끝나는 것String복수 선택 가능
다음 중 하나로 끝나지 않는 것String복수 선택 가능
다음 중 하나를 포함하는 것String복수 선택 가능
다음 중 하나를 포함하지 않는 것String복수 선택 가능
=Number복수 선택 가능
Number복수 선택 가능
>=Number단일 항목 선택
<=Number단일 항목 선택
>Number단일 항목 선택
<Number단일 항목 선택
참일 경우Boolean선택 불가 (연산자에 속성값 '참'이 포함됨)
거짓일 경우Boolean선택 불가 (연산자에 속성값 '거짓'이 포함됨)
version =Version단일 항목 선택
version ≠Version단일 항목 선택
version >Version단일 항목 선택
version ≥Version단일 항목 선택
version <Version단일 항목 선택
version ≤Version단일 항목 선택

예시

광역시에 거주하는 사용자를 타겟으로 하고 싶다면 여섯 개의 광역시 중 한 곳에 거주하면 되므로 다음과 같이 규칙을 정의할 수 있습니다.

👍

[광역시에 거주하는 사용자] 규칙 만들기

  • 속성: 거주지 (해당 속성의 속성명은 residence, 속성값 타입은 String이라고 가정)
  • 연산자: 다음 중 하나
  • 연산자에서 말하는 '다음'에 들어갈 속성값: "인천광역시", "대전광역시", "대구광역시", "울산광역시", "부산광역시", "광주광역시"

AND 및 OR

AND 및 OR은 두 개의 조합을 피연산자로 가지며, 다음과 같은 의미를 지닙니다.

  1. AND
    피연산자를 둘 다 만족시켜야 타겟에 포함됩니다.
    예를 들어 '모바일 운영체제 중 안드로이드 사용자 AND 주소지가 서울인 사용자' 라면, 안드로이드 운영체제를 가진 모바일 기기를 사용하는 사용자 중에서 주소지가 서울인 사용자만 타겟이 됩니다.

  2. OR
    피연산자 중 하나만 만족시키면 타겟에 포함됩니다.
    예를 들어 '모바일 운영체제 중 안드로이드 사용자 OR 주소지가 서울인 사용자' 라면, 안드로이드 운영체제를 가진 모바일 기기를 사용하는 사용자이거나 주소지가 서울인 사용자가 타겟이 됩니다.

📘

타겟팅에서 AND, OR의 쓰임새

  • AND 연산자는 규칙에 조건을 추가할 때 사용합니다. 여러 조건을 모두 만족시켜야 타겟에 포함되므로 AND 연산자를 많이 사용할 수록 타겟의 범위가 좁아집니다.
  • OR 연산자는 규칙을 추가할 때 사용합니다. 여러 규칙 중 하나만 만족시키면 타겟에 포함되므로 OR 연산자를 많이 사용할 수록 타겟의 범위가 넓어집니다.

대시보드에서 타겟팅 설정하기

A/B 테스트 생성 시

A/B 테스트를 생성할 때 타겟팅 조건을 설정할 수 있습니다.

🚧

반드시 생성 단계에서 설정할 필요는 없습니다!

생성 이후에 설정하거나 이 단계에서 설정한 내용을 변경할 수 있습니다.

아래의 A/B 테스트 만들기 화면에서 가장 아래에 A/B 테스트 타겟팅 항목이 있는 것을 발견할 수 있습니다.
기본값은 모든 사용자입니다.

1482

+ 타겟팅 설정하기 버튼을 누르면 아래 스크린샷과 같이 첫 번째 규칙의 첫 번째 조건을 설정할 수 있습니다.

1328

설정할 때 입력 혹은 선택할 값 및 각 버튼의 설명은 다음과 같습니다.

  1. 속성명
  2. 연산자. 속성명이 갖는 타입을 고려하여 선택하시기 바랍니다.
  3. 속성값. 연산자에 따라 선택할 수 없는 경우도 있고 여러 개 선택할 수 있는 경우도 있습니다.
  4. 규칙을 삭제합니다.
  5. 조건을 추가합니다.
  6. 규칙을 추가합니다.

5의 + AND 조건 추가하기 버튼을 누르면 아래 스크린샷과 같이 규칙 1에 조건이 추가되며, 이어서 6의 + 규칙 추가하기 버튼을 누르면 규칙 2가 추가됩니다.

1398

앞서 언급한 바와 같이, 규칙은 최대 10개의 조건을 가질 수 있으며, 타겟팅은 최대 10개의 규칙을 가질 수 있습니다.
조건을 추가할 때는 AND 연산자이며, 규칙을 추가할 때는 OR 연산자라는 것을 잊지 마세요.

테스트 생성에 필요한 정보를 입력하고 타겟팅 설정을 마쳤다면 테스트 생성하기 버튼을 눌러 설정을 완료합니다.

A/B 테스트 생성 이후

A/B 테스트 상세의 상단 공통 영역에서 A/B 테스트 타겟팅 설정 정보를 볼 수 있습니다.
설정 정보 우측을 보면 타겟팅 설정하기라는 버튼이 있는데, 이 버튼을 눌러 타겟 설정 혹은 이미 설정한 내용을 수정할 수 있습니다.

최초 설정인 경우 A/B 테스트 생성할 때의 설정과 동일하게 첫 번째 규칙의 첫 번째 조건을 설정해야 합니다.
설정할 때 입력 혹은 선택할 값 및 각 버튼의 설명은 이전 A/B 테스트 생성화면과 동일합니다.

대시보드에서 설정 보기

A/B 테스트 상세의 상단 공통 영역에서 A/B 테스트 타겟팅 설정 정보를 볼 수 있습니다.

타겟팅 미설정 (규칙 없음)

타겟팅을 설정하지 않은 경우, 즉 규칙이 없는 경우는 A/B 테스트에 참여할 사용자를 제한하지 않은 것이므로 모든 사용자를 대상으로 합니다.

A/B 테스트 상태가 준비 중인 경우

2534

①에서 모든 사용자 대상임을 보여줍니다.
②의 타겟팅 설정하기 버튼을 통해 설정 할 수 있습니다.
③에서 규칙 예시를 볼 수 있습니다. 이는 실제 규칙이 아니며 규칙을 설정할 경우 이런 식으로 보인다는 것을 보여주는 사례입니다.

A/B 테스트 상태가 준비 중이 아닌 경우

①에서 모든 사용자 대상임을 보여줍니다.

## 타겟팅 설정 (규칙 1개 이상)

타겟이 설정된 경우 A/B 테스트에 참여할 사용자를 제한한 것이므로 1개 이상의 규칙을 갖고 있습니다.

A/B 테스트 상태가 준비 중인 경우

2530

①에서 몇 개의 규칙이 설정된 상태인지 보여줍니다.
②는 규칙을 접어놓은 상태임을 의미합니다. 기본적으로 전체 규칙을 보여주지 않고 접어둡니다.
③의 타겟팅 설정하기 버튼을 통해 타겟 설정을 할 수 있습니다.
④에서 규칙 미리보기가 가능합니다. 규칙 1의 조건 1을 보여줍니다. 추가 정보를 보기 위해서는 ②를 클릭해서 펼쳐야 합니다.

아래는 펼친 사례입니다.

2546

펼친 경우 ① 및 ③은 동일하지만 ②의 방향이 바뀌어있습니다. 펼쳐진 상태임을 의미합니다.
또한 ④에서 모든 규칙을 볼 수 있습니다.