クリック・スクロールの計測を入れたい

ウェブページのボタン「予約」「お問い合わせ」が拡大され、GA4のロゴとともに虫眼鏡で強調されているイメージ。Googleアナリティクス4でクリック計測やスクロール計測を行う内容を表現した画像。 Google

このページでは、Googleアナリティクス4(GA4)で ボタンのクリック や ページのスクロール を計測するための基本的な考え方と実装例をまとめています。

GA4を導入したい(基本) ができている前提で、静的HTMLサイトでも使いやすい最低限のイベント計測 を中心に解説します。

このページの対象とゴール

このページは、次のような方を想定しています。

  • すでに GA4タグ(gtag.js) はサイトに入っている
  • 「予約ボタン」「お問い合わせボタン」などのクリック が何回押されているか知りたい
  • トップページやアクセスページの スクロール状況 をざっくり把握したい
  • タグマネージャーではなく、なるべくシンプルなJavaScriptだけで対応したい

読み終わるころには、次の状態を目指します。

  • メインのボタンに クリックイベント を仕込めている
  • GA4のイベントレポートで、どのボタンがどれくらい押されているか を確認できる
  • スクロールの計測方法(自動計測と簡易的な方法)のイメージがつかめている
ポイント:全部を測る必要はない

「サイト内のすべてのクリック」を追いかけるのではなく、予約・問い合わせ・メニューPDFダウンロードなど「お店の成果に近い動き」だけ に絞って計測するのがおすすめです。

前提:GA4タグ(gtag.js)が入っているか確認する

クリックやスクロールのイベントを送る前に、サイトに GA4タグ(gtag.js) が正しく設置されている必要があります。

<head> 内に、次のようなコードが入っているかを確認してください。

G-XXXXXXXXXX の部分は、実際の測定IDになっているはずです。まだ入っていない場合は、先にGA4を導入したい(基本)を済ませてください。

クリック計測の基本方針

GA4でクリックを計測する方法はいくつかありますが、Templyでは次のような方針をおすすめしています。

  • 重要なボタン・リンクだけを対象にする(予約・問い合わせ・メニューなど)
  • HTML側に data-* 属性で「イベント名」を書いておく
  • 共通のJavaScriptで、対象のクリックをまとめてGA4に送る
ポイント:HTMLに「意味」を書いて、JSは共通で

onclick="..." を1つ1つのボタンに書くよりも、HTMLに「何のクリックか」だけ書いておき、JavaScriptは共通ファイルにまとめると管理しやすくなります。

STEP1:重要なボタンに「イベント名」を付ける

まず、計測したいボタンやリンクに data-gtag-event という属性を付けます。

HTML側の例:予約ボタン・問い合わせボタン

data-gtag-event の値(ここでは reserve_click_header など)が、GA4に送る イベント名 になります。

ポイント:イベント名は「どこで何をしたか」が分かるように

reserve_click より、reserve_click_header のように「予約+クリック+場所」 が分かる名前にしておくと、レポートを見たときに迷いにくくなります。

STEP2:共通のスクリプトでGA4イベントを送信する

次に、先ほどの data-gtag-event が付いたリンクをクリックしたときに、GA4へイベントを送る共通スクリプトを用意します。

JavaScriptの例(共通ファイルに追加)

たとえば assets/js/main.js のような共通JSファイルに、次のようなコードを追加します。

このスクリプトにより、data-gtag-event を持つリンクがクリックされると、temply_click というカテゴリで GA4 にイベントが送信されます。

ポイント:エラーが出ないように「gtag関数があるか」を確認

if (typeof gtag === 'function') という一文を入れておくことで、何らかの理由で GA4タグが読み込めなかったときも、JavaScriptエラーでページが止まらないようにしています。

スクロール計測の考え方

スクロールの計測にはいくつかの方法がありますが、Templyでは次のような整理がおすすめです。

  • 「ページの下のほうまで読まれているか」をザックリ知りたい → スクロール量のイベントを送る
  • 「特定のセクションが表示されたか」を知りたい → そのセクションを通過したタイミングでイベントを送る
ポイント:最初は「一番下まで読んだか」ぐらいでOK

スクロールイベントを細かく分けすぎるとレポートが複雑になります。
まずは 「ページの80%ぐらいまでスクロールしたら1回記録する」 程度から始めるのが現実的です。

スクロール80%到達を1回だけ記録する例

ここでは、ページの80%付近までスクロールしたときに1度だけイベントを送る簡易的な例を紹介します。

JavaScriptの例(共通ファイルに追加)

このスクリプトは、ページの80%以上までスクロールされたタイミングで、scroll_depth_80 というイベントを1回だけ送信します。

ポイント:どのページに入れるか決める

全ページで同じスクロールイベントを入れても構いませんが、まずは「トップページ」「セールスレター」「アクセスページ」など、重要なページだけ から始めるのがおすすめです。

GA4でイベントが入っているか確認する

実装ができたら、GA4管理画面でイベントが記録されているか確認しましょう。

  1. 自分でサイトにアクセスし、予約ボタンをクリックしたり、ページを下までスクロールする
  2. GA4管理画面で「レポート」→「リアルタイム」を開く
  3. 画面下部の「イベント」に、reserve_click_header や scroll_depth_80 などが表示されるか確認
  4. しばらく時間が経ったら、「レポート」→「エンゲージメント」→「イベント」でも集計を確認
ポイント:イベント名のつけ方で後の見やすさが決まる

イベント名は、後から一覧で見たときに「何を表しているのか」すぐ分かることが重要です。
クリック・スクロールともに、命名ルールをメモに残しておくと安心です。

次のステップ:GA4でできることを少しずつ広げる

クリック・スクロールの計測ができたら、「予約フォームの送信」や「外部予約サイトへの遷移」など、もう一歩踏み込んだ動きも追いかけていきましょう。

アクセス解析(GA4)の設定を進める

サイトに来た人の動きや人気ページを把握したい場合は、GA4の導入とイベント計測を設定しておくと便利です。

埋め込み〜レスポンシブ〜軽量化を整理する

「とりあえず表示する」ところから、「スマホでも見やすく、できるだけ軽い」状態まで、一度流れを振り返っておくと安心です。

Search Console関連の設定を見直す

Search Consoleの基本設定・サイトマップ・インデックス状況をセットで押さえておくと安心です。

Googleマップと相性の良い設定

実店舗を運営している場合は、Googleマップ上に表示される店舗情報も一緒に整えておくと効果的です。

※本記事の内容は 執筆時点の情報 に基づいています。
料金・仕様・画面デザインなどは変更される場合がありますので、最新の情報は公式サイトにてご確認ください。

GoogleAnalytics-GA4
Templyをフォローする
タイトルとURLをコピーしました