Google アナリティクス 4 (GA4) アトリビューション ポストバック連携の設定

文書

概要

Singularはサードパーティ分析パートナーとしてGoogle Analytics 4(GA4)との連携をサポートしています。
このガイドでは、Singular を使用してモバイルアプリの GA4 測定を設定し、必要なパラメータが正しく渡されるようにする方法について説明します。

Singularはキャンペーンアトリビューションデータを自動的にGA4に転送しますが、特定の認証情報や識別子はSingularのUIおよびSDKで設定する必要があります。

情報:Singularは測定とレポート作成のためにアトリビューションデータをGA4に転送します。ファネルやユーザー行動分析などのプロダクト分析は、引き続きGA4またはFirebase内で直接処理する必要があります。


SingularからGA4へ送信されるパラメータ

Singularは自動的に以下のパラメータをGoogle Analytics 4に転送します:

  • キャンペーン名

  • キャンペーンID

  • ソース

  • 媒体

  • タイムスタンプ

情報:これらのパラメータは、Singularのアトリビューションデータに基づいて自動的に設定されます。追加のSDK設定は不要です。


Singularパートナー設定UIでの必須設定

GA4計測を有効化するには、以下の値をSingularダッシュボードで直接設定する必要があります。

Screenshot of Singular GA4 partner configuration

1. APIシークレット (api_secret)

GA4測定プロトコルAPIシークレット。

確認方法:

GA4 Admin → Data Streams → Select your stream → Measurement Protocol → Create API Secret 

重要:APIシークレットは、SingularがMeasurement Protocol経由でGA4にイベントを送信するために必須です。この値がない場合、GA4イベントは記録されません。


2. Firebase App ID (firebase_app_id)

モバイルアプリに関連付けられたFirebase App ID。

確認方法:

Firebase Console → Project Settings → General → Your Apps → App ID 
Screenshot of Firebase App ID location

注:Singularで設定するfirebase_app_id は、本番ビルドで使用するFirebaseアプリと完全に一致していることを確認してください。不一致があると、GA4がイベントをアプリに関連付けられなくなります。


Singular SDK での必須設定

3. アプリインスタンスID (app_instance_id)

app_instance_id は、Firebaseアプリの特定のインストールを一意に識別するIDです。

要件:

  • Firebase SDKから値を取得

  • 本ガイドに記載の通り、GLOBAL_PROPERTIESを使用してSingular SDKに渡す

  • 正確なプロパティ名を使用:app_instance_id

注意: app_instance_idSingular SDK の初期化前に設定する必要があります。初期化後にこの値を設定すると、GA4 イベントがドロップされたり、誤ってアトリビュートされたりする可能性があります。


SDK実装例(Android – Kotlin)

グローバルプロパティを使用して、アプリケーションのライフサイクル全体でアプリレベルおよびユーザー固有の識別子をトラッキングします。

// Initialize the Singular SDK with app-level global properties val config = SingularConfig("SDK_KEY", "SDK_SECRET") .withGlobalProperty("app_instance_id", firebaseAppInstanceId, true) Singular.init(applicationContext, config)

// Set a third-party identifier on user login
fun onUserLogin(thirdPartyUserId: String) {
val success = Singular.setGlobalProperty(
"third_party_identifier",
thirdPartyUserId,
true
)
if (success) {
Log.d("Singular", "Third-party identifier set successfully")
}
}

// Clear the third-party identifier on user logout
fun onUserLogout() {
Singular.unsetGlobalProperty("third_party_identifier")
Log.d("Singular", "Third-party identifier cleared")
}

ヒント:セッションをまたいで永続化すべき識別子にはsetGlobalProperty を使用してください。ユーザーログアウト時など、識別子が無効になった場合は必ずunsetGlobalProperty を呼び出してください。


検証とトラブルシューティング

設定完了後、統合を検証してください:

  1. api_secretfirebase_app_id が Singular UI に正しく保存されていることを確認してください

  2. SDK初期化前に app_instance_id が設定されていることを確認

  3. GA4DebugViewまたはリアルタイムレポートでイベント受信を確認

  4. Singular SDKの初期化エラーについてアプリログを確認してください

情報:GA4では新規イベントの表示に数分かかる場合があります。テスト中はDebugViewを使用してほぼリアルタイムで検証してください。

コメント

サインインしてコメントを残してください。