GTM

【GTM】効果的な例外トリガーの使い方7選

こんにちは。スプマロです(@649Ga4

Google TagManager(以下GTM)はとても簡単にサイトにタグ付けをすることができます。

ただし、闇雲にタグやトリガーを作りすぎてしまうと、管理や運用が大変になります。

トリガーの使い方を理解することで、より高度なタグ付けと管理のしやすさを実現することができます!

この記事では、トリガーの基本的な仕組みから、応用編まで解説していきます。特に例外トリガーを知ると設定の幅が広がりますので是非参考にしてください。

それでは早速見ていきましょう!

トリガーの仕組みと設定方法

トリガーとはタグを起動するための条件です。

具体的にタグが起動するまでの流れは以下になります。

  1. ユーザーが特定のアクション(=イベント)をする
  2. GTMがイベントを検知して、イベントと関連するトリガーを探す
  3. 関連するトリガーの条件が一致すればタグを配信する

GTMのイベントの仕組みはこちらで詳しく解説をしていますので、こちらも是非参考にしてください。

【GTM】データレイヤーの使い方 徹底解説この記事は、Google タグマネージャのデータレイヤーについて解説します。データレイヤーの概要や活用事例についてまとめています。...

 

イベントごとにトリガーの種類(タイプ)が用意されています。
トリガーを作成することで、GTMは作成したトリガータイプのイベントを検知するようになります。

トリガータイプは複数あるので、検知するイベントに応じて設定する必要があります。
トリガータイプは以下のようなものがあります。

トリガータイプを選んだ後に、更にトリガーの起動条件を指定することができます。

例えば、クリックの「すべての要素」トリガーは、条件指定しなければ、ページ内のどこをクリックしても起動します。条件指定することで、特定のクリックやページのみでトリガーを有効化することができます。

例を見てみましょう。

サイトに以下のPDFリンクがあり、クリック計測したいとします。

https://www.example.com/gtm.pdf

まず、PDFリンクのみに対象を絞る場合はどうすればよいでしょうか?

以下のように「リンクのURLに.pdfを含む」を条件に追加することでPDFリンクに絞り込むことができます。

これで、PDFリンクのクリックのみに限定することができます。

もし条件を複数指定したい場合は、「+」ボタンを押すことで条件を追加することができます。

リンクに「gtm」が含まれているPDFのみに絞り込みたい場合は、以下のように条件を追加します。

重要なのは、トリガーが起動するためにはすべての条件が一致する必要があります。

以下のPDFリンクを先ほどのトリガーで計測したいとします。

https://www.example.com/analytics.pdf

先ほどと同じ方法で、「analytics」を含むを条件に追加したらどうなりますでしょうか。

 

このトリガーでは、2番目の条件「gtmを含む」が一致しません。

そのため、すべての条件を満たしておらず、起動することができません。

対応策としては2つ方法があります。

一つ目は、条件の指定方法を変更することです。
正規表現をつかうことで「”gtm”か”analytics”のいずれかに一致」という一つの条件にまとめることができます。

正規表現とは、「いくつかの文字列を一つの形式で表現するための表現方法」です。

条件指定以外にも、目標設定やセグメントなど活用できるポイントは多いため、覚えておくと便利です。詳しくは公式ヘルプをご参照ください。

 

二つ目はトリガーを複数に分ける方法になります。この複数のトリガーを理解するのがとても大切です。

複数トリガーの使い方

1つのタグには、複数のトリガーを紐づけることができます。

例えば、「gtm」を含むPDFリンク用のトリガーと、「analytics」を含むPDFリンク用のトリガーを分けて作成して、下図のようにタグに紐づけが可能です。

追加方法は、「+」をクリックして追加したいトリガーを選ぶだけでできます。

でも1つのトリガーで済むならトリガーを分ける必要はないのでは?

このように思われた方もいるかもしれませんが、トリガーを複数に分けた方が良いケースもあります。

トリガーを分けるかの判断軸は「トリガーを他のタグでも使う可能性があるか」です。

1つのトリガーに条件を詰め込みすぎてしまうと、特定タグのみにしか使えないトリガーとなってしまいます。

その場合、以下のような問題が発生しがちです。

  • タグごとに新しくトリガーを作成しなければいけない
  • トリガー作成者以外が内容を理解できず、結局新しくトリガーを作成してしまう

上記のような場合はトリガーを分けて、条件を減らすことで汎用的なトリガーにするのがベストです。

複数トリガーの重要なポイントは「複数トリガーのうち、1つでも条件が一致していればタグが起動する」ことです。

例を見てましょう。

先ほど作成したタグで以下のPDFリンクをクリックして、プレビューモードで見てみましょう。

https://www.example.com/gtm.pdf

トリガー「analytics_pdf_click」は条件一致しませんが、「gtm_pdf_click」は条件一致するためタグが起動していることがわかります。

このように、トリガーが一つでも条件一致していればタグを起動することができます。

例外トリガーの使い方

最後に、この記事のメイントピックでもある「例外トリガー」について解説します!

タグを起動する際に「条件Aは起動しても条件Bでは起動したくない」というケースがあります。

例えば新しいタグを追加する場合

  1. 検証環境でタグを検証する(=本番環境ではタグ起動しない)
  2. 問題なければ本番環境でタグを配信する(=検証環境ではタグ起動しない)

実際に上記ケースに対応するにはどうすればよいでしょうか?
例外トリガーの使い方を見ていきましょう!

先ほどの例で作成した、2つのトリガーが紐づいているタグを使います。

検証環境と本番環境はドメインが異なっており、以下とします。

検証環境:dev.example.com
本番環境:www.example.com

まず検証環境のみでタグを起動するようにします。

各トリガーの条件に、検証環境の指定を追加することもできます。この方法でも確かに条件を満たすことはできるのですが、オススメいたしません。

理由としては、以下があります。

  1. 各トリガーに条件を追加する手間が発生する
  2. 検証環境から本番環境へ条件変更する手間が発生する
  3. 設定変更の工程が増えるため、設定を間違えるリスクが増える

この問題を回避するために、例外のトリガーを使うのがオススメです!

例外のトリガーとは、「特定の条件下でタグが起動するのをブロックできるトリガー」です。

例外のトリガーが条件一致をした場合、他のトリガーが条件一致してもタグを起動しません。

使い方はとてもシンプルで、タグのトリガー設定画面で「例外を追加」をクリックして、作成済みのトリガーをセットするだけです。

既存のトリガーも例外のトリガーとして使うことができます。
ただ、わかりやすさを考慮すると新規に例外用のトリガーとして作成するのがオススメです。

設定手順をみていきましょう。

まずは検証環境のみで計測をしたいので、以下設定のトリガーを作成します。

①トリガー名
例外として使うトリガーだとわかるようなトリガー名にしましょう。

トリガータイプと条件指定
全てのイベントでタグをブロックできるように「カスタムイベント」でブロックトリガーを作成します。

イベント名を正規表現で「.*」に設定することで、すべてのイベントを対象にすることができます。

このトリガーを例外トリガーとして使用すると、次の意味合いになります。

ユーザーがwww.example.comにアクセスしているときに、タグの起動をブロックする

トリガーであるため、複数のタグで使いまわすことができることがメリットですね。

上記で作成したトリガーを、例外トリガーとして使用することで「検証環境のみ」でタグが起動するようにすることができます!

検証環境でテストが完了したら、次は本番環境のみでタグを起動するようにしましょう。

設定方法としては、上記とほぼ同じになります。
ただし、次のステップとして二重否定を条件に設定をしてみましょう!

まず、先ほどと同じ考え方で「本番環境のみ」で計測したい場合はどうなりますでしょうか。
シンプルに先ほど作成したトリガーからドメインの条件を「dev.example.com」にするだけですよね。

今回のケースでは上記でも問題ないのですが、もし今後、検証環境のドメインが追加された場合はどうなりますでしょうか?

その場合、上記の設定だとドメインごとに例外トリガーを作成するか、トリガーの条件を変更する必要があり手間ですよね。

これを回避する方法が、二重否定の条件指定になります。

設定内容としては、以下になります。

ポイントはドメインの条件指定を「含む」から「含まない」にしていることです。

このトリガーを例外トリガーに設定すると以下の動きになります。

ユーザーがwww.example.comにアクセスしていないときに、タグの起動をブロックする

言い換えると、以下の意味合いになります。

ユーザーがwww.example.comにアクセスしているときに、タグを起動する

こうすることで、検証環境が増えても対応できる本番環境用のトリガーにすることができます!

このように二重否定を活用することで、特定の条件のみに絞ることが可能になります。

例外トリガーの効果的な使い方7選

ここまででトリガーの基本と、複数トリガー・例外トリガーの使い方について説明しました。

ここから先は例外トリガーの効果的な使い方について説明をしていきます!

1.デバッグモード中のみ有効化

組み込み変数の「デバッグモード」を活用した例外トリガーになります。

デバッグモード変数はGTMのプレビューモードで検証をしている場合に「true」を返す変数になります。

デフォルトはオフのため、以下手順でオンにします。

変数>組み込み変数>エラーの「debug mode」のボックスにチェック

次にこの変数を使って、以下の設定をし、例外トリガーとして使用します。

この例外トリガーはプレビューモードでない場合はタグをブロックします。

そのため、複数人でGTMを利用しているときに2つのメリットがあります。

  1. 他の利用者に、タグをプレビューで検証中だとわかりやすくする
  2. 誤ってワークスペースを公開されても、サイト訪問者にはタグが起動されない

特に②はリスク回避の点から重要になります。
新しいタグを作成したらすぐにこの例外トリガーを適応しましょう!

2.デバッグモード中のみ無効化

1のパターンとは逆で、デバッグモード中のみタグを起動したくないケースもあります。

例えば、デバッグモードでタグを検証中に、他の「広告コンバージョンタグ」や、「eコマースタグ」を起動して、テスト用のデータを送りたくないときです。

設定は1のケースで作成したトリガーの条件を「等しい」から「等しくない」にするだけになります。

コンバージョンタグなどにこの例外トリガーをセットすることで、デバッグモード中はタグの起動をブロックすることができます。

3.本番環境サイトのみ有効化

組み込み変数「Page Hostname」を活用した例外トリガーになります。

検証環境・本番環境など複数の環境がある場合、例外トリガーを使うことでタグを起動する環境を絞り込むことができます。

例えば、本番環境「www.example.com」に絞り込む場合は以下の設定になります。

すでに設定完了しているコンバージョンタグなどに、この例外トリガーをセットすることで、検証環境でタグを起動しないようにすることができます。

4.本番環境サイトのみ無効化

3のケースとは逆で、本番環境のみタグを起動したくないケースもあります。

この例外トリガーをセットすることで、どのタグが検証中かを管理するのに役立ちます。

5.特定のドメインサイトのみ有効化

組み込み変数「Page Hostname」を活用した例外トリガーになります。

ショッピングサイトとコーポレートサイトなど、異なるドメインでも同じGTMコンテナを使う場合があります。

これ自体は問題ありませんが、タグを特定のドメインのみで起動したい場合があります。

例外トリガーを使うことでタグを起動するドメインを限定することができます。

同じ要領で、特定のディレクトリのみタグを起動したい場合などにも使えます。その場合は「Page path」変数を使いましょう。

6.ランディングページのみ有効化

組み込み変数「Referrer」を活用した例外トリガーになります。

この変数は現在のページの前のページ(参照元)のURLを取得することができます。

つまり、ユーザーがサイトを訪問して回遊した場合、2ページ目以降のReferrer変数には、自身のサイトのURが取得されます。

これを活用して、ユーザーがセッションの最初のページ(=ランディングページ)のみ起動するタグを設定することができます。

ポップアップやアンケートなどをユーザーに何回も表示をしたくないタグを止める場合に有効です。

この変数の別の用途として、特定の流入元からのアクセスに限定してタグを起動するなども可能です。

7.特定の曜日のみ有効化

ユーザー定義変数の「カスタム Javascript」変数を使うことで、より柔軟にトリガー条件を指定することができます。

以下のコードをカスタム Javascript変数として作成することで、日本時間での曜日を取得することができます。

function() {
	var offset = 9; //UTCから日本時間に変更用
	var current = new Date( new Date().getTime() + offset * 3600 * 1000);
	var daysOfWeek = new Array(7);
	daysOfWeek[0] = "Sunday";
	daysOfWeek[1] = "Monday";
	daysOfWeek[2] = "Tuesday";
	daysOfWeek[3] = "Wednesday";
	daysOfWeek[4] = "Thursday";
	daysOfWeek[5] = "Friday";
	daysOfWeek[6] = "Saturday";
	return(daysOfWeek[current.getDay()]);
}

これを例外トリガー条件に使用することで、平日に限定してプロモーションや広告タグを起動することができます!

同じ考え方で、店舗の営業時間のみタグを配信することなども可能です。javascriptがわかるとGTMの活用方法が広がります!

まとめ

今回はGTMのトリガーの基礎から例外トリガーの活用方法まで説明をしました。

トリガーを戦略的に使うことでGTMの活用の幅がとても広がります。特に例外トリガーはいくらでも活用方法はあると思いますので、是非チャレンジしてみてください!

最後までお読みいただき、ありがとうございます!
ご感想やご意見などがあれば、ぜひTwitterまでご連絡ください。

https://twitter.com/649Ga4