用Google Analytics 做A/B 测试

2019-03-12 08:46:11来源: semwatch.org 阅读 ()

新老客户大回馈,云服务器低至5折

最近正在给一个电子商务的客户做条幅广告转化率的测试,但我们发现数据有问题:Website Optimizer 工具不能对部分消费者的具体行为测试进行设置。我们需要知道有多少人点击了测试广告,以及有多少发生了购买。

我们的解决方案是添加一些新的代码,来确定谁看到了什么,让 Google Analytics 里的群体来实现这一方面数据的监控。通过这种方法我们能够更全面的了解任何给定测试,更准确地确定投资回报率。

A/B测试

添加代码之前我们先回顾一下测试样本的背景。你运营的是一家销售耳机的网站,现在想要测试下某新款高端耳机的两版本的首页。你用A/B实验来换掉了原先的首页,重要的是获得尽可能多的收入。

将消费者体验简化后看起来会是像这样的路径:

如果我们只使用 Website Optimizer工具就会有问题,从哪一点到哪算是转化呢?在 Website Optimizer 中我们只能选择一个A点和一个B点,我们无法跟踪整个渠道中客户的路径。这就是我们努力要克服的障碍。如果只是单一点到点的的跟踪,我们只能选择以下项目之一来衡量:

访客是否有点击条幅广告?

访客是否添加产品到购物车?

访客是否发生购买行为?

但事实上没有哪个一个单一的转化能说明全部问题,我们需要更多信息。

开始动手

Website Optimizer 确实是跟踪任意一个路径的绝好工具,但它无法追踪所有,不过幸好 GA 可以。我们的目标则是建立一个可以跟踪所有路径的易用系统,帮助我们确定会在哪个环节流失客户。

我将我们使用的PHP代码一并给了出来,对你也许会有些帮助。如果你对编码工作没什么概念,下面的PHP代码可能会让你有些头疼。简单来说,这段代码就是起到了以下作用:

我们是要确保,如果用户回访时A/B测试仍在继续进行的话,他们能有和上次访问相同的体验。

class SplitTest
{
public $strSelected = “”;
public function __construct($strCookie, $arrShuffle, $strOverride, $datCookieAge=null)
{
$datCookieAge = empty($datCookieAge) ? time()+60*60*24*7 : $datCookieAge;
// Code for segmenting to track in Analytics
$strSelected = sanitizeInput($strOverride);
$strSelected = isset($_COOKIE[$strCookie]) && empty($strSelected) ? $_COOKIE[$strCookie] : $strSelected;
// If still empty, randomize it.
if (empty($strSelected))
{
shuffle($arrShuffle);
$strSelected = $arrShuffle[0];
}
if (!in_array($strSelected, $arrShuffle))
{
$strSelected = $arrShuffle[0];
}
$this->strSelected = $strSelected;
setcookie($strCookie, $strSelected, $datCookieAge);
}
}

你会需要调用以下代码:

<?
$arrShuffle = array(“layout1″, “layout2″);
$SplitTest = new SplitTest(“layoutTestName”, $arrShuffle, “variableName”);
$strWhichVersionToShow = $SplitTest->strSelected;
?>
<script language=”javascript”>
pageTracker._setVar(‘<?= $strWhichVersionToShow ?>’);
</script>
<?
if ($strWhichVersionToShow == “layout1″)
{
// Show the first layout here
}
elseif ($strWhichVersionToShow == “layout2″)
{
// Show the second layout here
}
?>

这段 JavaScript 会在 GA 里设置自定义群体。一旦你的访问者开始浏览首页,他们就可以看到两个首页版本之一,Analytics会自动分配到一个或另一个给访问者。以新定义的群体创建自定义群体。

此外测试布局时,你不希望访问者都到同一个群体里,看到同一个页面。为了避免这种情况,可以使用已经嵌入到类里的override call:

yourdomain.com / homepage.php?variableName = layout1

这样,你和你的团队就可以手动在不同的布局之间随时来回切换了。

结束语

关于自定义群体得了解一点,Google Analytics 只允许用户被分组在一个单一群体里。如果您的网站已经在其他内部流程环节使用了群体,有可能上述做法不适用。这也意味着,你只能一次运行一个测试,但是这并不是说上述方法不对。你也只会一次运行一个A/B测试,对吧?

这种方法可能会过于简化你的需求,但它可以让你长期了解关系到重大决定的所有的信息。

本文首发 SEM Watch ,转载请注明出处。欢迎大家留言或者来信(talk[at]SEMWatch.org)

原文链接:http://semwatch.org/2009/12/using-google-analytics-as-an-alternative-to-website-optimizer

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:网络中人:网络营销之邮件营销探秘四步

下一篇:配置kloxo的Lighttpd支持phpwind伪静态