Auch Entwickler brauchen Platz zum Spielen

7. April 2013 /

Tracking-Code für einfache A/B-Tests mit Google Analytics

A/B-Tests für Landingpages müssen nicht komplex sein: Die Konversion von Buttons, Teasern kann direkt in Google Analytics gemessen werden.
Google Analytics

Das Google Entwickler-Team hat angekündigt, A/B-Tests für Webseiten direkt in Google Analytics abzuwickeln. Hierfür wird die Funktionalität aus dem Google Website Optimizer in den Umfang von Google Analytics integriert. Nach der Verschmelzung der Analyse-Tools können Vergleichstests sehr einfach unter einem Dach durchgeführt und ausgewertet werden.

A/B-Testmethode: Vor- und Nachteile
A/B-Tests sind eine sinnvolle und sich in der Praxis bewährte Methode, die Conversion-stärkste Variante einer Webseite oder eines Elements innerhalb einer Page zu berechnen: Die Version mit der höchsten Conversionrate gewinnt das Rennen.

Der wesentliche Nachteil solcher Messtools für A/B-Testing sind mindestens zwei eigenständige Varianten einer Webseite: Variante A mit grünem Button und Variante B mit rotem Button. Um Aufrufe der Webseiten zu protokollieren und zu differenzieren, müssen beide unter jeweils eindeutigen URLs (Parameter gelten ebenfalls) erreichbar sein. Nach abgeschlossener Testphase dürfen die URLs zu Testseiten nicht einfach offline gehen, da der Nutzer die Links eventuell im Social Web geteilt oder als Favorit gespeichert hat. Der Betreiber der Website muss also sicherstellen, dass die Links weiterhin funktionieren und entsprechende Weiterleitungen einrichten.

Wie man sieht, gehören zu einem A/B-Test nicht nur Vorbereitungen (Anfertigungen unterschiedlicher Versionen), auch nach der Erprobung ist Einiges zu tun (Lauffähige Umleitungen usw.). Bei ausgiebigen Conversionrate-Experimenten gerechtfertigt sich der Aufwand in voller Höhe. Bei kleineren Untersuchungen wie Änderungen an Teasern oder Überschriften lohnt sich die Leistung dagegen kaum – da ist ein kürzerer Weg zum Ziel gewünscht.

Beispiel aus der Praxis
Um die Bezeichnung der Call-to-Action Schaltflächen (Download / Kaufen) auf der WordPress SEO Plugin Website zu bestimmen, wurde ein simpler A/B-Test angelegt. Dieser basiert ebenfalls auf Google Analytics, jedoch nicht auf die Funktionalität aus dem Google Website Optimizer. Vielmehr wird eine benutzerdefinierte Variable in Google Analytics zur Zählung der Aufrufe einzelner Testkandidaten herangezogen. Die Fallunterscheidung erfolgt im modifizierten Tracking-Code mithilfe von JavaScript. Abweichende Seitenvarianten entfallen somit.

A/B-Test in Google Analytics als Benutzerdefinierte Variable

A/B-Testresultate in Google Analytics als Benutzerdefinierte Variable

Tracking-Code mit A/B-Tests
Hierfür wird der bestehende Google Analytics Tracking-Code erweitert und mit Handlungsaktivitäten versehen. Zum Rotieren sind es im Beispiel insgesamt vier Versionen, die gleichgerecht aufgeteilt sind: Jeweils 25 Prozent Wahrscheinlichkeit zur Anzeige. Je nach ermittelter Variante kommt es zur Handlung: Text, Bild und weitere HTML-Elemente können je nach Aufteilung innerhalb der Seite eingeblendet bzw. getauscht werden.

Hat der Besucher eine Version der Seite zu Gesicht bekommen, wird diese als Kennzahl in der Google Analytics Benutzervariable abgelegt. Auf diese Weise sieht der Besucher immer die gleiche Version der Testseite und zwar solange, bis seine GA-Session gültig ist.

Der Original-Tracking-Code kann nach der Anpassung des nachfolgend abgebildeten Snippets ausgetauscht werden. Ab sofort füllt Google Analytics die benutzerdefinierte Variable mit zugewiesenem Wert und lässt die Kennzahl bei der Auswertung von Zielen oder E-Commerce-Umsätzen als Filtermerkmal heranziehen. Sortierungen, Kombinationen mit anderen Analytics-Werten sind ebenfalls möglich. Die aktuelle Statistik der Testgruppen ist in Google Analytics unter Besucher / Benutzerdefiniert / Benutzerdefinierte Variablen zu finden.

Initial-Snippet für den Tracking-Code samt A/B-Test

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-Y']);
_gaq.push(['_trackPageview']);
_gaq.push(
function() {
var tracker = _gat._getTrackerByName(),
group = tracker._getVisitorCustomVar(1),
random = Math.random();
if ( typeof(group) === 'undefined' ) {
if ( random < 0.25 ) {
group = 'A';
} else if ( random < 0.50 ) {
group = 'B';
} else if ( random < 0.75 ) {
group = 'C';
} else {
group = 'D';
}
_gaq.push(
['_setCustomVar', 1, 'A/B Test', group, 1]
);
}
switch(group) {
case 'A':
/* Handlung für Version A */
break;
case 'B':
/* Handlung für Version B */
break;
case 'C':
/* Handlung für Version C */
break;
default:
/* Handlung für Version D */
break;
}
}
);
(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>
view raw gistfile1.js hosted with ❤ by GitHub

Fazit
Zügig zu implementierende Lösung zur Messung von mehreren Alternativen eines Seitenelementes. Ohne sich Sorgen um Permalinks, Seitenversionen und Verlinkungen zu machen. Beim Beenden der Testphase wird der Snippet auf den offiziellen Tracking-Code aus Google Analytics umgestellt.

Sergej Müller

[Der Autor]Sergej Müller ist enthusiastischer Software Engineer mit Schwerpunkten Webentwicklung, Apps und WordPress. Seit 2007 programmiert und vertreibt er wpSEO, das zugkräftige SEO-Plugin für WordPress-Blogs.

Thematisch ähnliche Beiträge