AppsFlyer 데이터 연동 솔루션
최종 업데이트 날짜: 2023-04-04
1. 통합 계획 소개
서드파티 데이터 통합으로 생성된 데이터는 클러스터의 소비 데이터양에 포함됩니다
개요
이 문서에서는 AppsFlyer의 데이터를 Agentic Engine(이하 AE 시스템)으로 콜백하는 방법을 소개합니다. 이 계획은 AppsFlyer의 다양한 데이터 연동 방법을 지원합니다. 다음 표는 각 데이터 연동 방법의 특징과 데이터 타입을 보여 주며, 제목을 클릭하면 해당 계획의 장으로 이동할 수 있습니다:
| 인터페이스 | 데이터 세분화 | API 타입 | 제품화 | 데이터 업데이트 빈도 | 요청 횟수 제한 |
|---|---|---|---|---|---|
| 유저 수준 | 푸시 방식 | 예 | 실시간 | 제한 없음 | |
| 유저 수준 | 풀 방식 | 아니요 | 실시간 |
| |
집계 데이터 | 풀 방식 | 아니요 | 실시간 |
| |
| 집계 데이터 | 풀 방식 | 아니요 | 일별 |
| |
| 집계 데이터 | 풀 방식 | 아니요 | 일별 | 제한 없음 | |
| Data Locker | 유저 수준 / 집계 데이터 | 풀 방식 | - | 일별/시간별 | 전송 대상 클라우드 스토리지의 제한에 따름 |
일부 플랫폼은 어트리뷰션 정보, 수익 데이터, 비용 데이터 등 유저 수준 데이터의 일부 필드 콜백을 제한하므로 주의하십시오
일부 인터페이스는 AppsFlyer의 유료 기능입니다. 사용하기 전에 AppsFlyer의 담당 고객 매니저에게 인터페이스 사용 권한을 문의하십시오.
2. Push API 유저 수준 데이터 인터페이스(제품화 완료)
인터페이스 기본 정보
| 인터페이스명 | API 타입 | 제품화 | 데이터 세분화 | 어트리뷰션 데이터 | 비용 데이터 | 수익 데이터 | 노출 데이터 | 클릭 데이터 | 전환 데이터 |
|---|---|---|---|---|---|---|---|---|---|
| Push API | 푸시 방식 | 예 | 유저 수준 | 예 | 예 | 예 | 예 | 예 |
Push API로 AppsFlyer의 유저 수준 데이터를 실시간으로 가져올 수 있으며, 노출, 클릭, 활성화, 수익 데이터 등이 포함됩니다. 비용 데이터는 AF 플랫폼의 데이터 제한으로 인해 가져오지 못할 수 있습니다.
Push API 통합은 이미 AE 시스템 백엔드에서 제품화되었으므로 관련 제품 문서를 참고하여 화면에서 통합 설정을 진행할 것을 권장합니다.
Push API 유저 수준 데이터를 연동하기 전에 AE 시스템의 유저 식별 규칙을 읽고 AE 시스템이 #distinct_id와 #account_id로 유저를 식별하는 방식을 이해했는지 확인하십시오. AppsFlyer Push API 인터페이스의 데이터 연동 절차는 아래 그림과 같습니다:
2.1 클라이언트 SDK 설정
Push API의 유저 수준 데이터를 AE 프로젝트의 유저 데이터와 연결하려면 AppsFlyer SDK에서 AE 프로젝트의 계정 ID와 게스트 ID를 전송해야 합니다. 다음은 클라이언트 SDK의 설정 방법입니다.
방안 1(자동 통합):
연동한 AE SDK 버전이 2.8.0~2.8.1이면 이 방안을 바로 사용할 수 있습니다
연동한 AE SDK 버전이 2.8.2 이상이면 서드파티 데이터 플러그인도 설치해야 합니다
이 방안은 자동 통합 방안입니다. AE 클라이언트 SDK를 초기화한 후 다음 코드를 호출하여 활성화하십시오. 자세한 내용은 Android SDK 서드파티 데이터 및 iOS SDK 서드파티 데이터를 참고하십시오
// AE SDK 초기화
ThinkingAnalyticsSDK instance = ThinkingAnalyticsSDK.sharedInstance(this, TA_APP_ID, TA_SERVER_URL);
// AE SDK의 AppsFlyer ID 연결 기능 활성화
instance.enableThirdPartySharing(TDThirdPartyShareType.TD_APPS_FLYER);
// setCustomerUserId()로 게스트 ID를 한 번 더 설정할 것을 강력히 권장합니다
String distinctId = instance.getDistinctId();
AppsFlyerLib.getInstance().setCustomerUserId(distinctId);
// AppsFlyer SDK 초기화
AppsFlyerLib.getInstance().init("appid", null, this);
AppsFlyerLib.getInstance().start(this);
// AE SDK의 login을 호출하여 계정 ID를 설정한 후 AF SDK에 데이터를 다시 동기화해야 함
instance.login("account_id");
instance.enableThirdPartySharing(TDThirdPartyShareType.TD_APPS_FLYER);
AE SDK의 login() 메서드나 identify() 메서드를 호출한 경우 enableThirdPartySharing()을 다시 호출하여 데이터를 동기화해야 합니다.
참고: AppsFlyer SDK의 setAdditionalData() 메서드도 호출해야 하는 경우, 이 메서드를 여러 번 호출하면 이전 파라미터를 덮어쓰므로 파라미터를 AE SDK에 전달할 수 있습니다. AE SDK가 내부에서 파라미터를 병합합니다.
Map<String, Object> additionalData = new HashMap<>();
additionalData.put("af_test_key1", "test1");
additionalData.put("af_test_key2", "test2");
instance.enableThirdPartySharing(
TDThirdPartyShareType.TD_APPS_FLYER,
additionalData
);
이 방안은 내부에서 AppsFlyer의 setAdditionalData() 메서드를 자동으로 호출하여 AE 프로젝트의 게스트 ID와 계정 ID를 전달하는 방식으로 동작합니다.
방안 2(수동 통합):
수동 통합 방안에서는 AppsFlyer SDK에서 setAdditionalData로 AE 프로젝트의 게스트 ID와 계정 ID를 설정해야 합니다. 다음은 Java 코드 예시입니다:
// AE SDK 초기화
ThinkingAnalyticsSDK instance = ThinkingAnalyticsSDK.sharedInstance(this, TA_APP_ID, TA_SERVER_URL);
// AE의 게스트 ID 가져오기(AE의 #distinct_id에 해당)
String distinctId = instance.getDistinctId();
// setAdditionalData()로 게스트 ID를 AF SDK에 설정
HashMap<String,Object> CustomDataMap = new HashMap<>();
CustomDataMap.put("ta_distinct_id",distinctId);
AppsFlyerLib.getInstance().setAdditionalData(CustomDataMap);
// setCustomerUserId()로 게스트 ID를 한 번 더 설정할 것을 강력히 권장합니다
AppsFlyerLib.getInstance().setCustomerUserId(distinctId);
// AppsFlyer SDK 초기화
AppsFlyerLib.getInstance().init("appid", null, this);
AppsFlyerLib.getInstance().start(this);
...
// AE SDK의 login을 호출하여 계정 ID를 설정한 후 AF SDK에 데이터를 다시 동기화해야 함
String accountId = "your_account_id";
instance.login(accountId);
HashMap<String,Object> CustomDataMap = new HashMap<>();
CustomDataMap.put("ta_distinct_id", distinctId);
CustomDataMap.put("ta_account_id",accountId);
AppsFlyerLib.getInstance().setAdditionalData(CustomDataMap);
위와 같이 설정하면 콜백 데이터의 custom_data에 ta_distinct_id, ta_account_id 두 필드가 포함되며, customer_user_id는 게스트 ID와 같아집니다.
참고: 제품화된 설정 방법으로 AppsFlyer Push API 데이터를 연동하는 경우 연결 필드에 다음과 같이 입력해야 합니다:
- 계정 ID 연관 필드: custom_data.ta_account_id
- 게스트 ID 연관 필드: customer_user_id,custom_data.ta_distinct_id
2.2 콜백 주소 설정
이어서 관리자 계정으로 AppsFlyer 백엔드에 로그인하여 Integration - API Access에서 Push API 부분을 찾아 다음과 같이 콜백 주소를 설정하십시오:
-
콜백 API 버전(Push API Version)
- 2.0 버전을 선택하십시오
-
HTTP 요청 메서드(HTTP method)
- AE 시스템은 POST와 GET 방식의 콜백을 모두 지원하며, POST 방식을 선택할 것을 권장합니다
-
엔드포인트 주소(Endpoint URL)
- ThinkingAI 담당자가 데이터 수신용 엔드포인트 주소를 제공합니다
-
이벤트 메시지 타입(Event Messages)
- 최소한 활성화(Install)와 활성화 인앱 이벤트(Install in-app events)는 선택해야 합니다. 그 밖에 콜백할 이벤트 데이터가 있으면 필요에 따라 체크하십시오
-
콜백 필드(Message Fields)
-
메시지 필드에는 최소한 다음 정보가 포함되어야 합니다:
- 모바일 어트리뷰션 관련 필드: media_source, channel, af_adset, af_ad 등
- 유저 식별 ID 관련 필드: custom_data, customer_user_id, event_value 등
- 이벤트 속성 또는 유저 속성으로 사용할 필드
- 이벤트 관련 필드:
event_time_selected_timezone
-
-
콜백할 인앱 이벤트(In-app events)
- 필요에 따라 콜백할 이벤트를 선택합니다(예: 클라이언트에서 전송한 ta_registration 이벤트)
Facebook 데이터가 필요한 경우 AF 백엔드의 Facebook 채널 설정에서 Facebook 데이터 사용 약관(Terms of Service)에 동의해야 합니다. 동의하지 않으면 Facebook의 유저 수준 데이터를 가져올 수 없습니다.
2.3 데이터 저장
2.3.1 유저 식별 규칙
앞서 클라이언트 SDK에서 설정한 유저 식별 필드의 로직에 따라, Push API가 콜백한 유저 단위 데이터가 AE 프로젝트의 해당 유저와 연결될 수 있도록 대응하는 유저 식별 규칙을 정해야 합니다.
기본적으로 콜백 데이터에서 다음 규칙에 따라 유저 식별 필드를 찾습니다:
- Step 1: custom_data 필드에 ta_account_id / ta_distinct_id, 즉
setAdditionalData()로 설정한 필드가 포함되어 있는지 확인합니다 - Step 2: event_value 필드에 ta_account_id / ta_distinct_id, 즉 AppsFlyer 커스텀 이벤트에서 설정한 필드가 포함되어 있는지 확인합니다
- Step 3: 이벤트가 Install 이벤트(event_name: install)이면 customer_user_id 필드를 확인하고, 값이 있으면 customer_user_id를 #distinct_id로 사용합니다. 이는
setCustomerUserId()로 설정한 필드입니다
각 단계에서 유효한 ID를 하나라도 가져오면 이후 단계의 확인을 중지합니다. 3단계를 모두 확인한 후에도 유효한 유저 ID를 가져오지 못하면, 기본적으로 해당 데이터는 유효하지 않은 데이터로 간주되어 바로 폐기됩니다. 이러한 데이터를 보존하려면 ThinkingAI 담당자에게 설정을 요청하십시오. 이러한 데이터는 이벤트 테이블에 기록되고 게스트 ID는 고정값 "without_id"가 되며, 이후의 유저 속성 저장은 진행되지 않습니다
설정한 유저 식별 필드가 위와 다르면 데이터 연동 설정 정보 템플릿에 기록하십시오.
2.3.2 데이터 저장 규칙
기본적으로 콜백 데이터는 이벤트 데이터로 기록되지 않습니다. 이벤트 데이터로 기록하도록 설정하면 수신한 모든 이벤트가 이벤트 데이터로 기록되며, 이벤트 데이터의 저장 규칙은 다음과 같습니다:
- 유저 식별 규칙에 따라 이벤트 데이터를 해당 AE 유저에 귀속합니다
- 데이터의 event_time_selected_timezone 필드에서 시간과 시간대 정보를 가져와 시간은 #event_time으로, 시간대는 #zone_offset으로 기록합니다. 이 필드가 비어 있으면 event_time을 #event_time으로 사용하고 시간대 #zone_offset은 0으로 설정됩니다
- 데이터 이벤트 이름은 해당 이벤트의 AppsFlyer에서의 이벤트 이름입니다
- 나머지 필드는 모두 저장됩니다
2.3.3 유저 속성 저장 설정
기본적으로 데이터에서 다음 네 필드의 값을 읽어 유저 속성으로 설정합니다:
| AppsFlyer 필드 | AE 표준화 필드 | 설명 |
|---|---|---|
| media_source | te_ads_object.media_source | 채널 |
| campaign | te_ads_object.campaign_name | 캠페인 |
| af_adset | te_ads_object.ad_group_name | 광고 그룹 |
| af_ad | te_ads_object.ad_name | 광고 |
이 밖에도 저장할 유저 속성과 그 저장 규칙(user_set 또는 user_setOnce 중 무엇을 사용할지)을 직접 지정할 수 있습니다. 유저 속성을 커스텀하려면 데이터 연동 설정 정보 템플릿에 기록하십시오.
2.4 데이터 연동 설정 정보 템플릿
위 문서를 읽은 후 다음 정보 템플릿을 작성하여 ThinkingAI의 고객 성공 매니저에게 보내는 것을 권장합니다:
인터페이스: AppsFlyer Push API
--------
회사 이름: XXX
AE 프로젝트 환경: (SAAS/프라이빗 배포)
AE 프로젝트 이름: XXX
AE 프로젝트 APP ID: XXX
데이터 수신 주소 push_url: XXX
---------
유저 식별 규칙: XXX를 게스트 ID/계정 ID로 사용(입력하지 않으면 기본값)
이벤트 저장 여부: 아니요/예
유저 식별 ID를 가져오지 못한 데이터 보존 여부: 아니요/예(이벤트를 저장하는 경우에만 유효)
저장할 유저 속성: XXX, XXX(입력하지 않으면 기본값)
3. Pull API 유저 수준 데이터
인터페이스 기본 정보
| 인터페이스명 | API 타입 | 제품화 | 데이터 세분화 | 어트리뷰션 데이터 | 비용 데이터 | 수익 데이터 | 노출 데이터 | 클릭 데이터 | 전환 데이터 |
|---|---|---|---|---|---|---|---|---|---|
| Pull API Raw Data | 풀 방식 | 아니요 | 유저 수준 | 예 | 예 | 예 | 예 |
Pull API Raw Data는 풀 방식의 유저 수준 데이터 인터페이스로, 유저 단위의 과거 데이터를 수집하는 데 매우 적합합니다.
3.1 연동 전 준비 작업
3.1.1 API Token 가져오기
관리자 계정으로 로그인한 후 AppsFlyer 사이드바 메뉴에서 API Access를 찾아 Pull API Raw Data에 사용할 V2.0 API Token을 가져오십시오.
3.1.2 App ID 가져오기
AppsFlyer 백엔드의 My Apps에서 앱의 App ID를 찾을 수 있습니다. Android는 com.으로 시작하며(예: com.demoapp.ta), iOS는 id로 시작합니다(예: id12345678)
3.1.3 클라이언트 SDK 설정
Pull API 유저 수준 데이터를 AE 프로젝트의 유저 데이터와 연결하려면 AppsFlyer SDK에서 AE 프로젝트의 계정 ID와 게스트 ID를 전송해야 합니다. 다음은 클라이언트 SDK의 설정 방법입니다.
방안 1(자동 통합):
연동한 AE SDK 버전이 2.8.0~2.8.1이면 이 방안을 바로 사용할 수 있습니다
연동한 AE SDK 버전이 2.8.2 이상이면 서드파티 데이터 플러그인도 설치해야 합니다
이 방안은 자동 통합 방안입니다. AE 클라이언트 SDK를 초기화한 후 다음 코드를 호출하여 활성화하십시오. 자세한 내용은 Android SDK 서드파티 데이터 및 iOS SDK 서드파티 데이터를 참고하십시오
// AE SDK 초기화
ThinkingAnalyticsSDK instance = ThinkingAnalyticsSDK.sharedInstance(this, TA_APP_ID, TA_SERVER_URL);
// AppsFlyer id 연결 활성화
instance.enableThirdPartySharing(TDThirdPartyShareType.TD_APPS_FLYER);
// AppsFlyer SDK 초기화
AppsFlyerLib.getInstance().init("appid", null, this);
AppsFlyerLib.getInstance().start(this);
// setCustomerUserId()로 게스트 ID를 한 번 더 설정할 것을 강력히 권장합니다
String distinctId = instance.getDistinctId();
AppsFlyerLib.getInstance().setCustomerUserId(distinctId);
// login을 호출하여 계정 ID를 설정한 후 데이터를 다시 동기화해야 함(선택 사항)
instance.login("account_id");
instance.enableThirdPartySharing(TDThirdPartyShareType.TD_APPS_FLYER);
AE SDK의 login() 메서드나 identify() 메서드를 호출한 경우 enableThirdPartySharing()을 다시 호출하여 데이터를 동기화해야 합니다.
참고: AppsFlyer SDK의 setAdditionalData() 메서드도 호출해야 하는 경우, 이 메서드를 여러 번 호출하면 이전 파라미터를 덮어쓰므로 파라미터를 AE SDK에 전달할 수 있습니다. AE SDK가 내부에서 파라미터를 병합합니다.
Map<String, Object> additionalData = new HashMap<>();
additionalData.put("af_test_key1", "test1");
additionalData.put("af_test_key2", "test2");
instance.enableThirdPartySharing(
TDThirdPartyShareType.TD_APPS_FLYER,
additionalData
);
이 방안은 내부에서 AppsFlyer의 setAdditionalData() 메서드를 자동으로 호출하여 AE 프로젝트의 게스트 ID와 계정 ID를 전달하는 방식으로 동작합니다.
방안 2(수동 통합):
수동 통합 방안에서는 AppsFlyer SDK에서 setAdditionalData로 AE 프로젝트의 게스트 ID와 계정 ID를 설정해야 합니다. 다음은 Java 코드 예시입니다:
// AE SDK 초기화
ThinkingAnalyticsSDK instance = ThinkingAnalyticsSDK.sharedInstance(this, TA_APP_ID, TA_SERVER_URL);
// AE의 게스트 ID 가져오기(AE의 #distinct_id에 해당)
String distinctId = instance.getDistinctId();
// 계정 ID(또는 캐릭터 ID), AE의 #account_id에 해당
String accountId = "your_account_id";
// 활성화 시점에 배치
HashMap<String,Object> CustomDataMap = new HashMap<>();
CustomDataMap.put("ta_distinct_id",distinctId);
AppsFlyerLib.getInstance().setAdditionalData(CustomDataMap);
// setCustomerUserId()로 게스트 ID를 한 번 더 설정할 것을 강력히 권장합니다
AppsFlyerLib.getInstance().setCustomerUserId(distinctId);
...
// 회원가입 시점에 배치
HashMap<String,Object> CustomDataMap = new HashMap<>();
CustomDataMap.put("ta_distinct_id", distinctId);
CustomDataMap.put("ta_account_id",accountId);
AppsFlyerLib.getInstance().setAdditionalData(CustomDataMap);
위와 같이 설정하면 콜백 데이터의 custom_data에 ta_distinct_id, ta_account_id 두 필드가 포함되며, customer_user_id는 게스트 ID와 같아집니다.
3.2 포함 필드
기본적으로 Pull API Raw Data는 다음 데이터의 수집을 지원합니다:
| 필드 | 한국어 이름 | 기본 수집 | 타입 |
|---|---|---|---|
| Attributed Touch Type | 어트리뷰션 타입(노출, 클릭) | 예 | |
| Attributed Touch Time | 어트리뷰션 시간 | 예 | 시간 |
| Install Time | 활성화 시간 | 예 | 시간 |
| Event Time | 이벤트 시간 | 예 | 시간 |
| Event Name | 이벤트 이름 | 예 | |
| Event Value | 이벤트 값 | 예 | |
| Event Revenue | 이벤트 수익 | 예 | 숫자 |
| Event Revenue Currency | 이벤트 수익 통화 타입 | 예 | |
| Event Revenue USD | 이벤트 수익(USD) | 예 | 숫자 |
| Event Source | 이벤트 소스 | 예 | |
| Is Receipt Validated | 영수증 검증 활성화 여부 | ||
| Partner | 파트너 | 예 | |
| Media Source | 미디어 채널 | 예 | |
| Channel | 하위 채널 | 예 | |
| Keywords | 키워드 | 예 | |
| Campaign | 캠페인 이름 | 예 | |
| Campaign ID | 캠페인 ID | 예 | |
| Adset | 광고 그룹 이름 | 예 | |
| Adset ID | 광고 그룹 ID | 예 | |
| Ad | 광고 소재 이름 | 예 | |
| Ad ID | 광고 소재 ID | 예 | |
| Ad Type | 광고 유형 | 예 | |
| Site ID | 사이트 ID | 예 | |
| Sub Site ID | 하위 사이트 ID | 예 | |
| Sub Param [1-5] | 하위 파라미터 [1-5] | ||
| Cost Model | 비용 모델 (CPC/CPI/CPM/Other) | 예 | |
| Cost Value | 비용 값 | 예 | 숫자 |
| Cost Currency | 비용 통화 타입 | 예 | |
| Contributor [1-3] Partner | 기여자 [1-3] 파트너 | ||
| Contributor [1-3] Media Source | 기여자 [1-3] 미디어 채널 | ||
| Contributor [1-3] Campaign | 기여자 [1-3] 캠페인 | ||
| Contributor [1-3] Touch Type | 기여자 [1-3] 어트리뷰션 타입 | ||
| Contributor [1-3] Touch Time | 기여자 [1-3] 어트리뷰션 시간 | 시간 | |
| Region | 지역 | 예 | |
| Country Code | 국가 코드 | 예 | |
| State | 주/성 | 예 | |
| City | 도시 | 예 | |
| Postal Code | 우편번호 | ||
| DMA | DMA 코드 | ||
| IP | IP 주소 | 예 | |
| WIFI | WI-FI 사용 여부 | 예 | |
| Operator | 이동통신사 | 예 | |
| Carrier | 휴대폰 통신사 | 예 | |
| Language | 언어 | 예 | |
| AppsFlyer ID | AppsFlyer ID | 예 | |
| Advertising ID | Advertising ID | 예 | |
| IDFA | IDFA | 예 | |
| Android ID | Android ID | 예 | |
| Customer User ID | Customer User ID | 예 | |
| IMEI | IMEI | 예 | |
| IDFV | IDFV | 예 | |
| Platform | 플랫폼 | 예 | |
| Device Type | 디바이스 타입 | 예 | |
| OS Version | 운영 체제 | 예 | |
| App Version | 앱 버전 | 예 | |
| SDK Version | SDK 버전 | 예 | |
| App ID | App ID | 예 | |
| App Name | 앱 이름 | 예 | |
| Bundle ID | Bundle ID | 예 | |
| Is Retargeting | 리타겟팅 여부 | 예 | |
| Retargeting Conversion Type | 리타겟팅 전환 타입 | 예 | |
| Attribution Lookback | 어트리뷰션 Lookback | ||
| Reengagement Window | 재참여 윈도우 | ||
| Is Primary Attribution | 주 어트리뷰션 여부 | ||
| User Agent | 유저 에이전트 | ||
| HTTP Referrer | HTTP Referrer | ||
| Original URL | 원본 URL | 예 |
3.3 인터페이스 파라미터
-
시간:
- 일 단위로 데이터를 수집합니다(최근 90일의 데이터만 수집 가능)
- 기본 데이터 시간대는 UTC 시간입니다
3.4 데이터 저장 규칙
Pull API 유저 수준 데이터 인터페이스는 여러 종류의 데이터를 저장하며, 데이터별 처리 규칙은 다음과 같습니다:
-
Installs 데이터
- user acquisition(UA)만 포함하는 Installs 데이터와 Organic Installs 데이터를 수집합니다
- 데이터는 기본적으로 유저 속성 형태로 기록됩니다
- 이벤트 형태로 기록하는 것도 지원하며, 이벤트 이름은 af_install입니다
- 유저 식별 필드 설정에 따라 유저 식별 필드를 결정합니다. 유저 식별 규칙을 설정하지 않으면 기본적으로 데이터의 customer_user_id를 게스트 ID로 사용합니다. 유저 식별 필드를 가져오지 못한 데이터는 폐기됩니다.
- 모든 필드가 저장됩니다
-
Ad Revenue
- Attributed ad revenue와 Organic ad revenue를 수집합니다. 이 중 Attributed ad revenue는 user acquisition(UA)과 retargeting 데이터를 함께 수집합니다
- 데이터는 이벤트 형태로 기록되며, 이벤트 이름은 af_ad_revenue_raw입니다
- 데이터의 Event Time, 즉 이벤트 발생 시각을 이벤트의 #event_time으로 사용합니다
- 유저 식별 필드 설정에 따라 유저 식별 필드를 결정합니다. 유저 식별 규칙을 설정하지 않으면 기본적으로 데이터의 customer_user_id를 게스트 ID로 사용합니다. 유저 식별 필드를 가져오지 못한 데이터는 폐기됩니다.
- 모든 필드가 저장됩니다
3.5 데이터 연동 설정 정보 템플릿
위 문서를 읽은 후 다음 정보 템플릿을 작성하여 ThinkingAI의 고객 성공 매니저에게 보내는 것을 권장합니다:
인터페이스: AppsFlyer Pull API Raw Data
--------
회사 이름: XXX
AE 프로젝트 환경: (SAAS/프라이빗 배포)
AE 프로젝트 이름: XXX
AE 프로젝트 APP ID: XXX
데이터 수신 주소 push_url: XXX
---------
AppsFlyer API Token: xxxxxxxx
AppsFlyer App ID: xxxxxxxx
---------
유저 식별 규칙: XXX를 게스트 ID/계정 ID로 사용(입력하지 않으면 기본값)
연동할 데이터: Install, Ad Revenue
유저 속성에 기록할 Install 이벤트의 속성: xxx, xxx(입력하지 않으면 기본값)
과거 데이터 수집 기간: yyyy/mm/dd - yyyy/mm/dd(최근 90일의 데이터만 수집 가능)
정기 수집: 매일 X시에 전날 데이터 수집
4. Pull API 집계 지표 인터페이스
인터페이스 기본 정보
| 인터페이스명 | API 타입 | 제품화 | 데이터 세분화 | 어트리뷰션 데이터 | 비용 데이터 | 수익 데이터 | 노출 데이터 | 클릭 데이터 | 전환 데이터 |
|---|---|---|---|---|---|---|---|---|---|
| Pull API 집계 지표 | 풀 방식 | 아니요 | 집계 데이터 | 예 | 예 | 예 | 예 | 예 |
AppsFlyer Pull API 집계 지표 인터페이스는 다양한 타입의 집계 지표 데이터를 제공하며, 현재 AE 시스템이 지원하는 데이터 타입은 Partners (by date)와 Geo (by date)입니다.
4.1 연동 전 준비 작업
4.1.1 API Token 가져오기
관리자 계정으로 로그인한 후 AppsFlyer 사이드바 메뉴에서 API Access를 찾아 Pull API에 사용할 V2.0 API Token을 가져오십시오.
4.1.2 App ID 가져오기
AppsFlyer 백엔드의 My Apps에서 앱의 App ID를 찾을 수 있습니다. Android는 com.으로 시작하며(예: com.demoapp.ta), iOS는 id로 시작합니다(예: id12345678)
4.2 포함 필드
4.2.1 Partner (by date) 데이터
이 절에서는 Partner (by date) 타입의 데이터를 소개합니다. 이 리포트는 LTV 데이터를 기반으로 하며, 지정한 기간에 설치한 신규 유저의 이후 데이터를 수집합니다.
Facebook의 데이터 형식은 다른 미디어 채널과 다르므로 AE 시스템은 Facebook 데이터만 포함한 데이터와 전체 플랫폼 데이터를 각각 수집합니다. 다음은 Partner (by date)로 가져올 수 있는 필드입니다:
| 필드 이름 | 저장명 | Facebook 데이터만 | 전체 플랫폼 데이터 |
|---|---|---|---|
| Date | #event_time | ✓ | ✓ |
| Agency/PMD (af_prt) | agency_pmd_af_prt | ✓ | ✓ |
| Media Source (pid) | media_source_pid | ✓ | ✓ |
| Campaign | campaign_name(Facebook) campaign_c(전체 플랫폼) | ✓ | ✓ |
| Campaign ID | campaign_id | ✓ | |
| Adgroup ID | adgroup_id | ✓ | |
| Adgroup Name | adgroup_name | ✓ | |
| Adset ID | adset_id | ✓ | |
| Adset Name | adset_name | ✓ | |
| ARPU | arpu | ✓ | ✓ |
| Average eCPI | average_ecpi | ✓ | ✓ |
| Clicks | clicks | ✓ | ✓ |
| Conversion Rate | conversion_rate | ✓ | ✓ |
| CTR | ctr | ✓ | ✓ |
| {your event name}(Unique users) | {your_event_name}_unique_users | ✓ | ✓ |
| {your event name} (Event counter) | {your_event_name}_event_counter | ✓ | ✓ |
| {your event name} (Sales in XXX) | {your_event_name}_sales_in_usd | ✓ | ✓ |
| Impressions | impressions | ✓ | ✓ |
| Installs | installs | ✓ | ✓ |
| Loyal Users | loyal_users | ✓ | ✓ |
| Loyal Users/Installs | loyal_users_installs | ✓ | ✓ |
| ROI | roi | ✓ | ✓ |
| Sessions | sessions | ✓ | ✓ |
| Total Cost | total_cost | ✓ | ✓ |
| Total revenue | total_revenue | ✓ | ✓ |
4.2.2 Geo (by date) 데이터
이 절에서는 Geo (by date) 타입의 데이터를 소개합니다. 이 리포트는 LTV 데이터를 기반으로 하며, 지정한 기간에 설치한 신규 유저의 이후 데이터를 수집합니다.
Facebook의 데이터 형식은 다른 미디어 채널과 다르므로 AE 시스템은 Facebook 데이터만 포함한 데이터와 전체 플랫폼 데이터를 각각 수집합니다. 다음은 Geo (by date)로 가져올 수 있는 필드입니다:
| 필드 이름 | 저장명 | Facebook 데이터만 | 전체 플랫폼 데이터 |
|---|---|---|---|
| Country | country | ✓ | ✓ |
| Date | #event_time | ✓ | ✓ |
| Agency/PMD (af_prt) | agency_pmd_af_prt | ✓ | ✓ |
| Media Source (pid) | media_source_pid | ✓ | ✓ |
Campaign | campaign_name(Facebook) campaign_c(전체 플랫폼) | ✓ | ✓ |
| Campaign ID | campaign_id | ✓ | |
| Adgroup | adgroup_id | ✓ | |
| Adgroup Name | adgroup_name | ✓ | |
| Adset ID | adset_id | ✓ | |
| Adset Name | adset_name | ✓ | |
| ARPU | arpu | ✓ | ✓ |
| Clicks | clicks | ✓ | ✓ |
| Conversion Rate | conversion_rate | ✓ | ✓ |
| {your event name}(Unique users) | {your_event_name}_unique_users | ✓ | ✓ |
| {your event name} (Event counter) | {your_event_name}_event_counter | ✓ | ✓ |
| {your event name} (Sales in XXX) | {your_event_name}_sales_in_usd | ✓ | ✓ |
| Installs | installs | ✓ | ✓ |
| Loyal Users | loyal_users | ✓ | ✓ |
Sessions | sessions | ✓ | ✓ |
Total revenue | total_revenue | ✓ | ✓ |
4.3 인터페이스 파라미터
-
시간:
- 일 단위로 데이터를 수집합니다
- 기본 데이터 시간대는 UTC 시간입니다
4.4 데이터 저장 규칙
기본적으로 수집한 데이터는 이벤트 형태로 AE 프로젝트에 기록됩니다:
-
Pull API 집계 지표 인터페이스는 집계 데이터를 반환하므로 고정값을 유저 식별자로 사용합니다. 모든 데이터가 하나의 가상 유저에 연결된다고 보면 됩니다
-
데이터의 Date 필드, 즉 유저의 설치 날짜를 이벤트의 #event_time으로 사용합니다
-
데이터의 이벤트 이름은 다음과 같습니다:
-
Partner (by date)
- appsflyer_facebook_partner_by_date(Facebook 데이터)
- appsflyer_partner_by_date(전체 플랫폼 데이터)
-
Geo (by date)
- appsflyer_facebook_geo_by_date(Facebook 데이터)
- appsflyer_geo_by_date(전체 플랫폼 데이터)
-
-
나머지 필드는 모두 저장됩니다
4.5 데이터 연동 설정 정보 템플릿
위 문서를 읽은 후 다음 정보 템플릿을 작성하여 ThinkingAI의 고객 성공 매니저에게 보내는 것을 권장합니다:
인터페이스: AppsFlyer Pull API 집계 데이터 인터페이스
--------
회사 이름: XXX
AE 프로젝트 환경: (SAAS/프라이빗 배포)
AE 프로젝트 이름: XXX
AE 프로젝트 APP ID: XXX
데이터 수신 주소 push_url: XXX
---------
AppsFlyer API Token: xxxxxxxx
AppsFlyer App ID: xxxxxxxx
---------
데이터 수집 시간대: XXX(기본값은 UTC 시간)
데이터 수집 타입: Partner (by date)/Geo (by date)
과거 데이터 수집 기간: yyyy/mm/dd - yyyy/mm/dd
정기 수집: 매일 X시에 전날 데이터 수집
5. Master API
인터페이스 기본 정보
| 인터페이스명 | API 타입 | 제품화 | 데이터 세분화 | 어트리뷰션 데이터 | 비용 데이터 | 수익 데이터 | 노출 데이터 | 클릭 데이터 | 전환 데이터 |
|---|---|---|---|---|---|---|---|---|---|
| Master API | 풀 방식 | 아니요 | 집계 데이터 | 예 | 예 | 예 | 예 |
Master API는 분석 차원과 집계 지표를 커스텀할 수 있어 Pull API 집계 지표 인터페이스보다 유연합니다.
5.1 연동 전 준비 작업
5.1.1 API Token 가져오기
관리자 계정으로 로그인한 후 AppsFlyer 사이드바 메뉴에서 API Access를 찾아 Master API에 사용할 V2.0 API Token을 가져오십시오.
5.1.2 App ID 가져오기
AppsFlyer 백엔드의 My Apps에서 앱의 App ID를 찾을 수 있습니다. Android는 com.으로 시작하며(예: com.demoapp.ta), iOS는 id로 시작합니다(예: id12345678)
5.2 포함 필드
Master API에는 다양한 타입의 지표가 포함되어 있으며, 그중 자주 사용하는 지표 대분류는 LTV KPIs, Retention KPIs 및 Cohort KPIs입니다. Cohort KPIs가 지원하는 분석 차원은 다른 지표 대분류보다 좁으므로 AE 시스템은 Cohort KPIs를 포함하는 데이터와 포함하지 않는 데이터를 나누어 수집합니다. 다음은 두 종류의 데이터에 포함된 필드입니다:
- 분석 차원
| 필드 이름 | af_groupings | 저장명 | Cohort KPIs 제외 데이터 | Cohort KPIs 포함 데이터 |
|---|---|---|---|---|
| App ID | app_id | app_id | ✓ | ✓ |
| Media Source | pid | media_source | ✓ | ✓ |
| Agency | af_prt | partner | ✓ | |
| Campaign | c | campaign | ✓ | ✓ |
| Adset | af_adset | adset | ✓ | |
| Ad | af_ad | ad | ✓ | |
| Channel | af_channel | channel | ✓ | |
| Publisher ID | af_siteid | publisher_id_af_siteid | ✓ | ✓ |
| Keywords | af_keywords | keywords | ||
| Is Primary Attribution | is_primary | is_primary_attribution | ||
| Campaign ID | af_c_id | campaign_id | ||
| Adset ID | af_adset_id | adset_id | ||
| Ad ID | af_ad_id | ad_id | ||
| Install Time | install_time | install_time | ✓ | ✓ |
| Touch Type | attributed_touch_type | touch_type | ✓ | |
| GEO | geo | geo | ✓ | ✓ |
- 지표 필드
다음은 Master API에서 자주 사용하는 일부 필드입니다. 전체 필드는 AppsFlyer 공식 문서에서 확인할 수 있습니다:
새로 추가한 지표 필드는 Cohort KPIs 제외 데이터에 추가됩니다. 지표를 추가하려면 데이터 연동 설정 정보 템플릿에 명시하십시오
| 저장명 | 설명 | Cohort KPIs 제외 데이터 | Cohort KPIs 포함 데이터 |
|---|---|---|---|
| impressions | 노출 수 | ✓ | ✓ |
| clicks | 클릭 수 | ✓ | ✓ |
| installs | 설치 수 | ✓ | ✓ |
| cr | 전환율 | ✓ | ✓ |
| sessions | Session 수 | ✓ | ✓ |
| loyal_users | 충성 유저 설치 수 | ✓ | ✓ |
| loyal_users_rate | 충성 유저 비율 | ✓ | ✓ |
| cost | 총비용 | ✓ | ✓ |
| revenue | 총수익 | ✓ | ✓ |
| roi | ROI | ✓ | ✓ |
| arpu_ltv | 평균 LTV | ✓ | ✓ |
| average_ecpi | 평균 eCPI | ✓ | ✓ |
| uninstalls | 삭제 수 | ✓ | ✓ |
| uninstalls_rate | 삭제율 | ✓ | ✓ |
retention_day_[x] | N일 차 잔존 유저 수(N = 0,1,2,3,4,5,6,7,15,30) | ✓ | |
| retention_rate_day_[x] | N일 차 잔존율(N = 0,1,2,3,4,5,6,7,15,30) | ✓ | |
cohort_day_[x]_total_revenue_per_user | N일 차 누적 수익(N = 1,2,3,4,5,6,7,15,30,40,50,60,70,80,90) | ✓ | |
cohort_day_[x]_revenue_per_user | N일 차 당일 수익(N = 1,2,3,4,5,6,7,15,30,40,50,60,70,80,90) | ✓ | |
| cohort_[x]_days_total_revenue_per_user | N일 차 누적 수익과 동일(N = 1,2,3,4,5,6,7,15,30,40,50,60,70,80,90) | ✓ |
5.3 인터페이스 파라미터
-
시간:
- 일 단위로 데이터를 수집합니다
- 기본 데이터 시간대는 UTC 시간입니다
5.4 데이터 저장 규칙
기본적으로 수집한 데이터는 이벤트 형태로 AE 프로젝트에 기록됩니다:
-
Master API 집계 지표 인터페이스는 집계 데이터를 반환하므로 고정값을 유저 식별자로 사용합니다. 모든 데이터가 하나의 가상 유저에 연결된다고 보면 됩니다
-
데이터의 install_time 필드, 즉 유저의 설치 시간을 이벤트의 #event_time으로 사용합니다
-
데이터의 이벤트 이름은 다음과 같습니다:
- Cohort KPIs 포함 데이터
- appsflyer_master_ltv_act_cohort_kpis
- Cohort KPIs 제외 데이터
- appsflyer_master_ltv_act_retention_kpis
- Cohort KPIs 포함 데이터
-
나머지 필드는 모두 저장됩니다
5.5 데이터 연동 설정 정보 템플릿
위 문서를 읽은 후 다음 정보 템플릿을 작성하여 ThinkingAI의 고객 성공 매니저에게 보내는 것을 권장합니다:
수집 데이터 인터페이스: AppsFlyer Master API 집계 데이터 인터페이스
--------
회사 이름: XXX
AE 프로젝트 환경: (SAAS/프라이빗 배포)
AE 프로젝트 이름: XXX
AE 프로젝트 APP ID: XXX
데이터 수신 주소 push_url: XXX
---------
AppsFlyer API Token: xxxxxxxx
AppsFlyer App ID: xxxxxxxx
---------
데이터 수집 시간대: XXX(기본값은 UTC 시간)
추가 지표: XXX, XXX(이벤트 관련 activity 지표인 경우 지표 데이터를 수집할 이벤트 이름을 지정할 수 있음. 추가 지표는 Cohort KPIs 제외 데이터, 즉 appsflyer_master_ltv_act_retention_kpis 이벤트에 추가됨)
과거 데이터 수집 기간: yyyy/mm/dd - yyyy/mm/dd
정기 수집: 매일 X시에 전날 데이터 수집
6. Cohort API
인터페이스 기본 정보
| 인터페이스명 | API 타입 | 제품화 | 데이터 세분화 | 어트리뷰션 데이터 | 비용 데이터 | 수익 데이터 | 노출 데이터 | 클릭 데이터 | 전환 데이터 |
|---|---|---|---|---|---|---|---|---|---|
| Cohort API | 풀 방식 | 아니요 | 집계 데이터 | 예 | 예 | 예 |
Cohort API도 집계 데이터 API입니다. 다른 집계 데이터 API와 비교하면 데이터 지표의 형태가 AppsFlyer의 Cohort Dashboard 및 AE 시스템의 리텐션 분석 모델의 데이터 결과, 즉 N일차(또는 누적 N일차) 지표와 더 유사합니다.
6.1 연동 전 준비 작업
6.1.1 API Token 가져오기
관리자 계정으로 로그인한 후 AppsFlyer 사이드바 메뉴에서 API Access를 찾아 Cohort API에 사용할 V2.0 API Token을 가져오십시오.
6.1.2 App ID 가져오기
AppsFlyer 백엔드의 My Apps에서 앱의 App ID를 찾을 수 있습니다. Android는 com.으로 시작하며(예: com.demoapp.ta), iOS는 id로 시작합니다(예: id12345678)
6.2 포함 필드
- 분석 차원
Cohort API는 최대 7개의 분석 차원을 지원합니다. 다음은 기본 분석 차원이며, 조정이 필요하면 데이터 연동 설정 정보 템플릿에 명시하십시오:
| 필드 이름 | 저장명 | 기본값 |
|---|---|---|
| Ad | af_ad | ✓ |
| Ad ID | af_ad_id | |
| Campaign | c | ✓ |
| Campaign ID | af_c_id | |
| Channel | af_channel | ✓ |
| Media Source | pid | ✓ |
| Sub Param 1 | af_sub1 | |
| Keywords | af_keywords | |
| Agency | af_prt | |
| Conversion Type (1) | cohort_type | |
| Site ID | site_id | |
| Attributed Touch Type (3) | attributed_touch_type | |
| Adset | af_adset | ✓ |
| Adset ID | af_adset_id | |
| Country | geo | |
| Date | date | ✓ |
Facebook(Meta) 데이터를 수집해야 하는 경우 분석 차원에서 af_channel과 geo를 동시에 선택하지 마십시오. 동시에 선택하면 Facebook의 비용 데이터를 가져올 수 없습니다
- 지표 필드
Cohort API는 기본 지표 3종과 추가 지표 1개를 반환합니다. 다음은 기본 지표 필드이며, 조정이 필요하면 데이터 연동 설정 정보 템플릿에 명시하십시오:
| 지표 타입 | 저장명 | 설명 | 기본값 |
|---|---|---|---|
| users(필수) | users | 코호트 총유저 수(시간 범위와 무관) | ✓ |
| ecpi(필수) | ecpi | 코호트 총 eCPI(시간 범위와 무관) | ✓ |
| cost(필수) | cost | 코호트 총비용(시간 범위와 무관) | ✓ |
"event_name"(커스텀 이벤트) | "event_name"_unique_users_day_N | N일차 커스텀 이벤트 트리거 유저 수 | |
| "event_name"_count_day_N | N일차 커스텀 이벤트 완료 수 | ||
| "event_name"_rate_day_N | N일차 커스텀 이벤트 완료율 | ||
| "event_name"_sum_day_N | N일차 커스텀 이벤트로 발생한 수익 금액 | ||
revenue | revenue_count_day_N | N일차 수익 이벤트 트리거 수 | ✓ |
| revenue_sum_day_N | N일차 수익 금액 | ✓ | |
| ROAS | roas_rate_day_N | N일차 ROAS | |
| roi | roi_rate_day_N | N일차 ROI | |
sessions | sessions_unique_users_day_N | N일차 Session 트리거 유저 수(누적 지표인 경우 이 데이터는 반환되지 않음) | |
| sessions_count_day_N | N일차 Session 수 | ||
| sessions_rate_day_N | N일차 잔존율(Session 트리거 유저 수 / 코호트 총유저 수) | ||
| uninstalls | uninstalls_count_day_N | N일차 삭제 수 | |
| uninstalls_rate_day_N | N일차 삭제율 |
참고: 위 표의 저장명 열에서 N은 N일차 지표를 나타내며, 기본 값 범위는 0-30입니다
6.3 인터페이스 파라미터
-
시간:
- 일 단위로 데이터를 수집합니다
- 기본 데이터 시간대는 UTC 시간입니다
- 데이터를 일별 독립 데이터(당일 지표 표시)로 할지, 누적 데이터(0일차부터 N일차까지 누적)로 할지 선택할 수 있습니다
- 완전하지 않은 날(예: 계산 대상 N일차가 오늘인 경우)의 데이터 콜백을 허용할지 선택할 수 있습니다
6.4 데이터 저장 규칙
기본적으로 수집한 데이터는 이벤트 형태로 AE 프로젝트에 기록됩니다:
- Cohort API 집계 지표 인터페이스는 집계 데이터를 반환하므로 고정값을 유저 식별자로 사용합니다. 모든 데이터가 하나의 가상 유저에 연결되어 있다고 보면 됩니다
- 데이터의 date 필드, 즉 유저의 어트리뷰션/전환 시간을 이벤트의 #event_time으로 사용합니다
- 데이터 이벤트 이름은 appsflyer_cohort_api입니다
- 나머지 필드는 모두 저장됩니다
6.5 데이터 연동 설정 정보 템플릿
위 문서를 읽은 후 다음 정보 템플릿을 작성하여 ThinkingAI의 고객 성공 매니저에게 보내는 것을 권장합니다:
수집 데이터 인터페이스: AppsFlyer Cohort API 집계 데이터 인터페이스
--------
회사 이름: XXX
AE 프로젝트 환경: (SAAS/프라이빗 배포)
AE 프로젝트 이름: XXX
AE 프로젝트 APP ID: XXX
데이터 수신 주소 push_url: XXX
---------
AppsFlyer API Token: xxxxxxxx
AppsFlyer App ID: xxxxxxxx
---------
데이터 수집 시간대: XXX(기본값은 UTC 시간)
완전하지 않은 날의 데이터 허용 여부: 예/아니요(기본값 "예")
데이터의 시간 집계 타입: 당일/누적(기본값은 누적)
그룹 차원: XXX, XXX(기본값 date,pid,geo,c,af_adset,af_ad,af_channel)
지표 필드: XXX(기본값은 revenue, 하나만 설정 가능)
과거 데이터 수집 기간: yyyy/mm/dd - yyyy/mm/dd
정기 수집: 매일 X시에 이전 N일의 데이터 수집
7. Data Locker와 Cost ETL
Data Locker는 AppsFlyer의 데이터 전송 저장 서비스로, 다양한 데이터를 AWS 또는 GCS 클라우드 스토리지로 전송하여 저장할 수 있습니다.
Cost ETL은 AppsFlyer의 비용 데이터 전송 저장 서비스로, 각 미디어 채널의 캠페인 비용 데이터를 AWS 또는 GCS 클라우드 스토리지로 전송하여 저장할 수 있습니다.
현재 AE 시스템은 AWS S3 및 GCS 데이터의 통합을 지원합니다. 전송 대상 클라우드 스토리지 타입에 따라 다음 문서를 확인하십시오:
- AWS S3
- S3 데이터 DataX 연동 방식: DataX 플러그인으로 데이터 연동을 완료합니다
- GCS
- Firebase-Bigquery-GCS 데이터 마이그레이션 기술 방안: 코드 방식(GCS 라이브러리)으로 데이터를 정제하여 AE 시스템으로 전송합니다. 해당 문서의 2.2.2 및 2.2.3 부분을 참고하십시오
8. 연동 테스트 및 통합 후 데이터 활용
1. 연동 테스트
1.1 Push API 인터페이스
데이터 관리 -> 유저 속성 관리 페이지에서 관련 어트리뷰션 데이터를 확인할 수 있으며, 관련 유저 속성이 있으면 통합에 성공한 것입니다.
| AppsFlyer 콜백 필드 | AE 저장 후 유저 속성 이름 | 데이터 타입 |
|---|---|---|
| media_source | #appsflyer_media_source | 텍스트 |
| campaign | #appsflyer_campaign | 텍스트 |
| af_adset | #appsflyer_adset | 텍스트 |
| af_ad | #appsflyer_ad | 텍스트 |
이벤트 테이블 저장을 활성화한 경우 데이터 관리 -> 이벤트 관리 페이지에서 관련 이벤트 데이터를 확인할 수 있으며, 이벤트 이름은 AppsFlyer에서 정의한 이벤트 이름과 같습니다.
1.2 Pull API 및 Master API 집계 데이터 인터페이스
데이터 관리 -> 이벤트 관리 페이지에서 관련 이벤트를 확인할 수 있으며, 관련 이벤트가 있으면 통합에 성공한 것입니다.
| 인터페이스 | 리포트 이름 | AE 저장 후 이벤트 이름 | 데이터 타입 |
|---|---|---|---|
| Pull API | 전체 미디어 채널 광고 리포트-일별 | appsflyer_partner_by_date | 텍스트 |
| Pull API | Facebook 광고 리포트-일별 | appsflyer_facebook_partner_by_date | 텍스트 |
| Master API | LTV, Activity, Retention 관련 KPIs | appsflyer_master_ltv_act_retention_kpis | 텍스트 |
| Master API | LTV, Activity, Retention 및 Cohort 관련 KPIs | appsflyer_master_ltv_act_retention_cohort_kpis | 텍스트 |
2. 데이터 활용
2.1 어트리뷰션 정보를 중심으로 분석
2.2 채널, 광고 그룹, 캠페인, 광고 소재 차원별로 미디어 간 활성화, 비용, 수익, ROAS를 계산하여 비교
2.3 하나의 플랫폼에서 마케팅 데이터와 유저 행동 데이터를 함께 확인하여 여러 플랫폼을 오가는 작업 감소
2.4 데이터 연계 분석(예: 수익화, 기타 미디어 채널 데이터와 연결)
2.5 revenue / cost로 미디어 채널별 ROAS 계산
2.6 비자연 유저의 핵심 유저 행동(예: 결제 전의 특정 이벤트, 특정 핵심 콘텐츠의 리텐션)으로 해당 유저 그룹의 품질을 분석하여 분석에서 의사 결정까지 걸리는 시간 단축
2.7 이벤트 속성 통합 후 데이터 타입
AppsFlyer Pull API로 수집한 데이터의 이벤트 속성은 기본적으로 문자열 타입으로 연동됩니다. AE 시스템의 가상 속성 기능으로 문자열 타입 필드를 다른 타입으로 변환할 수 있습니다. 예:
- install 속성을 숫자 타입으로 변환: "af_install_number"(데이터 타입은 숫자 선택)
- total_cost 속성을 숫자 타입으로 변환: "af_total_cost_number"(데이터 타입은 숫자 선택)
9. 자주 묻는 질문
AppsFlyer FAQ를 참고하십시오

