2012-10-29 17 views
7

月額2百万回のユニークサイトの商品所有者として、他のオンラインテストサービスに高い料金を支払うことなく、Googleアナリティクスの目標を追跡できるA/Bテストを行いたいと考えています。 Google独自のコンテンツエクスペリメントを使用するにはJSを使用したリダイレクトが必要です。これはページの読み込み時のパフォーマンスが低下する危険性を排除し、CEがあなたに制限する5つのバリエーション以上を自由に使用できます。オンライン実験でRoute53を効果的に使用するにはどうすればよいですか?

この答えは、Googleのウェブテストを避けるために、Route53を使用しての私の興味をそそっ:

Google Analytics Content Experiments A/B testing server-side code without page refresh

私はこれらの変化にサービスを提供し、追跡することができますどのように知っていただきたいと思います。

Route53はDNSレベルで機能し、トラフィックをさまざまなIPに負荷分散できるため、mydomain.comには50%/ 50%〜200.0.0.1と200.0.0.2を提供できます。その後、サーバーサイドのコードを使用して、使用されているIPを特定し、GoogleアナリティクスのさまざまなJSトラッキングコードを配信することができます。

ユーザーがGoogleアナリティクスの目標ページにアクセスするかどうかを確認することで、キャンペーンの効果を測定できます。

これは正しいのですか、GAやサイトの設定で何か不足していますか?

答えて

3

すでにRoute53を使用していて、異なるタッキングコードを別々にトラッキングしても問題がなければ、サーバーサイドコードを少し使ってそのIDの正しいトラッキングコードを選択できます。以下はPHPの例です。

<?php 
    var $serverIp_trackingCodes_map = array(
     '192.168.1.1' => 'UA-XXXXX-1', 
     '192.168.1.2' => 'UA-XXXXX-2', 
     '192.168.1.3' => 'UA-XXXXX-3', 
     '192.168.1.4' => 'UA-XXXXX-4' 
    ); 
?> 

<script type="text/javascript"> 
    //The usual ga tracking code 
    var _gaq = _gaq || []; 
    //Pass in the tracking code for that server 
    _gaq.push(['_setAccount', '<?php echo $serverIp_trackingCodes_map[ $_SERVER["SERVER_ADDR"] ] ?>']); 
    _gaq.push(['_trackPageview']); 

    (function() { 
     var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; 
     ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; 
     var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); 
    })(); 

</script> 

しかし、1つのトラッキングコードを使用してカスタム変数をサーバー名またはipに設定する方がずっと簡単です。これは後でレポートでフィルタとして使用できます。

<script type="text/javascript"> 
    //The usual ga tracking code 
    var _gaq = _gaq || []; 
    _gaq.push(['_setAccount', 'UA-XXXXX-X']); 
    _gaq.push(['_trackPageview']); 

    (function() { 
     var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; 
     ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; 
     var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); 
    })(); 

    //Set the custom variable 
    _gaq.push(['_setCustomVar', 1, 'ServerIP','<? echo $_SERVER["SERVER_ADDR"]?>']); 

</script> 
関連する問題