web-dev-qa-db-fra.com

Un suivi des événements qui fonctionnera sur plusieurs sites Web avec différentes versions de Google Analytics sans interférer avec un autre suivi

Ma question est plus une confirmation qu'un problème en soi, je vais donner un contexte général de ce que fait mon entreprise afin que vous compreniez tout ce que je dois traiter.

La société dans laquelle je travaille est un évaluateur de la revue des ventes e-commerces. Nous envoyons un courrier électronique à l'acheteur. Celui-ci répond avec ses mots. Cette revue apparaît ensuite dans un composant (widget) qui se trouve sur la page d'aperçu du produit dans le E-mail. commerce, disponible pour que les clients potentiels voient ce qu’ils ont réellement acheté.

Ma tâche consistait alors à faire en sorte que les interactions des utilisateurs apparaissent dans les analyses du client, afin que nous puissions évaluer qui utilisait notre produit, puis effectuer un achat, par exemple. J'ai évalué la meilleure façon d'utiliser les événements.

Mais le gros problème auquel j'ai été confronté était de le faire fonctionner dans tous les paramètres d'analyse possibles (avec le gestionnaire de balises, analytics.js, ga.js), de toute façon, dans tous les paramètres possibles.

Et je suis arrivé à ce code final dans (coffeescript)

@sendEvent: (action, product_name) ->
  category = 'OurCompany Widget'
  commonOptions = [category, action, product_name]

  if typeof ga == 'function' && typeof ga.getAll == 'function'
    trackers = ga.getAll()

    if trackers.length > 0
      ga ->
        _.each ga.getAll(), (tracker) ->
          ga "#{tracker.get('name')}.send", 'event', commonOptions...
    else
      ga 'send', 'event', commonOptions...

  if typeof _gaq != 'undefined' || typeof _gat != 'undefined' && typeof _gat._getTrackers != 'undefined'
    _.each _gat._getTrackers(), (tracker) ->
      tracker._trackEvent commonOptions...

Alors les questions que je vous pose:

  • Existe-t-il un meilleur moyen d’intégrer toutes les combinaisons possibles d’analyses?
  • Ce format actuel peut-il causer des dommages aux données des clients? (Nous avons reçu une plainte - juste celle-là - de la part d'un client qui a déclaré qu'après avoir déclenché notre suivi, il avait empêché la capture des données d'achat "ils ont perdu ces données")
  • Et il y a quelques magasins où les données d'influence achetées apparaissent à zéro, simplement les segments que j'ai créés (essentiellement des filtres par nom d'action d'événement) ne renvoient que 0,0%, tandis que les segments "Tous les utilisateurs" apparaissent comme tels (et que les événements sont en cours de déclenchement - apparaissent dans onglet Temps réel), mon hypothèse est que la passerelle de paiement supprime tous les événements de session où le client paiera (ce site vend des produits cosmétiques et un segment filtré par femme ne renvoie que 2 ventes sur plus de 500 ventes, êtes-vous d'accord avec cela? ).
2
Bruno Casali

Vous avez choisi une approche intéressante pour résoudre ce problème dans toutes les implémentations GA!

Ce qui m'inquiète, ce sont les grandes lignes avec lesquelles vous spammez tous les GA trackers avec vos données d'événement. Prenons un site qui utilise un widget de discussion tiers (par exemple, Olark). Si je comprends bien, ils ont leur propre GA là quelque part, et ce javascript prendra tous les trackers et leur enverra les données d’événement.

Cela enverrait des événements supplémentaires dans des systèmes tiers, traités ou non par ces systèmes. Semble une approche forte de la main.

ne approche alternative

La création d'un objet de suivi distinct et l'envoi de vos données d'événement ne seraient-ils pas plus faciles?

Je sais que cela créerait une surcharge supplémentaire, mais au moins les données que vous envoyez sont stockées de manière fiable dans le bon compte.

En ce qui concerne le troisième point que vous demandez, est-il possible pour vous de partager le segment?

1
Prasad Ajinkya