DTM併用でAdobe AnalyticsとKaizen Platformを連携させる方法

posted Jun 16, 2016, 11:34 PM by Makoto Shimizu   [ updated Jun 16, 2016, 11:38 PM ]

A/Bテストのツールを導入する場合、単にどのパターン(エクスペリエンス)のコンバージョン率が高かったのかをA/Bテストツール側で判定するだけでなく、長期で間接的な効果を調べたり、エクスペリエンスを見た後のサイト上の行動の違いを詳しく調べるようにすると、短期的で小さな最適化に振り回されず、顧客をより深く理解でき、長期的な視点で成果につながる最適化を回せるようになります。

そのためには、AやBやCなど、振り分けられたエクスペリエンス情報をアナリティクスで計測する必要があります。

Kaizen PlatformとAdobe Analyticsを連携させる方法

どのエクスペリエンスが表示されたかをeVarにセットする方法について、公式マニュアルでは情報が足りないので、補足しておきます。

DTM(Adobeのタグマネージャー)を使わない場合

この場合は、Kaizen Platformの公式ヘルプ通りでOK。s_code.jsでもAppMeasurement.jsでも機能します。

DTMを使ってAAを導入している場合

DTMでAdobe Analyticsをツールとして導入すると、sオブジェクトが見えなくなる(オブジェクトの名前空間が変更される)ので、

Kaizen Platformが提供するメソッド

try { kzs("activateSiteCatalyst"); } catch(e) {}

を実行した時に「s」オブジェクトが見つからず、eVarやPropのセットに失敗します(try-catchしているので、エラーも発生せず、ひっそりと変数のセットが無視される)。

対策はいくつかありますが、sオブジェクトを自分で作成し、windowのスコープに戻すのが一番簡単。

まず、AppMeasurement.jsをAdobeのDTMサーバー上でホストするのをやめます。

次に、「エディタを開く」をクリックして、ライブラリ(AppMeasurement.js)のコードを編集します。

一番上に次の行を追加するだけ。明示的にグローバルのスコープでsオブジェクトを生成するためです。

window.s = new AppMeasurement();

sオブジェクトにアクセスできることを確認

開発ツールのコンソールで「s」と入力して実行すると、sオブジェクトの存在を検証できます。

「s is not defined.」などではなく、Objectが戻ってくればOK。

これで、Kaizen Platformのメソッド kzs("activateSiteCatalyst"); が機能するようになりました。

指定したPropとeVarにエクスペリエンス情報(Exp_***)がセットされました。

Comments