SiteCatalystでFacebookの「いいね!」を計測する方法

posted Jun 30, 2011, 7:11 AM by Makoto Shimizu   [ updated Sep 11, 2011, 8:47 AM ]

FacebookのJavaScript SDK (XFBML)で実装した場合、「いいね!」ボタンの計測は意外と簡単です。

FB.Event.subscribe('edge.create', function(targetUrl){
s.tl(true,'o','Like');
});
  • カスタムリンクの中に「Like」という行としてカウントされるようになります
  • 次のページに遷移するわけではないので、s.tl()の一つ目の引数は「this」ではなく「true」にします
    (通常のリンクの場合、ここをthisにすると、SiteCatalystのコールが確実に飛んで計測されてから次のページへ遷移するように、onclick時に500msの待ち時間が発生します。callback関数の場合は、そのような処理は不要です。)

ただし、回数だけカウントしても意味がないので、「いいね!」をクリックした人がその後成功イベントに至っているかどうかを見るため、eVarもセットすると良いでしょう。

FB.Event.subscribe('edge.create', function(targetUrl){
s.linkTrackVars='evar7';
s.eVar7='Facebook-Liked';
s.tl(true,'o','Like');
});

同時にURLもpropで計測し、カスタムリンクとそのpropに相関関係(コリレーション)を設定すれば、どのページで「いいね!」が多くクリックされたかが分かります。

FB.Event.subscribe('edge.create', function(targetUrl){
s.linkTrackVars='prop50,eVar7';
s.prop50='D=g';
s.eVar7='Facebook-Liked';
s.tl(true,'o','Like');
});
  • ダイナミック変数を使って、イメージリクエストのURL長さを節約しています
  • コリレーションの設定は、管理画面で可能です

「いいね!」のクリックを成功イベントとして計測するのもおすすめです。エンゲージしてもらえた=マイクロコンバージョンが発生した、という考え方です。

さらに、連携エラー時のJSエラー回避のため、try-catchで囲んでおきます。

try{
FB.Event.subscribe('edge.create', function(targetUrl){
s.linkTrackVars='prop50,eVar7,events';
s.linkTrackEvents='event2';
s.events='event2';
s.prop50='D=g';
s.eVar7='Facebook-Liked';
s.tl(true,'o','Like');
});
}catch(e){}
Comments