コラムバックナンバー

初めまして。
株式会社ウエディングパークの郡山と申します。
突然ですが皆さん、GA4の設定を適切にできていますか?

2019年にGoogleが発表した新型のGoogleアナリティクス「アプリ+ウェブ プロパティ」が、2020年10月にβ版から「Google アナリティクス 4 プロパティ(GA4)」へ名称を変更・正式にリリースされました。

この1年あまりで、GA4を徐々に導入するケースが増えてきましたが、従来のGoogle アナリティクス(以下、UA)と比べてGA4はまだまだ発展途上の段階であり、基本的にはUAをメインで活用する企業・ユーザーが多い印象です。

そして、GA4の仕様や活用法について解説する書籍・記事・セミナーはまだ少なく、手探りでGA4と向き合うユーザーも多いのではないでしょうか。

今回はa2i様に機会をいただきまして、「GA4をGoogleタグマネージャーで導入するベストプラクティス」というテーマで記事を寄稿致します。

また、2022年7月には「GA4を使った分析手法」というテーマのウェビナーで登壇させて頂く機会を頂戴しています。

このような機会を通して、GA4を活用しようとしている多くの方のお役に立てれば幸いです。普段はTwitter、ブログ、Google アナリティクス公式コミュニティなどの場で個人的に発信しておりますので、ご興味があればお気軽にお声掛けくださいませ。

それでは、本題に入ります。
今日は「GA4をGTMで導入する際、設定タグをAll Pagesトリガーで実装するのは適切ではない」というお話をさせて頂きます。

※記載している内容をもとにご自身のGA/GTM設定を変更される場合、十分にテストを行ってからご自身の判断で導入をご検討ください。

GA4の導入方法について

GoogleはUAと併用する形でGA4の導入を推奨しており、GA管理画面で新規プロパティを作成するフローではGA4プロパティ導入案内から始まります。

引用:GA管理画面新規プロパティ作成画面
参考:次世代の Google アナリティクスのご紹介 – アナリティクス ヘルプ

そして、(ウェブサイトの)導入方法については

  • gtag.jsをソースコードに直接埋め込んで実装
  • Googleタグマネージャー(以下、GTM)タグをソースコードに埋め込み、GTM管理画面で設定し実装

このどちらかの方法を選択することができます。

どちらでもGA4の計測を開始することができますが、GA4の計測モデルを考慮するとGTMを使った実装が現状のベストプラクティスであると私は捉えています。

UAの計測モデル

UAは「ページビュー」計測をベースに設計されており、追加で計測したいデータを実装していきます。GTMでUAプロパティの各種設定を行う場合は、「ページビュー計測タグ」と「イベント計測タグ」「トランザクション計測タグ」などの追加で計測する指標に適したタグを実装していくことになります。

参考:個人ブログのUAプロパティ「ページビュー計測タグ」

ページビュー計測タグが発火する条件となるトリガーは、GTMでデフォルトで利用可能な組み込み変数「All Pages」トリガーを採用するのが一般的です。

「All Pages」トリガーは、GTMスニペットタグが埋まっているすべてのページを対象として「ページ(URL)が開かれてGTMコンテナの読み込みが行われたタイミング」で配信します。

UAのページビュー計測とその他のトラッキングタイプの計測タグは、連動して計測するような仕組みではありません。
それぞれ独立した条件でトリガーを設定して問題ないので、UAプロパティ用の各タグは特別なケースを除いて「トリガーが発火する順序」を厳密に定義しなくても良いと言えるでしょう。

GA4の計測モデル

一方、GA4は「ユーザー体験(ブラウザ上の行動)」を計測するモデルとなっており、ページビューを前提に設計されていません。

GTMで実装する場合は「GA4設定タグ」と「イベントタグ」を作成します。
公式ヘルプページに書かれている仕様・設定方法を確認してみましょう。

出典:Google アナリティクス 4 タグ – タグ マネージャー ヘルプ

▼GA4設定タグとは

特定のページの Google アナリティクス 4 プロパティについて、Google アナリティクスを初期化します。このタグは、Google アナリティクスの Cookie の設定、自動イベントと測定機能の強化イベントの送信、一般的な設定の宣言などを処理します。

設定タグは、Google アナリティクス 4 プロパティのデータを収集するすべてのページで配信される必要があり、他の Google アナリティクス 4 イベントタグよりも前にできるだけ早く配信をトリガーする必要があります。

[トリガー] をクリックし、初期化トリガーを使用すると、Google アナリティクス 4 設定タグを他のトリガーよりも前に配信できます。

例)session_startなどの自動イベントの計測
例)動画エンゲージメントなどの拡張計測(測定機能の強化)
例)各イベントに紐付けたいパラメータの計測

▼GA4イベントタグとは

Google アナリティクス 4 イベントタグを使用すると、自動的または測定機能の強化を通じて送信されるイベントの他に、カスタム イベントをアナリティクスに送信できます。たとえば、測定機能の強化で指定したよりも短い間隔でスクロール距離のデータを収集したい場合は、タグ マネージャーのスクロール距離トリガーに基づいて、Google アナリティクス 4 のイベントタグを呼び出すよう設定できます。

上記のように初期化トリガーを使用して設定タグのスケジュールを指定した場合、他のトリガーを使ってイベントタグを配信することができ、タグの順番は自動で決定されます。

例)アウトバウンドリンクのクリック数の計測など、追加で計測したいもの

気付きましたか?
GTMでGA4の計測を行う場合は「GA4設定タグをAll Pagesトリガーで実装する」とは一言も書かれていません。「各イベントトリガーよりも先に発火するよう制御するべきであり、初期化トリガーを使用して発火順序を制御することができる」と明記されています。

2022年3月時点では「ページが開かれた」タイミングで発火するトリガーが5種類存在しますが、GA4設定タグで推奨されているのは「初期化トリガー」です。

  1. 同意の初期化: 同意に関する設定を、確実に他のすべてのトリガーの配信よりも前に適用するためのトリガータイプです。単にタグを早い段階で配信する用途では使用しません。その用途の場合は「初期化」トリガーを使用してください。
  2. 初期化: 「同意の初期化」トリガーを除いて最も早く配信するタグ用のトリガータイプです。各ウェブコンテナには、デフォルトで「初期化 – すべてのページ」トリガーが含まれています。他のトリガーよりも前に配信する必要があるタグには、このトリガータイプを使用しましょう。
  3. ページビュー: ウェブブラウザがページの読み込みを開始するとすぐに発動します。ページのインプレッションから生成されたデータのみが必要な場合は、このオプションを使用します。
  4. DOM Ready: ブラウザで HTML のページの読み込みが完全に終了し、ドキュメント オブジェクト モデル(DOM)が解析できる状態になった後に発動します。DOM に対応して変数に値が入力されるページベースのタグの場合は、タグ マネージャーで正しい値が使用されるよう、このタイプのトリガーを選択してください。
  5. ウィンドウの読み込み: 画像やスクリプトなどの埋め込みリソースを含め、ページが完全に読み込まれた後に発動します。

引用・一部抜粋:ページビュー トリガー – タグ マネージャー ヘルプ

ではこのヘルプページに沿って「初期化トリガー」でGA4設定タグを実装した場合と、「All Pagesトリガー」で実装した場合、カスタムイベントの計測にどのような影響が発生しうるのか検証してみましょう。

検証:All Pagesトリガー

GA4設定タグとイベントタグそれぞれの発火タイミングによって、GA4設定タグで定義した「各イベントで計測してほしいパラメータ」の格納が正常に行われるか検証します。

参考:個人ブログのGA4プロパティ「GA4設定タグ」

検証するためのフィールド「debug_mode」を追加しています。
また、コンテンツグループを計測するための「content_group」も追加しています。

これらのフィールドを有効化したGA4設定タグが発火するタイミングを「All Pagesトリガー」にしている状態です。

testというイベントを計測するタグを、意図的に「GA4計測タグより早いタイミング」にして検証します。「All Pagesトリガー」よりも確実に早い「初期化トリガー」を設定しています。

この2つのタグが実装されたワークスペースでプレビューモードによる検証(ページ閲覧)を行ってみました。

GA4設定タグより先にカスタムイベント「test」が計測されるため、GA4設定タグでセットしたcontent_groupパラメータが「test」イベント計測時には記録されませんでした。

では、GA4設定タグを「初期化トリガー」で実装し、イベントタグをそれよりも後の発火順序に制御した場合どうなるか検証してみましょう。

GA4イベントタグを「DOM Readyトリガー」に変更しました。
これらを検証した結果がこちらです。

計測対象ページで最初にGA4設定タグが発火するよう「初期化トリガー」で厳密に定義しているため、その後に発火しているtest2のカスタムイベントには、GA4設定タグで定義したcontent_groupパラメータが紐付いて記録できていることが確認できました。

GA4設定タグをAll Pagesトリガーから初期化トリガーへ変更することでタグの発火タイミングが早くなるので、想定通りの値が取得できるか、十分に検証のうえ、変更すると良いと思います。

検証結果をもとに、何を注意すべきか

GA4はユーザー体験を適切に評価・分析するためにカスタム定義のイベントやディメンション、パラメータ、変数を作成・実装することが多くなっていきます。

datalayerでGTMに計測させる情報を送信して、カスタムイベントトリガーや変数として活用するケースも考慮すると、GA4設定タグを他のイベントタグよりも確実に優先して計測させる「初期化トリガー」を採用しない場合何らかの計測で欠損が生じる懸念があります。

これを踏まえて、「GA4計測タグは初期化トリガーで実装する」ことがGTMによるGA4導入設計のベストプラクティスであると私は判断しました。設定タグにdatalayerの値を送信する際などは注意しています。

GA4はpage_viewに限らず、各ヒットが送信されるまで約5秒の待機状態がある仕様や、セッションが切れる条件がUAと大きく異なるなど、各イベントがどのように記録されるのか複雑な仕様になっています。

だからこそ、計測結果に欠損がないよう公式ヘルプページに則って実装することを推奨します。私も、今後ランディングページのディメンションがリリースされたらまた検証しようと思います。

この記事がGA4を活用する方のお役に立てれば幸いです。
ここまでご覧頂きましてありがとうございました。

コラム担当スタッフ

郡山 亮

株式会社JADE
コンサルティング事業部 コンサルタント
GAラボ

2011年にサイバーエージェントグループの株式会社ウエディングパークに新卒入社。
セールス・ディレクター・コンサルタントの職域でオウンドメディアと顧客サイトのアクセス解析やデータ活用を推進。

2023年6月より株式会社JADEへ入社。
アクセス解析領域のコンサルタントとしてWebマーケティングを支援する他、自社ウェビナー登壇やコラム執筆など情報発信にも参加。

Google Search Central Live、a2i、ウェブ解析士協会などのセミナー登壇や、Googleアナリティクス公式コミュニティ、個人ブログ「GAラボ」、SNS発信など社外活動も積極的に行っています。

一つ前のページに戻る

a2i セミナー風景イメージ

あなたも参加しませんか?

「アナリティクス アソシエーション」は、アナリティクスに取り組む皆さまの活躍をサポートします。会員登録いただいた方には、セミナー・イベント情報や業界の関連ニュースをいち早くお届けしています。

セミナー・イベント予定

予定一覧へ

コラムバックナンバー

バックナンバー一覧へ