POURQUOI le code Universal Analytics doit-il être placé juste avant la balise de tête de fermeture?

9

La documentation officielle de Google indique:

Collez votre extrait (non modifié, dans son intégralité) dans chaque page Web que vous souhaitez suivre. Collez-le juste avant la </head>balise de fermeture .

Il y a certainement une raison pour laquelle ils suggèrent ce placement; Je veux savoir quelles sont ces raisons.

Ma pensée est la suivante : pourquoi ne peut-il pas aller dans la balise body, si c'est du code asynchrone non bloquant de toute façon?

Mon collègue a émis l'hypothèse : C'est pour que les pages vues soient toujours suivies, même si un autre élément plus bas sur la page casse tout.

Mais si cela était vrai, alors pourquoi ne pas suggérer de l'ajouter juste après la balise d' ouverture de la tête?

Eric Seastrand
la source
1
Pourquoi remettez-vous en question leur documentation? Pourquoi est-ce que tu t'en préoccupes? Mettez-le juste avant la balise de fermeture,
Steve
1
Cela pourrait avoir quelque chose à voir avec le titre ou les balises META.
hildred
3
@Steve: Imaginez un scénario où le CMS que vous utilisez rend très très facile de l'ajouter à la page, mais très difficile de l'ajouter à la position recommandée. Le client demandera «pourquoi un changement aussi simple prend autant de temps et que se passera-t-il s'il n'est pas dans la tête».
Eric Seastrand

Réponses:

7

Vous pouvez mettre le code n'importe où sur la page Web avec très peu de compromis.

Pourquoi Google recommande-t-il spécifiquement de le mettre dans la <head>section?

Parce qu'il y a un petit avantage à le mettre là-dedans - avec lui, <head>vous pouvez capturer les utilisateurs qui sont partis immédiatement après l'ouverture de votre page.

Pourquoi pas dans le corps?

Vous pouvez sûrement le mettre en <body>section et vous ne perdrez qu'un très petit% de visiteurs (comme mentionné ci-dessus).

Auparavant, lorsque le code bloquait, la recommandation était de le mettre juste avant la </body>balise de fermeture afin de ne pas ralentir le site Web. La recommandation a été modifiée lorsque le code a été rendu non bloquant. En outre, comme ce code est si largement utilisé sur tous les sites Web, il est fort probable que le navigateur serve le fichier js à partir du cache au lieu du téléchargement réel.

Aakash
la source
Pour moi, cela ne répond pas à la question "POURQUOI le code Universal Analytics doit-il aller immédiatement avant la balise de fermeture?" «Immédiatement avant» - n'est pas abordé dans la réponse ci-dessus. Je voudrais aussi connaître la réponse
Nat
1
Vous pouvez mettre du code UA n'importe où dans la balise head, mais comme il n'est pas aussi nécessaire que votre titre, votre description ou même vos fichiers CSS liés, c'est pourquoi c'est la dernière chose que le navigateur devrait traiter, même s'il est asynchrone.
Aakash
1

Maintenant, ce n'est pas une explication technique de la raison pour laquelle c'est nécessaire - mais c'est une raison pratique de le faire.

Si vous souhaitez utiliser votre code de suivi Google Analytics (GA) à diverses fins de vérification sur le réseau de sites de Google, par exemple,

  • pour vérifier votre propriété d'un site dans Google Search Console; ou
  • pour associer votre chaîne YouTube à un site

vous pouvez le faire si votre compte Google est administrateur de GA et de ce qui précède; mais il ne recherche que le code de suivi GA dans la position prescrite, avant </head>.

De plus, ne pas avoir le code dans cette position peut provoquer des messages d'erreur répétitifs gênants dans l'interface de Google Analytics.

Donc, même si je suis désolé, je ne peux pas faire la lumière sur les raisons sous-jacentes (techniques, le cas échéant), pour moi, les raisons ci-dessus sont suffisamment bonnes pour le faire.

Marktristan
la source