TrueSocialMetrics チームのメンバーによる ~ 2 分
今日、マーケティングと分析は、PC 時代の後、新たな課題に直面しています。マルチデバイストラッキングです。顧客はスマートフォン、ラップトップ、家庭用 PC などを使用しており、当社の分析ソフトウェアはそれらを異なるユーザー セッションとしてカウントします。しかし、そうではありません。また、間違ったデータは、成功するために時間とお金をどのチャネルに投資すべきかという主な質問への回答には役立ちません。
まず、GA Universal アカウントにサインアップする必要があります。
一般的なコードは次のようになります。
<スクリプト>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(引数)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('作成', 'UA-XXXX-Y');
ga('send', 'pageview');
</script>
ただし、GA Universal は、ランダムな userId の代わりに GA Cookie のカスタム ID を設定するために、構成で特別な userId パラメータを提供しています。この大幅な変更により、複数のデバイスでユーザーを追跡できます。これは、顧客の電子メールまたはデータベース内の ID に基づくカスタム訪問者 ID を使用して、スマートフォン/ラップトップ/PC セッションを 1 つのクロスデバイス セッションにマージできるためです。
そこで、認証ユーザーに userId オプションを追加し、非認証訪問者に対してのみ GA 自動生成 Cookie ID を保存しましょう。
<?if ($isAuthenticatedUser):?>
ga('create', 'UA-XXXX-Y', {'userId': '<?=$userId?>' });
<?else:?>
ga('作成', 'UA-XXXX-Y');
<?endif;?>
$isAuthenticatedUser
- 現在の訪問者が認証されている場合は true
$userId
- データベースからの認証済みユーザーの一意の ID
この小さな変更が大きな違いを生みます。これからは、Web サイトにサインインするすべてのユーザーが、これらすべてのデバイスを介して正しく追跡されます。ただし、新しい GA ユニバーサル アカウントを使用するだけでなく、GA ユニバーサルが十分なデータを収集するまで、Web サイトにクラシック GA コードを保持することもお勧めします。
#### 使い方 ?
サインインする前に、訪問者は _ga Cookie を持っています:
ご覧のとおり、_ga Cookie はユーザーの承認後に変更されましたが、適切に機能し、訪問者セッションのすべての履歴が顧客セッションにマージされます。したがって、ID を変更するという事実にもかかわらず、GA でのセッション遷移は完全にうまく機能します。これは、ユーザーが認証 (または登録) 後に最初のページを表示した瞬間に、GA が従来の訪問者 id_ga 値と新しい設定へのアクセスを取得するためです。ユーザー ID パラメータ。これらすべてにより、GA は 2 つのユーザー セッション (サインイン (サインアップ) の前後) を 1 つのグローバル セッションにマージできます。その結果、最初の訪問からセッションがスムーズに開始され、すべてのユーザーのデバイスを通過することがわかります。
過去 4 か月間テストしましたが、見事に動作します。
異なる Web サイトで同じ userId を使用することを心配している場合でも、心配する必要はありません。 GA は Cookie 値 + ドメインを一意の内部識別子として使用するため、問題はありません。つまり、2 つの Web サイトが顧客の電子メールに基づいて同じ userId 値を設定した場合、それらは異なるドメイン (および異なる GA プロファイル ID) を使用しているため、データは破損しません。
Google アナリティクスの最後の変更に従って記事を更新しました: clientId は userId に名前が変更されました。
次の大きな変更点は、測定プロトコルです。この新しいバージョンの助けを借りて、支払いや登録の成功について GA に伝えるために URL に醜いパラメータを追加することなく、アプリケーションから内部的にアクションを追跡できます。
簡単なコードは次のようになります。
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://example.com/path/for/soap/url/");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
'v' => 1,
「tid」=>「UA-XXXX-Y」、
‘cid’ => $_COOKIE[‘_ga’],
‘t’ => ‘ページビュー’,
‘dp’ => ‘/支払い/成功’,
));
curl_exec($ch);
そこには:
v
- プロトコル バージョン、現在は「1」
tid
- GA トラッキング ID
cid
- クライアント ID (認証ユーザーの場合は md5(email) または md5(id) にすることができます)
t
- ヒット タイプ (ページビュー/イベント)
dp
- ページビューのページ
このコードは、ページ「/payment/success」のページビューを GA に送信します。アプリケーションでこれを使用して、アクションを追跡できます。また、イベント トラッキング用の同じ単純なコードもあります (A/B テストで使用したり、アプリケーション イベントを発生させたりする場合)。
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://example.com/path/for/soap/url/");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
'v' => 1,
「tid」=>「UA-XXXX-Y」、
‘cid’ => $_COOKIE[‘_ga’],
‘t’ => ‘イベント’,
‘ec’ => ‘payment’, // カテゴリ
‘ea’ => ‘small’, // パッケージ
‘el’ => ‘small package 1 year subscription’, // ラベル
‘ev’ => ‘324’, // このアクションの値 $324 私の場合
));
curl_exec($ch);
ソース (以下のリンクの下に他のサンプルがあります): - The Magic of Universal Analytics: Strategy, Tactics, Implementation Tips