はじめに
Googleアナリティクスの広告レポートを見たところ、そのセッション数がGoogle広告管理画面のクリック数と食い違うことに違和感を持ったことはないでしょうか? この数字の違いには、仕様上どうしても発生してしまうものもあれば、何らかの不備により発生して運用の評価に大きな影響を与えるものもあります。
本記事では、これらのズレの原因特定と対策の方法をまとめます。また、その整理作業を通じて、広告とアナリティクスがどのような仕組みになっているかも理解し、こうした問題に終止符を打つことを目指します。
なお、そのほかの指標のズレに関して「[総まとめ]Google広告のコンバージョン数 vs アナリティクスのコンバージョン数のズレ」という記事も書いたので、宜しければご覧ください。
「ズレ」はどこで確認できるか?
以下の画面から確認できるとおり、Google広告のクリック数とアナリティクスのセッション数に差分があります。
▽Google広告のクリック数
画面:キャンペーン一覧
(例) 全てのキャンペーン:134,734 – 特定のキャンペーン「指名」:33,975
▽アナリティクスのセッション数
画面1:すべてのトラフィック≫参照元/メディア≫google / cpc
(例) 全ての広告キャンペーン:128,940
画面2:Google広告レポート≫キャンペーン≫セッション
(例) 全てのキャンペーン:128,940、特定のキャンペーンA:36,559
目次
- 広告流入を計測する仕組み
- ズレの要因の一覧
- 仕様の違いによるズレ
- 1.同じセッションでの再クリック (外部要因)
- 2.直接セッションによる再訪問 (外部要因)
- 3.無効なクリックと判定された (外部要因)
- ツールの設定不備によるズレ
- 4.流入を識別するURLパラメータがない
- 5.フィルタで意図しない除外をしている
- タグの異常によるズレ
- 6.アナリティクスタグ発火条件に不備がある
- 7.ビーコンの送信先が誤っている
- 8.LPで即時リダイレクトされている
- 9.LPの読み込みが遅い
- 10.LPをAMPで作っている
- 11.アナリティクスタグを外部ツールで出力して不具合が起きている
- 12.トラッキングがブロックされている (外部要因)
- まとめ
広告流入を計測する仕組み
以下の図はユーザーの広告流入計測の仕組みを整理したものです。
広告がクリックされた瞬間①、Google広告への通信が行われ、広告のクリック数がカウントされます②。
一方、アナリティクスのセッションは、広告クリック後にアクセスしたランディングページが読み込まれます③。その際、ページに埋め込まれているアナリティクスタグが動く④ことにより、アナリティクスにビーコンが送信され、レポートが可能になります⑤。
仕組み上、この①広告クリック~⑤セッション計測までの各所でズレが起こりえます。
具体的には以下のように問題が起こりえます。
- ① 広告がクリックされたことを識別するパラメータがランディングページのURLに付与されていない
- ② 広告のクリック数をカウントするための定義・仕組みがアナリティクスのセッション数と異なる
- ③ 即時リダイレクトやページ読込途中のユーザー離脱により、ランディングページのアナリティクスタグが動かなかった
- ④ ランディングページは読み込まれたが、アナリティクスタグが正しく動かなかった。
- ⑤ アナリティクスのセッション数をカウントするための定義・仕組みが広告のクリック数と異なる。または計測の設定が誤っている。
ズレの要因の一覧
さらに、それら問題が発生する原因を洗い出すと、以下のようになります。
詳細は次の見出し以降でご説明します。
ズレの要因一覧 | |||
---|---|---|---|
ズレの種類 | 「クリック数>セッション数」になる要因 | 「クリック数<セッション数」となる要因 | |
仕様の違い | 定義によるズレ(図②⑤) | 1. 同じセッションでの再クリック (外部要因) | 2. 直接セッションによる再訪問 (外部要因) 3. 無効なクリックと判定された (外部要因) |
タイミングによるズレ | |||
ツールの設定不備 | データ取得の設定不備によるズレ(図①) | 4. 流入を識別するURLパラメータがない | |
レポートの設定不備によるズレ(図⑤) | 5.フィルタで意図しない除外をしている | ||
タグの異常 | タグの設定不備によるズレ(図④) | 6. アナリティクスタグ発火条件に不備がある 7. ビーコンの送信先が誤っている< |
|
タグの動作環境の不具合によるズレ(図④) | 8. LPで即時リダイレクトされている 9. LPの読み込みが遅い 10. LPをAMPで作っている 11. アナリティクスタグを外部ツールで出力して不具合が起きている |
||
ユーザー要因によるズレ(図③④) | 12. トラッキングがブロックされている (外部要因) |
表の「外部要因」とは?
運用設計や設定の不備、不具合ではなく、一部の閲覧者の行動や閲覧環境、その他ツールの仕様に依存して起きるズレをここでは便宜上「外部要因」と呼びます。指標のズレが例えば1割未満であれば、まずは外部要因を疑ってもよいかもしれません。
仕様の違いによるズレ
1. 同じセッションでの再クリック (外部要因)
影響
「クリック数>セッション数」になる要因です。
チェックするポイント
(特になし。常に起こりえます)
ズレが起きる条件
同じセッションで広告が再クリックされること。
ズレが起きる理由
同じセッションで広告が再クリックされると、1つのセッションに複数のクリックがカウントされます。
そのため、広告クリック数のほうが多い要因になります。
セッションが切り替わる条件
アナリティクスの仕様では、セッションが以下のタイミングで変わります。
それ以外は同じセッションと見なされます(詳細はこちら)。
- 最後のページ読込から30分以上経過する、または日付が変わる。
- アナリティクスの仕様により「参照元」(流入元)が変わったと判定される。
対処方法
(仕様どおりの挙動であり、特に対処は必要ありません)
2. 直接セッションによる再訪問 (外部要因)
影響
「クリック数<セッション数」になる要因です。
チェックするポイント
(特になし。常に起こりえます)
ズレが起きる条件
ユーザーがWebサイトに直接セッションで再訪問した。
直接セッションとは?
URLアドレスの直入力やブックマークなど、参照元がアナリティクスのシステム上計測できないような訪問を「直接セッション」と呼びます。
ズレが起きる理由
Googleアナリティクスの仕様上、「直接セッション」で訪問されると、その参照元データとしてNULLの代わりに「前回のセッションの参照元」が送信されます。したがって、広告クリック後に直接セッションで再訪問されると、2つのセッション(訪問データ)に対して1つの参照元(広告クリックデータ)が紐づくので、クリック数よりもセッション数のほうが大きくなります。
直接セッションによる再訪問の例
ユーザーが以下のように「広告クリック流入」→「ブックマークにより再訪問」した場合、2つのセッションに対して同一の参照元データ=広告クリックが紐づけられます。そのため、クリック数よりもセッション数のほうが大きくなります。
ユーザーの操作 | Google広告のデータ | Googleアナリティクスのデータ |
---|---|---|
(1) 広告クリック | 広告クリックID=AAA | — |
(2) ランディング | — | セッション:ID=XXX 参照元:広告クリックID=AAA |
(3) セッションが切れる | — | — |
(4) ブックマークにより再訪問 | — | セッション: ID=YYY 参照元: 広告クリックID=AAA |
合計 | 広告クリック数 = 1 | セッション数 = 2 広告クリック数 = 1 |
対処方法
(仕様どおりの挙動であり、特に対処は必要ありません)
3.無効なクリックと判定された (外部要因)
影響
「クリック数<セッション数」になる要因です。
チェックするポイント
(特になし。常に起こりえます)
ズレが起きる条件
ソフトウェアにより機械的にクリックされたり、ダブルクリックにより重複してクリックされるなど、「広告主にとって価値のない余分なクリック( 「無効なクリック」)」とGoogle広告が判定したクリックが行われた。
ズレが起きる理由
「広告主にとって価値のない余分なクリック」と判定された場合計測からGoogle広告から除外されるため、セッションのみがカウントされます。
(参照:「Google 広告とアナリティクスでデータに矛盾がある≫Google 広告では無効なクリックがレポートから除外されるが、アナリティクスではすべてのデータが表示される」)
その他のツールでの無効なクリックの検知と防止の取り組み
このような取り組みはYahoo広告やFacebook広告などでも行われており、それぞれの基準で課金対象から除外しています。
対処方法
(仕様どおりの挙動であり、特に対処は必要ありません)
ツールの設定不備によるズレ
4.流入を識別するURLパラメータがない
影響
「クリック数>セッション数」になる要因です。
チェックするポイント
広告クリック後にアクセスするランディングページのURLパラメータを見ると、以下どちらも付与されていない
- 「広告クリックID」 (“gclid”)
- 「カスタムキャンペーンパラメータ」(“utm_source”, “utm_medium”)
(図 – 広告クリックIDが付与されているURL)
ズレが起きる条件
「チェックするポイント」と同様です。
ズレが起きる理由
上記パラメータが付与されたURL情報がビーコンでアナリティクスに送信されると、アナリティクスではこのURLパラメータをもとに「そのセッションの流入元メディアが広告である」と識別します。したがって、いずれかのURLパラメータがなければ「そのセッションの流入元メディアが広告である」と識別されず、広告クリックのみがカウントされます。
対処方法
広告流入を識別するURLパラメータを付与するため、以下いずれかの設定をしてください。
- Google広告で「自動タグ設定」を有効にする
これにより、広告クリックIDがURLに付与されます。 - アナリティクスの「カスタムキャンペーン」を設定する
これにより、キャンペーンパラメータ(参照元/メディア)がURLに付与されます。
5.フィルタで意図しない除外をしている
影響
「クリック数>セッション数」になる要因です。
チェックするポイント
アナリティクスの「ビューフィルタ」でトラフィックを除外している
ズレが起きる条件
アナリティクスの「ビューフィルタ」でトラフィックを除外しているのに対して、Google広告では同様の条件でターゲットを絞り込んでいないこと
ズレが起きる理由
Google広告で絞り込んでいないターゲットには、広告が表示されます。この広告がクリックされればカウントされます。次に、そのクリックにより生じたトラフィックがアナリティクスのビューフィルタで計測から除外されるようになっていれば、広告クリックのみがカウントされることになります。
対処方法
- アナリティクスのビューフィルタを確認し、意図しないものがあれば修正してください。
- Google広告≫各キャンペーンの「設定」で、ビューフィルタと同じまたは近い条件(「IPアドレスの除外」や「地域(ターゲット地域)」など)でターゲットを絞り込んでください。
タグの異常によるズレ
6.アナリティクスタグ発火条件に不備がある
影響
「クリック数>セッション数」になる要因です。
チェックするポイント
アナリティクスタグが未発火のままになっている
アナリティクスタグの発火・ビーコンの送信内容を確認する方法
以下いずれかの方法で確認してください。
-
- アナリティクスタグのJavascriptで処理されている内容を確認する方法
◦ Googleタグマネージャーの「プレビュー」モード
▽アナリティクスタグが未発火タグの一覧にある
◦ タグアシスタント」(ブラウザの拡張機能)
▽アナリティクスタグが発火タグ一覧にない
-
- 開発者向け – ビーコン(HTTPリクエスト)を確認する方法(より正確)
▽ブラウザの「デベロッパーツール≫ネットワーク」で「collect」を検索すると、アナリティクスのリクエストはヒットするが、その「Query String Parameters≫tid」を確認すると、別のプロパティIDになっている(=設定したプロパティIDで検索してもヒットしない)
ズレが起きる条件
-
- 以下のようにトリガーに不備があること
- WebサイトのURLを変更したにも関わらずタグ発火のトリガーが昔と同じ
- URL条件を正規表現で指定しているが、その表記に誤りがある
- そもそもタグを対象ページに設置していない
ズレが起きる理由
広告はクリックされればカウントされます。一方、アナリティクスのセッションはランディングページ読込後、アナリティクスタグが動かなければ計測されません。つまり、仮にアナリティクスタグのコードを正しく記載していても、それを実行するためのトリガー設定に誤りがあれば、セッションはカウントされず、クリックのみカウントされます。
対処方法
-
-
- 前提として、以下を確認してください
- ◦ 該当のタグをHTMLのソースコード、またはタグマネージャーやその他外部ツールのプラグインに設置していること
- ◦ タグマネージャーやその他外部ツールのプラグインを利用している場合、それらのタグをHTMLのソースコードに設置していること
- トリガー条件として指定しているURLやイベントに誤りがないか確認し、修正してください。
- 前提として、以下を確認してください
-
7.ビーコンの送信先が誤っている
影響
「クリック数>セッション数」になる要因です。
チェックするポイント
-
-
- アナリティクスタグの発火が確認でき、かつトリガー条件に不備がない(「4. タグ発火条件に不備がある」に問題がない)
- フィルタ設定に誤りがないにも関わらず、セッションの数値に異常がある
-
ズレが起きる条件
アナリティクスタグで指定しているプロパティIDが誤っていること
-
- アナリティクスタグの発火・ビーコンの送信内容を確認する方法
以下いずれかの方法でプロパティIDを確認してください。
アナリティクスタグのJavascriptで処理されている内容を確認する方法
◦ Googleタグマネージャーの「プレビュー」モード▽アナリティクスタグが発火しているが、詳細から「trackingid」を見ると、誤ったプロパティIDが設定されている。
◦ 「タグアシスタント」(ブラウザの拡張機能)
▽アナリティクスタグが発火タグ一覧にはあるが、プロパティIDが誤っている
-
- 開発者向け – ビーコン(HTTPリクエスト)を確認する方法(より正確)
▽アナリティクスへのHTTPリクエストURLに含まれる文字列「collect」を、ブラウザのデベロッパーツール≫ネットワークで検索
→「Query String Parameters≫tid」を確認
ズレが起きる理由
プロパティIDが誤っていれば、ビーコンが該当プロパティに送られないため、セッションが計測されません。したがってクリック数のほうが極端に多い要因になります。
対処方法
アナリティクスタグのプロパティID確認し、誤りがあれば正しいIDに修正してください。
8.LPで即時リダイレクトされている
影響
「クリック数>セッション数」になる要因です。
チェックするポイント
-
-
- ランディングページで即時リダイレクトをしており、アナリティクスタグが処理される前にリダイレクトされている
- リダイレクト後のURLパラメータに「gclid」がない
-
ズレが起きる条件
「チェックするポイント」と同様です。
ズレが起きる理由
ランディングページで即時リダイレクトされている場合、そのページのアナリティクスタグが未処理になります。すると次のページでは「4. 流入を識別するURLパラメータがない」と同様、そのセッションが広告クリック経由のものであることを識別するための情報がない状態になります。したがって、流入元のメディアがGoogle広告であるとはアナリティクスでは識別できず、セッション数が少ない要因になります。
対処方法
以下いずれかを実施してください
-
-
- リダイレクト先にパラメータ情報を引き渡すようにする
- リダイレクトなしで直接現状のリダイレクト先にユーザーをランディングさせる
-
※事例「スマートフォンでアクセスすると、Javascriptによりスマートフォン用ページにリダイレクトがされる」 – 詳しくはアナリティクスフォーラムのこちらの回答をご覧ください。
9.LPの読み込みが遅い
影響
「クリック数>セッション数」になる要因です。
チェックするポイント
ランディングページで読み込み遅延やアクセス障害などが発生している
ズレが起きる条件
「チェックするポイント」と同様です。
ズレが起きる理由
ランディングページの読み込みが遅い場合、アナリティクスタグが読み込まれて処理される前に、ユーザーに離脱される可能性が高くなります(アクセス障害が発生している場合はそもそもタグが読み込まれません)。そのため、広告クリックのみカウントされます。
対処方法
-
-
- ページ読み込みの問題を調査するWebサービス(PageSpeed Insughts)やブラウザ拡張機能(Lighthouse)を使い、問題を特定・解消してください。
-
10.LPをAMPで作っている
影響
「クリック数>セッション数」になる要因です。
チェックするポイント
ランディングページをAMPで作っている
ズレが起きる条件
「チェックするポイント」と同様です。
ズレが起きる理由
AMP(Accelerated Mobile Pages)では現在主流のアナリティクスタグ(analytics.js)を使用できないため、特別な対応をしなければGoogle広告のトラフィックを計測することができません。したがって、クリックのみがカウントされます。
対処方法
開発者に下記公式ドキュメントを参考に対応してもらう必要があります。
「Google 広告のランディング ページに AMP を使用する」
「Accelerated Mobile Pages(AMP)のトラッキング」
11.アナリティクスタグを外部ツールで出力して不具合が起きている
影響
「クリック数>セッション数」になる要因です。
チェックするポイント
以下いずれにも合致する
-
-
- 「4. タグ発火条件に不備がある」 »「チェックするポイント」で確認しても、タグの存在・発火が確認できない。
- 外部ツールのプラグインにアナリティクスタグを設置し、そのプラグインを介してタグが出力されるようになっている(HTMLのソースコードにタグが存在しない)
-
ズレが起きる条件
「チェックするポイント」と同様です。
ズレが起きる理由
珍しいケースではありますが、外部ツールのプラグインにタグを入れ、そのプラグイン経由でタグを出力させている場合、プラグインの相性・不具合に起因して、アナリティクスタグのコードそのものが出力されない、などといった事象が発生する場合があります。これが広告のクリックだけがカウントされる要因になります。
対処方法
外部ツールのプラグインにアナリティクスタグを入れているならば、Googleタグマネージャーによるアナリティクスタグでの実装(およびプレビューモードで確認)で計測結果が改善するか検証し、改善するようならばGoogleタグマネージャーへの移行をご検討ください。
12.トラッキングがブロックされている (外部要因)
影響
「クリック数>セッション数」になる要因です。
チェックするポイント
(特になし。常に起こりえます)
ズレが起きる条件
ブラウザの機能(拡張機能のアドブロックなど)によりサイトのトラッキングが制限されている
ズレが起きる理由
広告はクリックされればカウントされます。一方、アナリティクスのセッションはランディングページ読込後、アナリティクスタグが正常に動かなければ計測されません。ブラウザの機能によりサイトのトラッキングが制限されていると、アナリティクスタグが正常に機能せず、クリックのみがカウントされます。
*(図 – Googleタグマネージャー:gtm.js の処理が制限されている例)
*図 – アナリティクス:analytics.js の処理が制限されている例(Googleタグマネージャーを利用していない場合)
対処方法
(ユーザー環境に依存した挙動であり、特に対処は必要ありません)
まとめ
ズレの要因として常に起こりえるのは、ツールの計測仕様に依存した「定義によるズレ」、またはユーザーのブラウザ環境やページ読み込み前の離脱といった行動に依存した「ユーザー要因によるズレ」です。ただし、これらにより生じるズレは、基本的にさほど大きくはなく、またコントロールも難しいものです。
一方、コントロール可能な要因としては「データ取得の設定不備によるズレ」「レポートの設定不備によるズレ」「タグの動作環境の不具合によるズレ」が挙げられ、これらは運用の評価に大きな影響を及ぼす傾向にあります。
このようなズレの原因特定、および対処方法としては、本稿の各要因に記載した「チェックするポイント」をご覧いただくか、弊社窓口 からお気軽にご相談ください。