Kampagnen mit Metricalp verfolgen
In diesem Anwendungsfall erfahren Sie, wie Sie Kampagnen mit Metricalp nach Industriestandard und maßgeschneidert über UTM-Parameter und benutzerdefinierte Eigenschaften in der URL verfolgen können.
Es besteht kein Zweifel daran, dass wir großartige Produkte für Kunden entwickeln. Dann müssen wir sie erreichen und unser großartiges Produkt präsentieren. Wir verwenden Kampagnen dafür. Wir nutzen verschiedene Kanäle wie Google, Facebook, Instagram, X (Twitter), LinkedIn usw. Wir verwenden unterschiedliche Arten von Kampagnen wie Suche, Display, Video, Shopping, App-Installation, App-Engagement, Lead-Generierung, dynamische Anzeigen, Karussell-Anzeigen usw. Wir möchten die meisten potenziellen Kunden mit unseren Kampagnen erreichen. Dazu müssen wir unsere Kampagnen ständig optimieren und verbessern. Wir müssen sie verfolgen, analysieren und basierend auf unserer Analyse Maßnahmen ergreifen. Aber wie machen wir das? Whoop whoop, ja, Metricalp ist die Antwort.
Es gibt einige branchenübliche Parameter für Kampagnen. Diese werden UTM-Parameter genannt. UTM-Parameter werden verwendet, um die Wirksamkeit von Marketingkampagnen über verschiedene Traffic-Quellen und Veröffentlichungsmedien hinweg zu verfolgen. Sie werden am Ende von URLs angehängt und von Analysetools wie Metricalp gelesen. Die fünf Standard-UTM-Parameter sind:
- utm_source: Der Verweis auf den Traffic, wie Google, Facebook oder Newsletter.
- utm_medium: Das Medium des Traffics, wie sozial, E-Mail oder CPC.
- utm_campaign: Der Name der Kampagne, wie summer_sale oder new_product_launch.
- utm_term: Das Keyword des Traffics, wie running+shoes oder email+marketing.
- utm_content: Der Inhalt des Traffics, wie ad_variant_a oder email_variation_1.
Wir haben Metricalp so gestaltet, dass es mit diesen UTM-Parametern funktioniert. Wenn ein Kunde Ihre Website mit einem dieser Parameter besucht, wird dieser automatisch an Ereignisse angehängt. Aber Sie können auch Ihre benutzerdefinierten Parameter verwenden, um Ihre Kampagnen zu verfolgen. Wir zeigen unten den branchenüblichen Weg und den Weg mit benutzerdefinierten Parametern.
Okay, beginnen wir mit dem branchenüblichen Weg. Sie können UTM-Parameter in Ihren URLs verwenden, um Ihre Kampagnen zu verfolgen. Glauben Sie es oder nicht, das ist alles, was Sie tun müssen. Metricalp übernimmt den Rest. Wenn Sie also eine Website wie myawesomewebsite.com haben und Ihre Kampagne verfolgen möchten, stellen Sie einfach sicher, dass Ihre Kampagne mit UTM-Parametern auf Ihre Website umleitet. Zum Beispiel, wenn Sie eine Kampagne mit dem Namen "summer_sale" haben und Google Ads dafür verwenden, können Sie eine URL wie diese verwenden:
https://myawesomewebsite.com/?utm_source=google&utm_medium=cpc&utm_campaign=summer_sale
Wenn ein Kunde auf diese URL klickt, wird Metricalp diese Parameter automatisch an die Ereignisse anhängen. Sie sehen diese Parameter in Ihrem Dashboard auf der Quellen-Karte. Siehe das Coverbild dieses Beitrags als Beispiel. Es stammt direkt von Metricalp, wir verwenden UTM-Parameter in unseren Kampagnen. Derzeit haben wir viele X (Twitter)-Kampagnen und einige Google Ads-Kampagnen. Unsere Kampagnenbenennungskonvention ist wie x= (steht für Twitter) ma= (steht für Metricalp) und die Kampagnenanzeigenummer, also etwa "xma12". Wenn Sie das Coverbild überprüfen, sehen Sie, dass wir viele Besuche durch die Kampagne xma5 erzeugt haben. Jetzt versuchen wir, unsere anderen Kampagnen basierend auf Aspekten dieser xma5-Kampagne zu optimieren. Dies ist ein sehr grundlegender Fall, in dem wir Metricalp für Metricalp verwenden.
Es gibt einen Haken an diesem Punkt (wie immer). Wenn Ihre Website ein auf JavaScript basierendes System wie React, NextJS, Angular, Nuxt usw. ist, wird das Metricalp-Skript nur einmal geladen. Die UTM-Parameter werden dann von Metricalp aus der URL gelesen und an allen produzierten Ereignissen angehängt. Zum Beispiel bei den ersten screen_view-Ereignissen, den nächsten screen_view-Ereignissen (Navigation) und dem click_buy-Ereignis. Aber wenn Sie ein serverseitiges oder statisches System wie WordPress, PHP, reines HTML usw. verwenden, wird das Metricalp-Skript bei jeder Routierung (Navigation) wiederholt geladen. Beim ersten screen_view-Ereignis werden die UTM-Parameter an das Ereignis angehängt, aber wenn der Benutzer zu einer anderen Seite navigiert und Sie die gleichen UTM-Parameter nicht an allen neuen URLs anhängen, verlieren Sie die UTM-Parameter. Zum Beispiel haben Sie sie nicht für click_buy-Ereignisse. Aber es wäre großartig, wenn wir das hätten, oder? Wir wissen, welche Kampagne wie viele Kunden gebracht hat, aber es wäre besser, wenn wir wüssten, welche Kampagne mehr click_buy-Ereignisse (Verkäufe) verursacht hat. Das ist im Grunde genommen Marketing 😎 Finden wir heraus, wie wir dies für serverseitige / statische Systeme erreichen können.
Wir werden von einem alten Freund "sessionStorage" profitieren. Wir werden UTM-Parameter im sessionStorage aufbewahren, einer Daten-API, die im Browser verfügbar ist. Es ist ähnlich wie localStorage, aber die im sessionStorage gespeicherten Daten werden gelöscht, wenn die Sitzung endet. Eine Sitzung dauert so lange, wie der Browser geöffnet ist, und übersteht Seiten-Reloads und Wiederherstellungen. Wir können die UTM- Parameter im sessionStorage aufbewahren und an die Ereignisse anhängen. Lassen Sie uns sehen, wie wir das machen können.
<script>
let utmCampaign = sessionStorage.getItem('utm_campaign');
if (!utmCampaign) {
const urlParams = new URLSearchParams(window.location.search);
utmCampaign = urlParams.get('utm_campaign');
if (utmCampaign) {
sessionStorage.setItem('utm_campaign', utmCampaign);
}
}
window.metricalp = window.metricalp || {
queue: [],
sharedCustomProps: {
_global: {
utm_campaign: utmCampaign ?? undefined
},
},
event: function (e) {
this.queue.push(e);
},
};
</script>
<script src="https://cdn.metricalp.com/event/metricalp.js" data-tid="YOUR_TID" async></script>
Jetzt überprüfen wir, ob utm_campaign im sessionStorage vorhanden ist. Wenn nicht, prüfen wir die URL darauf. Wenn es in der URL vorhanden ist, speichern wir es im sessionStorage. Dann übergeben wir es global für alle Ereignisse. Dies ist besser als das gleiche UTM-Parameter an alle URLs zu übergeben. Es wird Ihre URLs nicht durcheinanderbringen. Sie können diesen Ansatz für verschiedene Parameter (andere UTM-Parameter und/oder benutzerdefinierte Parameter) und Szenarien verwenden.
Lassen Sie uns dies auf benutzerdefinierte URL-Parameter anwenden. In diesem Fall müssen unsere JS-basierten Frameworks auch unsere Parameter aus der URL parsen. Angenommen, wir haben einen benutzerdefinierten URL-Parameter namens "very_custom_param" und möchten ihn an alle Ereignisse anhängen.
<script>
let veryCustomParam = sessionStorage.getItem('very_custom_param');
if (!veryCustomParam) {
const urlParams = new URLSearchParams(window.location.search);
veryCustomParam = urlParams.get('very_custom_param');
if (veryCustomParam) {
sessionStorage.setItem('very_custom_param', veryCustomParam);
}
}
window.metricalp = window.metricalp || {
queue: [],
sharedCustomProps: {
_global: {
custom_prop4: veryCustomParam ?? undefined
},
},
event: function (e) {
this.queue.push(e);
},
};
</script>
<script src="https://cdn.metricalp.com/event/metricalp.js" data-tid="mam48" async></script>
Sehr ähnlich zum vorherigen Code-Snippet. Aber diesmal haben wir unseren benutzerdefinierten Parameter als benutzerdefinierte Eigenschaften (wir haben custom_prop4 bevorzugt) übergeben. Ganz einfach. Jetzt haben Sie diesen benutzerdefinierten Parameter bei screen_view- oder click_buy-Ereignissen oder anderen Ereignissen.
Wir haben custom_prop4 oben verwendet, aber Sie können immer benutzerdefinierte Prop-Aliase definieren, um lesbarere Props in Metricalp zu haben. Überprüfen Sie die Dokumentation zu benutzerdefinierten Ereignissen und Props für Details.
Das ist alles. Wir haben gelernt, wie man URL-Parameter erfasst und sie als Props mit Ihren Ereignissen verwendet. Außerdem haben wir gelernt, dass Metricalp dies in den meisten Szenarien automatisch für Branchenstandards wie UTM-Parameter tut. Aber wir haben gezeigt, wie man dies für statische / serverseitige Systeme erweitern kann. Wir hoffen, dass Sie mit diesem Ansatz bessere Einblicke erhalten. Wenn Sie Fragen haben oder Hilfe benötigen, können Sie uns immer über die Kontaktseite erreichen.