web-dev-qa-db-ja.com

Googleアナリティクス(gtag.js)とGoogleタグマネージャー(gtm.js)の組み合わせ

Googleタグマネージャーを使用してGoogle Analyticsから「グローバルサイトタグ」に移行すると、かなり混乱します。タグマネージャーですが、違います!?

通常のGoogleタグマネージャー統合は次のようになります。

<!-- Google Tag Manager -->
<script>
  (function(w,d,s,l,i){w[l]=w[l]||[];w[l].Push({'gtm.start':
  new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
  'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  })(window,document,'script','dataLayer','GTM-XXXXXXX');
</script>

そしてGoogle Analytics Global site tag統合は次のようになります:

<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXXXXX-X"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.Push(arguments);}
  gtag('js', new Date());
  gtag('config', 'UA-XXXXXXXXX-X');
</script>

それらは別のリソースをロードします。しかし両方ともdataLayerを開始します Pushメソッド。オブジェクトの作成方法が異なります(2つの方法が交換可能であると想定)。 1つの実装のdataLayerオブジェクトが他の実装と競合する場合でも、両方の統合を並べて使用することになっていますか?

余談です。どちらのリソースもjQuery 1.9.1にバンドルされています。 jQueryを2回ロードしてインスタンス化することは最適ではありませんが(これに独自のjQueryがある場合は3回)。回避策や推奨事項はありますか?

12
tim

gtag.js Developer Guide から:

タグマネージャーをすでに使用している場合は、引き続き使用する必要があります。タグ管理システムが必要ない場合は、各製品で提供されているgtag.jsトラッキングコードを使用しても問題ありません。

タグマネージャーとgtag.jsは同じインフラストラクチャ上に構築されており、同じページにデプロイすると適切に機能するはずです。

グローバルサイトタグ(_gtag.js_)は、を使用する新しい方法です_analytics.js_ AdWordsやDoubleClickなどの他のGoogleサービスと組み合わせて。
実際、_gtag.js_は、構成するサービスに応じて、他のライブラリの横に同じ古い_analytics.js_をロードします。 gtag('config', 'AW-XXXXXXXX-X');を使用してAdWordsアカウントで設定した場合、スクリプトは自動的に_conversions.js_もロードします。さらに、_gtag.js_は、サービスの基本的な初期化も行います。 AnalyticsのページビューヒットまたはAdWordsのリマーケティングヒットをトリガーします。

そうは言っても、実際にはタグマネージャーに少し似ています。ただし、Googleサービスでのみ機能します。したがって、すべてのタグを単一のタグにラップすることにより、さまざまなGoogleタグの構成をより単純化したものです。

新しいAnalyticsアカウントを設定する場合は、グローバルサイトタグ形式のトラッキングコードを取得することに注意してください。あなたは選択肢がありません。

一方、Googleタグマネージャーは、ほとんどのタグ管理システムと同様に、Googleの製品スイートを超えてタグを管理できます。これには、ユーザーインターフェイス、バージョン管理、アクセス管理、その他すべての豪華な機能が含まれています。 _analytics.js_と同様に、_gtag.js_は、タグマネージャーが通信できる別のJavaScriptライブラリです。

5
dferenc