0

Ich verwende den Google Tag Manager und implementiere das erweiterte E-Commerce-Tracking über dataLayer. Alles funktioniert gut. Ich füge jedoch jetzt einen CTA (call to action) hinzu, für den ich Impressionen erfassen möchte (mehrere Versionen). Dieser CTA wird als partiell gerendert, also wird zur Zeit dataLayer konstruiert, es existiert noch nicht und ich habe keine Ahnung, was am Ende dort sein wird.Push to Enhanced E-Commerce, nachdem dataLayer bereits festgelegt wurde und das GTM.js-Skript ausgeführt wurde

Mit geradem Google Analytics, sieht es aus wie Sie manuell einen Eindruck über verfolgen können:

ga('ec:addImpression', { 
    // impression data 
}); 

Aber dies mit GTM nicht funktioniert, wie ga nicht in diesem Szenario definiert ist. Gemäß der GTM Enhanced E-Commerce-Dokumentation besteht die einzige andere "Option" darin, die Impression über das GTM-Steuerungsfeld basierend auf der Seitenansicht manuell nachzuverfolgen. Auch dies ist nicht möglich, da die Impressionsdaten nicht immer gleich sind.

Nach ein wenig Nachforschungen fand ich eine dritte "Option" in der Verzögerung Pushing dataLayer. Wenn Sie beispielsweise GTM-Last auslösen, können Sie sie an ein bestimmtes Ereignis binden und dieses Ereignis zu einem späteren Zeitpunkt senden. Ich nehme an, dass ich dann die dataLayer in diesem Teil ändern würde, solange ich sicherstellen würde, dass das Ereignis erst lange nach der Wiedergabe gesendet wurde. Das scheint jedoch nicht nur schwerfällig und fehleranfällig zu sein, sondern erfordert auch, dass ich den Rest meines erweiterten E-Commerce-Tracking-Codes erheblich verändern muss.

Gibt es keine Möglichkeit, nur die Impression zu senden, wie mit geraden GA, mit GTM?

Antwort

1

Ich bin mir nicht ganz sicher, ob ich das Problem verstehe (aber ich habe es trotzdem). Die Methode besteht darin, neue Daten an die Datenebene zu senden und ein benutzerdefiniertes Ereignis, d. H. Das Schlüsselwort "event", in der Datenschicht mit einem benutzerdefinierten Wert zu erstellen. Sie können dann einen „benutzerdefiniertes Ereignis“ Typ-Trigger mit dem Wert verwenden Sie gedrückt haben:

dataLayer.push({ 
    "event":"mycustomevent", 
    "impressionData": myData 
}) 

Specifications for EEC dataLayer are here. Sie senden dann ein GA-Ereignis, das EEC aktiviert hat, und liest EEC-Daten aus der Variable impressionData im Beispiel.

Sie scheinen das im Prinzip herausgefunden zu haben, aber scheinen zu denken, dass das irgendwie schlecht ist. Nein, ist es nicht, es ist der empfohlene Weg von Google.

Die DataLayer ist ein Array von Objekten, und Sie können neue Daten hinzufügen, indem Sie die Push-Methode verwenden. Dies ist nicht die native Push-Methode, sondern eine benutzerdefinierte Implementierung von Google. Er scannt die hinzugefügten Daten bei jedem Push. Wenn er den "event" -Schlüssel im hinzugefügten Objekt findet, fügt er die Daten aus der on-page dataLayer-Variablen zum internen GTM-Datenmodell hinzu, wo Sie ihn dann in Ihren Tags verwenden können.

Ihr Problem könnte sein, wenn Sie richtig verstanden haben, dass Sie der Meinung sind, dass Sie alle DataLayer in einem einzigen Schritt erstellen müssen. Aber es ist vollkommen in Ordnung, es in mehrere Teile aufzuteilen und neue Daten über dataLayer.push hinzuzufügen, wie Sie es brauchen.

Verwandte Themen