我已按以下方式设置了Google Analytics实验:
<!-- Load the Content Experiment JavaScript API client for the experiment -->
<script src="//www.google-analytics.com/cx/api.js?experiment=REMOVED>"></script>
<script>
// Ask Google Analytics which variation to show the user.
var chosenVariation = cxApi.chooseVariation();
$(function(){
if (chosenVariation == 1) {
ouibounce(document.getElementById('exit-dialog'), { sitewide: true, cookieExpire: 10, callback: function(){
ga('send', 'event', 'ExitDialog', 'Open');
} });
$("#exit-dialog").on("click", function(){
$("#exit-dialog").hide();
ga('send', 'event', 'ExitDialog', 'Hide', 'Background');
});
$("#exit-dialog .no-thanks").on("click", function(e){
e.preventDefault();
$("#exit-dialog").hide();
ga('send', 'event', 'ExitDialog', 'Hide', 'Button');
});
$("#exit-dialog > div").on("click", function(e){
e.stopPropagation();
});
}
});
</script>
此代码位于我的底部。 这就是我在Google Analytics中看到的内容:
问题是这个目标通常具有<1%的转换率。实验怎么会让它错误呢?
答案 0 :(得分:0)
很难说你的例子,但常见的问题是早期绑定事件监听器。我的意思是你在加载DOM元素之前附加click事件。
我建议您使用函数包装onclick事件设置器,并在实验完全加载后调用此函数。所以你会把它称为回调:
<script>
var setExperimentEvents = function(){
// Ask Google Analytics which variation to show the user.
var chosenVariation = cxApi.chooseVariation();
$(function(){
if (chosenVariation == 1) {
ouibounce(document.getElementById('exit-dialog'), { sitewide: true, cookieExpire: 10, callback: function(){
ga('send', 'event', 'ExitDialog', 'Open');
} });
$("#exit-dialog").on("click", function(){
$("#exit-dialog").hide();
ga('send', 'event', 'ExitDialog', 'Hide', 'Background');
});
$("#exit-dialog .no-thanks").on("click", function(e){
e.preventDefault();
$("#exit-dialog").hide();
ga('send', 'event', 'ExitDialog', 'Hide', 'Button');
});
$("#exit-dialog > div").on("click", function(e){
e.stopPropagation();
});
}
});
}
</script>
<script>
try{
setExperimentEvents();
}
catch(e)
{
ga('send', 'event', 'Error', 'Experiment', 'Failed to load',cxApi.chooseVariation());
}
</script>
答案 1 :(得分:0)
问题原来是在选择变体之前发送了pageview事件,因此除非在页面上触发了事件,否则不会将其发送到服务器。