
OneSignal + Mixpanel 통합 개요
주요 이점
- Mixpanel로 메시지 이벤트 보내기: 푸시, In-App, 이메일 및 SMS 전반에서 전달, 클릭, 실패 등을 추적합니다.
- 실시간 인사이트 – Mixpanel 제품 분석과 OneSignal 참여 지표를 통합합니다.
- 데이터 기반 캠페인 – Mixpanel의 행동 세분화를 사용하여 더 스마트한 재참여를 실행합니다.
- Mixpanel에서 Cohort 가져오기: 행동 기반 Cohort를 OneSignal로 자동 동기화하여 타겟팅용 필터로 사용합니다.
- 개인화된 메시징 – 사용자가 Mixpanel Cohort에 진입하거나 나갈 때 컨텍스트형 OneSignal 메시지를 트리거합니다.
요구 사항
- Mixpanel 계정
- OneSignal 유료 플랜
- User 및 External ID가 설정된 OneSignal 앱
설정
OneSignal에 Mixpanel 추가
OneSignal에서 Data > Integrations > Mixpanel로 이동하여 Activate를 클릭하세요.
OneSignal에서 Mixpanel 통합 활성화
- Project Token을 찾아 OneSignal에 복사하여 붙여넣으세요.
- Data Residency를 확인하세요. Mixpanel의 EU 서버를 사용하는 경우 Send events exclusively to Mixpanel’s EU Residency Server 상자를 선택하세요.
메시지 이벤트 선택
Mixpanel로 보내려는 OneSignal 메시지 이벤트를 선택하세요. 완료되면 Activate를 클릭하세요.
OneSignal의 Mixpanel 설정
Mixpanel에 OneSignal 추가
Mixpanel Integrations에서 OneSignal을 추가하세요.
Mixpanel에서 OneSignal 통합 추가
OneSignal - APP_NAME과 같이 식별 가능한 이름으로 설정하세요. 여기서 APP_NAME은 OneSignal의 앱 이름입니다.
OneSignal **Settings > Keys & IDs**에서 다음 데이터가 필요합니다:
- App ID
- API Key
USER ID 매핑
두 시스템 간에 사용자를 일치시키려면:- 공유 식별자 사용: OneSignal의 **External ID**는 선택한 Mixpanel User ID Property(예: user_id)와 일치해야 합니다.
- 선택한 사용자 속성이 Mixpanel 및 OneSignal User Profile 전체에 존재하는지 확인하세요.

OneSignal 속성을 설정하는 Mixpanel 대시보드

Mixpanel > Users > User Profile Properties

OneSignal > Audience > Users > External ID

User ID Property 매핑에 사용되는 경우 Distinct ID 설정 시 주의하세요.
이제 Mixpanel에서 OneSignal로 Cohort를 내보내고 OneSignal에서 Mixpanel로 메시지 이벤트를 수집할 수 있습니다.
Mixpanel Cohort를 OneSignal로 내보내기
이전 단계에서 설명한 일치하는 User ID/External ID 속성이 있는 한 Mixpanel Cohort 내의 사용자를 OneSignal 내의 사용자와 동기화할 수 있습니다. Mixpanel에서 사용자 데이터를 내보내는 것은 OneSignal에서 사용자를 생성하지 않습니다. 사용자가 이미 존재하고 일치하는 External ID가 있어야 합니다. Mixpanel에서 OneSignal로 사용자를 내보내려면:- Mixpanel에서 Cohort를 만드세요.
- Options > Export to… > OneSignal Connection 이름을 클릭하세요.

Mixpanel Cohort를 OneSignal로 내보내는 방법
- 동기화 빈도를 선택하고 Begin Sync를 누르세요.

Mixpanel 빈도 옵션
OneSignal Segment 생성
- 동기화된 Cohort는 OneSignal에서 Mixpanel Segment 필터로 나타납니다.
- 다음 조건이 충족되면 Cohort에 대한 Segment가 자동으로 생성됩니다:
- Mixpanel Cohort의 사용자가 일치하는 External ID를 가진 OneSignal에도 존재합니다.
- OneSignal에서 Segment 제한을 초과하지 않아야 합니다.
Mixpanel은 OneSignal에서 Segment를 생성하려면 최소한 한 명의 일치하는 사용자가 필요합니다.
Segment가 생성되면 나중에 Cohort에 사용자가 없더라도 OneSignal에 남아 있습니다. 이 경우 사용자가 다시 추가될 때까지 Segment는 비어 있는 것으로 표시됩니다.

Mixpanel Cohort에서 Segment를 만드는 방법
Mixpanel에서 메시지 이벤트 추적
연결되면 OneSignal은 메시지 이벤트를 실시간으로 Mixpanel로 보냅니다. 이를 테스트하려면 OneSignal에서 자신에게 메시지를 보낸 다음 Mixpanel의 사용자 프로필 페이지로 이동하세요. Activity Feed 내에서 이벤트가 채워지는 것을 볼 수 있습니다:
OneSignal 메시지 이벤트가 있는 Mixpanel Activity Feed 예제
메시지 이벤트
OneSignal이 Mixpanel로 보내는 메시지 이벤트 종류입니다. OneSignal Integrations Settings 내에서 Mixpanel 프로젝트로 보낼 이벤트를 선택할 수 있습니다.| Message Event Kind (OneSignal) | Message Event Name (Mixpanel) | Event Description |
|---|---|---|
| Push Sent | Message Sent | Push notification successfully sent. |
| Push Received | Message Received | Push notification successfully received. |
| Push Clicked | App Opened from Push | Push notification touched on device. |
| Push Failed | Push Failed | Push failed to be sent. Check the failed message report in OneSignal. |
| Push Unsubscribed | Push Unsubscribed | The Subscription unsubscribed from push. |
| In-App Impression | Message Sent | In-App Message successfully displayed on device. |
| In-App Clicked | Message Opened | In-App Message clicked on device. |
| In-App Page Displayed | In-App Page Displayed | In-App Message page is displayed. |
| Email Sent | Message Sent | Email successfully sent. |
| Email Received | Message Received | Email received by recipient. |
| Email Opened | Message Opened | Email opened by recipient. |
| Email Link Clicked | App Opened from Push | Email link clicked on. |
| Email Unsubscribed | Email Unsubscribed | Email unsubscribed by recipient. |
| Email Reported As Spam | Email Reported As Spam | Email reported as spam by recipient. |
| Email Bounced | Email Bounced | Email returned to sender due to permanent error. |
| Email Failed | Email Failed | Could not deliver the email to the recipient’s inbox. |
| Email Suppressed | Email Suppressed | The email address is on your suppression list. Either it bounced or marked your emails as spam. |
| SMS Sent | App Opened from Push | SMS sent to recipient. |
| SMS Failed | SMS Failed | SMS failed to send. |
| SMS Delivered | SMS Received | SMS successfully delivered. |
| SMS Undelivered | SMS Undelivered | The SMS could not be sent. |
이벤트 속성
OneSignal에서 Mixpanel로 보낸 모든 이벤트에 있는 속성입니다| PROPERTY NAME | DESCRIPTION |
|---|---|
| Distinct ID | 메시지와 연결된 external_id입니다. |
| Message ID | 개별 메시지의 식별자입니다. |
| Message Name | 메시지 이름입니다. |
| Message Title | 메시지 제목입니다. |
| Message Contents | 메시지 내용입니다. |
| message_type | 보낸 메시지 유형입니다. 푸시, In-App, 이메일, SMS. |
| template_id | 사용된 메시지 템플릿입니다(API 및 Journey 메시지). |
| subscription_id | OneSignal 설정 장치/이메일/SMS 식별자입니다. |
| device_type | 메시지를 받은 장치 유형입니다. |
| language | 장치의 2자 언어 코드입니다. |
| source | onesignal (모든 이벤트의 소스로 표시됨) |
FAQ
Cohort 및 Segment 수가 일치하지 않는 이유는 무엇인가요?
- 누락되거나 일치하지 않는 External ID 일치하는 OneSignal External ID 및 Mixpanel User ID가 있는 사용자만 포함됩니다. 이 통합은 사용자 또는 Subscription을 생성하지 않습니다.
- 구독 취소한 사용자 OneSignal Segment는 구독된 Subscription의 수만 표시합니다. 구독 취소한 Subscription은 Journey 또는 In-App 메시지에서 사용할 수 있습니다.
- OneSignal에 존재하지 않거나 잘못된 External ID를 가지고 있습니다.
- 구독 취소한 Subscription을 가지고 있습니다.
구독 취소한 사용자가 Mixpanel에서 동기화되나요?
예, 하지만 현재 OneSignal Segment 수에서 제외됩니다. 다른 Subscription이 있거나 Subscription 유형이 지원하는 경우 Journey 또는 In-App 메시지를 통해 여전히 메시지를 보낼 수 있습니다.전달 데이터가 일치하지 않는 이유는 무엇인가요?
단일 사용자는 여러 Subscription(푸시 장치, 이메일 주소, 전화번호)을 가질 수 있습니다. 각 Subscription은 자체 전달 이벤트를 생성합니다. 예:- 1명의 사용자 = 2 Android + 1 iOS + 2 Web = 5개의 푸시 Subscription
- 1개의 푸시 메시지 = 최대 5개의 sent/received/clicked 이벤트
subscription_id를 사용하여 정확한 소스를 추적하세요.
누락된 이벤트 문제를 해결하려면:
- 사용자가 식별될 때마다
OneSignal.login이 호출되어 External ID가 설정되는지 확인하세요. OneSignal.logout이 External ID를 제거하지 않는지 확인하세요.- External ID를 변경할 수 있는 API 요청 또는 CSV 업로드를 확인하세요.
사용자/Subscription 이벤트를 어떻게 보낼 수 있나요?
사용자 및 Subscription 수준 이벤트(예: 권한 부여됨, 사용자 로그인/로그아웃)는 자동으로 전송되지 않습니다. OneSignal SDK에는 이러한 이벤트를 추적하여 Mixpanel로 보낼 수 있는 이벤트 리스너가 있습니다:- User State Observer: Mobile SDK , Web SDK
- Permission Observer: Mobile SDK , Web SDK