設定すること
- Measurement Protocolによる、GA4へのサーバーサイドのクリック転送。広告ブロッカーを使うユーザーでも機能します。
- GA4のデータストリーム設定から生成するMeasurement Protocol APIシークレット。
- 短縮リンクへのクリックごとに、GA4へ
link_clickイベントを送信する。
Elidoは、Measurement Protocolを使って、リンクのクリックごとにサーバーサイドでGA4イベントを送信します。ユーザーが広告ブロッカーを使っているかどうかに関係なく、ページにJavaScriptを追加することなく、イベントがGA4に届きます。
必要なもの
- GA4プロパティ(Universal Analyticsではありません)。
- プロパティの管理パネルへのアクセス権。
- 約5分。
ステップ1:Measurement IDを確認する
- Google Analyticsにアクセスします。
- Admin(左下の歯車アイコン)をクリックします。
- Propertyの下で、Data streams → Webをクリックします。
- ウェブデータストリームをクリックします。
- Measurement IDをコピーします。
G-で始まります(例:G-XXXXXXXXXX)。
ステップ2:Measurement Protocol APIシークレットを作成する
同じデータストリームのページで:
- Measurement Protocol API secretsまでスクロールします。
- Createをクリックします。
- 名前(「Elido」)を付けてCreateをクリックします。
- シークレットの値をコピーします。表示されるのは一度だけです。紛失した場合は新しく作成してください。古いシークレットは削除するまで引き続き有効です。
ステップ3:Elidoで設定する
- Dashboard → Integrations → Google Analytics 4に進みます。
- Measurement IDとAPIシークレットを貼り付けます。
- Saveをクリックし、続けてTest connectionをクリックします。Elidoは、
elido_testとdebug_modeを付けたlink_clickテストイベントを送信します。
Elidoがclient_idを設定する方法
GA4では、イベントをユーザーに紐付けるために client_id が必要です。Elidoはこれを elido-<workspace_id>-<link_id> に設定するため、1つのリンクへのすべてのクリックは、GA4上で1人の疑似的な「ユーザー」として表示されます。これらのイベントは、既存のGA4のウェブセッションとは結び付かず、GA4のユニークユーザー数は人ではなくリンクを反映します。
GA4に送信されるイベント
| Elidoイベント | GA4イベント名 |
|---|---|
| リンククリック | link_click |
イベントパラメータ:workspace_id、link_id、slug、country、device、destination。
トラブルシューティング
Realtimeにイベントが表示されない。 Measurement IDとAPIシークレットを確認してください。APIシークレットが間違っていてもHTTP 204(コンテンツなし)が返りますが、GA4はペイロードを黙って破棄します。Measurement Protocolのエンドポイントを直接呼び出して確認します:
curl -X POST \
"https://www.google-analytics.com/debug/mp/collect?measurement_id=G-XXXX&api_secret=YOUR_SECRET" \
-H "Content-Type: application/json" \
-d '{"client_id":"test","events":[{"name":"elido_test","params":{}}]}'
デバッグ呼び出しが成功すると、{"validationMessages":[]} が返ります。
Realtimeには表示されるが、通常のレポートには表示されない。 Measurement Protocolのイベントは、リアルタイム以外のGA4レポートに表示されるまで24〜48時間かかることがあります。これはGA4の制限であり、Elidoの問題ではありません。