本文にスキップ
weballin

weballin DIGIWIKI

gtag.js

gtag.jsはHTMLに直接挿入してGA4、Google AdsなどGoogleツールにデータを転送する公式JavaScriptライブラリです。 GTMなしで開発者がコードで直接タグを管理する方法で、gtag('config', 'G-XXXXXXXX')で初期化し、gtag('event', ...)にイベントを送信します。

weballin

gtag.jsはHTMLのheadタグ内にスクリプトタグとして挿入し、gtag( 'config'、 'G-XXXXXXXX')でGA4プロパティを初期化し、gtag( 'event'、 'purchase'、{...})にイベントを送信します。 GTMなしで開発者が直接コードを書いてデータを収集する方式です。

GTMとの違い:gtag.jsはコード変更ごとに開発者のデプロイが必要です。 GTMはgtag.jsを内部で使用するが、インターフェース操作でタグを管理し、開発者のデプロイなしでマーケティング担当者が直接変更することができる。イベント数が少なく静的サイトであればgtag.jsで十分だが、動的イベントが多ければGTMが有利である。

GA4画面パス:GA4管理→プロパティ→データストリーム→Webストリームの詳細→「タグガイドの表示」でgtag.jsスニペットコードを確認します。測定ID(G-XXXXXXXX)はこの画面からコピーします。

要点

  • HTML headに直接挿入してGoogleツールにデータを転送する公式JavaScriptライブラリです。
  • gtag('config'), gtag('event'), gtag('set') 3 つの主要命令で構成されます。
  • 単一のスニペットでGA4とGoogle Adsのコンバージョン計測を同時に初期化できます。
  • GTMなしで利用可能ですが、イベント変更ごとに開発者によるデプロイが必要です。
  • SPAでは、ルータの変更時に手動でgtag( 'config'、...、{page_path:...})を呼び出す必要があり、ページビューは正しく記録されます。

参考資料

よくある質問

サイトにgtag.jsとGTMが同時にインストールされていると問題が発生しますか?

二重設置の問題が生じることがある。 GA4測定IDがgtag.jsとGTM GA4構成タグの両方にある場合、ページビューは2回カウントされます。 Tag Assistantで確認すると、重複インストール警告が表示されます。 GTMで統合管理するには、HTMLから直接gtag.jsスニペットを削除し、GTM単独で運用する必要があります。

gtag.jsでGA4 Eコマースイベントを直接実装できますか?

可能です。 gtag('event', 'purchase', {transaction_id:'T001', value:50000, currency:'KRW', items:[...]}) の形式で実装する。ただし、イベント構造が複雑でコード修正が頻繁にある場合、データレイヤー+ GTMの組み合わせがメンテナンスに有利です。