Разница между фрагментами скрипта Google Analytics analytics.js и gtag.js

При настройке Google Analytics на одном из веб-сайтов я обнаружил, что фрагмент кода отслеживания, предоставленный для встраивания в настройки Google Analytics, имеет другой синтаксис и связанный сценарий JS, чем тот, который я использовал при настройке другого свойства пару лет назад.

Фрагмент №1 (gtag.js) - предоставляется настройками Google Analytics.

<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXX-Y"></script>
<script>
    window.dataLayer = window.dataLayer || [];
    function gtag(){dataLayer.push(arguments);}
    gtag('js', new Date());

    gtag('config', 'UA-XXXX-Y');
</script>

Фрагмент #2 (analytics.js) - используется на старом сайте

(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

ga('create', 'UA-XXXX-Y', 'auto');
ga('send', 'pageview');

Документация относится к переходу с analytics.js на gtag.js в целом, но без каких-либо конкретных сроков. Поэтому, пока я все еще использую analytics.js на моем старом веб-сайте, возникают вопросы:

Каковы различия (если они есть) в использовании gtag.js по сравнению с analytics.js, как в собранных данных, так и в производительности веб-сайта?

Кроме того, когда я перехожу на gtag.js на старом сайте, возникают ли какие-либо известные ошибки при сборе данных с помощью Google Analytics? Как некоторые данные могут быть потеряны для некоторого периода "распространения" или подобного...

Заранее спасибо!

2 ответа

Решение

gtag.js не является заменой библиотеки для analytics.js, это новый метод реализации библиотеки analytics.js. Когда вы посмотрите на javascript, загруженный на страницу с помощью gtag.js, вы увидите, что analytics.js загружается через gtag.js. Так что сбор данных одинаков.

Я бы сказал, только изменить его, если есть необходимость, в противном случае оставить как есть. Analytics.js в порядке. Я бы сказал, что gtag.js может быть более сложным с точки зрения реализации по сравнению с analytics.js только потому, что он новый, и некоторые люди более привыкли к analytics.js и могут запутать функции gtag() и ga().

Gtag - это библиотека javascript, используемая для одновременной отправки событий в различные теги, такие как Google Analytics, floadlight, Google Ads и т. Д., Чтобы уменьшить нагрузку на написание другого кода для разных тегов для отправки данных.

С другой стороны, analytics.js - это js-библиотека, используемая только для отправки данных только в Google Analytics.

Наконец, я могу сказать, что если вы хотите использовать в своем проекте только analytics.js, тогда вам подойдет analytics.js, но если есть план добавления каких-либо других сервисов Google, то лучше использовать Gtag.js, чтобы упростить задачу.

Примечание . Вы также можете присмотреться к GTM (диспетчеру тегов Google), который предоставит больше вспомогательных функций, таких как поддержка сторонних тегов, тогда как Gtag поддерживает только службы Google.

Другие вопросы по тегам