はじめに
はじめまして、kzkio(@kzkio_0114)と申します。
まず、初学者の記事に足を運んでいただきありがとうございます。
今回は、アウトプットを兼ねて、Google Analytics(GA4) の導入方法と特定IPアドレスの除外を記事にしました。
特定IPアドレスの除外を試みた際、公式ドキュメントを参考にしながら設定を進めましたが、上手くいかず時間がかかりました。そのため、初学者でもスムーズに設定できるよう、シンプルでスクリーンショットを取り入れた手順を自分なりにわかりやすくまとめることにしました。
留意点:
記事作成用に、アナリティクス アカウントとアプリを作成しているため、できる限り伏せ字を減らし、わかりやすさを重視しています。ただし、地域やIPアドレスなどの情報はセキュリティ上の理由で非公開としていますので、ご了承お願いします!
用意するもの
- 使用するアプリ(今回はRailsで作成したアプリを使用)
- Googleアカウント
使用スタック
- Rails 7.2.1
- Ruby 3.3.1
Google Analyticsとは
Google アナリティクスは、Googleが提供する無料のウェブ解析サービスで、ウェブサイトのトラフィック分析やユーザー行動の把握が可能です。具体的には、以下のようなデータの収集と分析が行えます。
主な機能と用途
- ユーザー分析:訪問者数、新規/リピーター、地域、言語、デバイスなどの情報を提供
- トラフィック源分析:どの経路(検索エンジン、リファラル、ソーシャルメディアなど)を通じてサイトに来たかを追跡
- コンテンツ分析:最も閲覧されているページ、ページビュー数、滞在時間の計測
- コンバージョン追跡:特定の行動(購入、フォーム送信、登録など)に対するユーザーの行動を測定
- ユーザー行動追跡:サイト内でのユーザーの行動パターンや影響を与えるコンテンツの特定
注意点
Google Analyticsを使用する場合、プライバシーポリシーにアクセス解析の内容を記載することが推奨されます。特に、Cookieや個人情報の収集に関する情報を明確にした方がいいでしょう。
基本設定の手順
1. Googleアカウントのログインとアナリティクスの開始
- Googleアカウントにログインし、Google Analytics 設定ページにアクセスします。
2. アナリティクス アカウント名の設定
- アカウント名を入力し、「次へ」を選択します。
- Googleのプロダクトとサービスのオプションは必要に応じて選択できます。
3. プロパティ名、タイムゾーン、通貨の設定
- プロパティ名を入力し、レポートのタイムゾーンと通貨を設定します。
4. 業種とビジネス規模の選択
- アプリ内容に最も近い業種を選択し、ビジネスの規模を設定します。
5. ビジネス目的の選択と利用規約への同意
- ビジネスの目的を選択し、Google Analyticsの利用規約に同意します。
6. プラットフォームの選択
- 「ウェブ」を選択して次に進みます。
7. アプリURLとストリーム名の記入
- アプリのURLとストリーム名を入力し、ウェブサイトのタグが正しく動作するかテストします。
8. トラッキングコードの組み込み
- 「手動でインストールする」からトラッキングコードをコピーし、
app/views/layouts/application.html.erb
ファイルの<head>
内に貼り付けます。
(Rails以外のアプリの場合は、layouts/application.html.erb
と同様の役割を持つファイルに貼り付けてください。)
<!DOCTYPE html>
<html>
<head>
<title><%= content_for(:title) || "analytics-test" %></title>
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="mobile-web-app-capable" content="yes">
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-25LB5Z9TEW"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-25LB5Z9TEW');
</script>
<%= yield :head %>
<link rel="manifest" href="/manifest.json">
<link rel="icon" href="/icon.png" type="image/png">
<link rel="icon" href="/icon.svg" type="image/svg+xml">
<link rel="apple-touch-icon" href="/icon.png">
<%= stylesheet_link_tag "application", "data-turbo-track": "reload" %>
<%= javascript_include_tag "application", "data-turbo-track": "reload", type: "module" %>
</head>
<body>
<%= yield %>
</body>
</html>
9. トラッキングコードのデプロイとテスト
- トラッキングコードを反映させた後、再デプロイを行い、リアルタイムでのデータ収集が行われているか確認します。
- レポート画面のリアルタイムで、トラッキングコードが有効かどうかをテストします。
テスト方法は、自分のアプリにアクセスしてアクティブユーザー数がカウントされれば問題ないです。
基本設定が完了したら、特定IPアドレスの除外が必要な場合は、次のステップに進みます。
特定IPアドレスの除外方法
1. 管理画面に移動
- Google Analyticsホーム画面に移動し、左下の「管理」をクリックして管理者設定を開きます。
2. データストリームを選択
- 「データストリーム」を選択し、自分で作成したデータストリームを選択し、ウェブストリームの詳細に進みます。
3. タグ設定を行う
- データストリームの詳細画面にある「タグ設定を行う」をクリックします。
4. 内部トラフィックの定義を設定
- 「もっとみる」をクリックし、「内部トラフィックの定義」を選択を行う。「内部トラフィックルールを作成」を行います。
5. 内部トラフィックルールを作成し、ルール・IPアドレスを設定
- ルール名を設定(例:analytics-test)、「traffic_type」を「internal」に設定します。
- 「IPアドレスのマッチタイプ」を選択し、IPアドレスを入力します。
(IPアドレスが不明の場合は、ページ内のIPアドレスを確認からできます。)
マッチタイプ | 設定方法 | 値の例 |
---|---|---|
IPv4 | IPアドレスが次と等しい | 111.222.33.444 |
IPv6 | IPアドレスに含む | 1111:2222:3333:4444: |
今回は、以下の設定でIPアドレスを追加しています。
- IPv4は固定アドレスであるため、「次と等しい」を選択しています。
- IPv6は変動しやすいため、「IPアドレスに含む」を選択し、変動が少ない左側の4つのセグメントを対象としています。
6. フィルタの保存と適用
- IPアドレス設定が完了したら、フィルタ設定を保存します。データフィルタの適用には24~36時間かかる場合があります。
反映されていない場合
7. フィルタのテスト
- レポートのスナップショットまたは、リアルタイムの概要を開き、比較の作成をしフィルタが正しく反映しているか確認します。
- 「比較対象を追加」機能を使用後、比較を表示を押しフィルタされたデータを確認しアプリにアクセスしたものが対象になっているかを確認します。(オレンジの右がテストデータ)
8. テストデータの有効化
- フィルタのテストが完了したら、管理画面から「データフィルタ」に移動し、ステータスを「有効」に変更します。
9. 最終確認
- リアルタイムに戻り、アプリやウェブサイトにアクセスして、除外が正しく適用されているか最終確認します。
この動画の様に、除外ができていればイベントを起こしても何も反映されないです。
まとめ
この記事では、Google Analytics (GA4) の初期設定と特定IPアドレスの除外に関する手順を、初学者でもスムーズに進められるようにできるだけシンプルにまとめました。公式ドキュメントや他の記事では分かりづらい部分もあったため、スクリーンショットを取り入れて視覚的に理解しやすくすることを心掛けました。
今回の記事が、皆さんのGoogle Analytics導入・設定に役立つことを願っています!
不明点や改善点があれば、お気軽にコメントいただけると嬉しいです!
長い記事となりましたが、最後までお読みいただきありがとうございました。