콘텐츠로 건너뛰기

Google Analytics 통합

공유 사용자 ID를 통해 Google Analytics 4와 Pushwoosh를 연결하면 웹사이트나 앱을 방문한 사람이 두 도구에서 같은 사용자가 됩니다. ID가 일치하면 Google Analytics에서 분석하는 사용자가 곧 Pushwoosh에서 메시지를 보내는 사용자가 되며, Google Analytics 데이터를 Pushwoosh 세그먼트로 가져올 수 있습니다.

사용자 ID 선택

Anchor link to

데이터베이스의 계정 ID처럼 자체 시스템에 이미 있는 각 사용자의 식별자를 사용합니다. 같은 값이 Google Analytics에는 사용자 ID로, Pushwoosh에는 User ID로 전달됩니다.

Google Analytics 정책은 사용자 ID에 개인 정보를 허용하지 않으므로 이메일 주소, 전화번호 또는 기타 개인 정보를 사용하지 마세요. 사용자가 로그인하거나 다른 방식으로 식별되는 시점에 ID를 설정합니다.

웹사이트에서 사용자 ID 보내기

Anchor link to

Google 태그의 user_id 매개변수로 Google Analytics에 ID를 전달합니다. Google Tag Manager를 사용하는 경우에는 대신 Google 태그 구성에서 user_id 필드를 설정합니다. Google 문서의 Send user IDs를 참조하세요.

JavaScript
gtag('config', 'G-XXXXXXXXXX', {
'user_id': 'USER_ID'
});

Web Push SDK로 같은 ID를 Pushwoosh에 전달합니다.

JavaScript
Pushwoosh.push((api) => {
api.registerUser('USER_ID');
});

모바일 앱에서 사용자 ID 보내기

Anchor link to

모바일 앱은 Firebase를 통해 Google Analytics 4로 데이터를 보냅니다. Firebase Analytics의 setUserId로 ID를 설정하고(Firebase 문서의 Set a user ID 참조), Pushwoosh SDK로 같은 값을 설정합니다.

Java
FirebaseAnalytics.getInstance(context).setUserId("USER_ID");
Pushwoosh.getInstance().setUserId("USER_ID");
Swift
Analytics.setUserID("USER_ID")
Pushwoosh.sharedInstance().setUserId("USER_ID")

Google Analytics 데이터로 세그먼트 만들기

Anchor link to

Pushwoosh는 두 가지 방법으로 Google Analytics 데이터를 세그먼트로 만들 수 있으며, 두 방법 모두 외부 세그먼트를 사용합니다.

  • Google Analytics 잠재고객 가져오기: Google Analytics에서 이미 만든 잠재고객을 선택합니다. SQL과 BigQuery가 필요하지 않습니다.
  • BigQuery 내보내기 쿼리: 잠재고객으로 표현할 수 없는 조건에 대해, Google Analytics가 BigQuery로 내보내는 원시 이벤트에 직접 SQL을 작성합니다.

두 경우 모두 사용자의 Google Analytics 사용자 ID가 앱의 Pushwoosh User ID와 일치하는 경우에만 사용자가 세그먼트에 포함됩니다. Google Analytics가 익명 클라이언트 ID로만 알고 있는 사용자는 포함되지 않습니다.

Google Analytics 잠재고객 가져오기

Anchor link to

시작하기 전에 Google Cloud 서비스 계정과 해당 JSON 키를 준비합니다. Google Cloud 문서의 Create and delete service account keys를 참조하세요. 그런 다음:

  1. 서비스 계정이 속한 Google Cloud 프로젝트에서 Google Analytics Data API와 Google Analytics Admin API를 사용 설정합니다.
  2. Google Analytics에서 Admin → Property access management로 이동하여 서비스 계정 이메일을 Viewer 역할로 추가합니다. Google Cloud IAM에서 부여한 역할로는 Google Analytics에 액세스할 수 없습니다.
  3. Pushwoosh에서 데이터베이스 유형을 Google Analytics 4 audience로 설정하여 외부 세그먼트를 만듭니다.
  4. GA4 속성 ID를 입력합니다. Google Analytics의 Admin → Property details에서 확인할 수 있습니다.
  5. 키를 서비스 계정 JSON에 붙여 넣습니다.
  6. 잠재고객 불러오기를 클릭하고 잠재고객을 선택합니다.
  7. 연결 확인을 클릭한 다음 생성을 클릭합니다.

Google Analytics는 잠재고객 구성원을 하루에 한 번 정도 업데이트하므로, Pushwoosh도 세그먼트가 사용 중일 때 하루에 한 번 세그먼트를 새로 고칩니다.

BigQuery 내보내기 쿼리

Anchor link to

Google Analytics 4 데이터를 BigQuery로 내보내는 경우, 사용자 이벤트에 대한 모든 SQL 조건으로 사용자를 선택할 수 있습니다. 예를 들어 최근 30일 동안 구매한 모든 사용자를 선택할 수 있습니다.

  1. Google Analytics 4 속성을 BigQuery 프로젝트에 연결하고 일일 내보내기를 켭니다. Google 문서의 Set up BigQuery Export를 따르세요. 그러면 Google Analytics가 매일의 이벤트를 analytics_<property ID>라는 데이터 세트의 events_YYYYMMDD라는 테이블에 기록하며, 앞 섹션의 ID는 user_id 열에 들어갑니다.
  2. Pushwoosh에서 데이터베이스 유형을 Google BigQuery로 설정하고 해당 사용자 ID를 반환하는 쿼리로 외부 세그먼트를 만듭니다. 연결에는 BigQuery Data Viewer 및 BigQuery Job User 역할이 있는 서비스 계정 키를 사용합니다. BigQuery Job User 역할이 없으면 연결 확인과 쿼리 확인이 모두 실패합니다. 둘 다 프로젝트에서 테스트 쿼리 작업을 실행하기 때문입니다.

예를 들어 다음 쿼리는 최근 30일 동안 구매한 사용자를 반환합니다. my-project를 Google Cloud 프로젝트 ID로, analytics_123456789를 데이터 세트 이름으로 바꾸세요.

SQL
SELECT DISTINCT user_id
FROM `my-project.analytics_123456789.events_*`
WHERE event_name = 'purchase'
AND user_id IS NOT NULL
AND _TABLE_SUFFIX >= FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 30 DAY))

Google Analytics는 하루에 한 번 데이터를 내보내므로, 세그먼트에는 전날까지의 활동이 반영됩니다.