GA4のレポートを開いたら、localhostや見覚えのないテスト用ドメインが混ざっている。「この数字、なんだろう?」というときは、本番と同じ測定IDのGoogleタグが、ローカル環境やテスト環境でも動いていないかを見ます。
まず「ホスト名」で送信元を調べて、今後のデータはGA4のフィルタかGTMの発火条件で分けます。ただし、これらの設定は過去のデータにはさかのぼって適用されません。また、GA4のフィルタが有効になったあとに除外されたデータは復元できません。対象を確認してから設定を変えます。
この記事でわかること
本番以外のアクセスが入る原因と、GA4で送信元のホスト名を確認する方法を整理します。GA4とGTMのどちらで除外するか、今後データが混ざらないようにする方法も扱います。
本番以外のアクセスが入る原因
よくある原因は、本番と同じ測定IDへデータを送るGoogleタグが、ローカル環境やテスト環境でも動いていることです。
WordPressサイトやHTML一式を複製すると、計測タグもそのまま複製されます。その状態でテストページを開けば、URLが本番と違っていても、イベントは同じGA4プロパティに送られます。
よくあるのは、テスト環境に本番用のGTMコードが入っていたり、ローカル環境で本番用コンテナを読み込んでいたりするケースです。HTMLへ直接書いたGoogleタグが複製先に残っている場合や、複数サイトで同じ測定IDを使っている場合もあります。
ただし、見覚えのないホスト名があるだけでは、原因をタグの複製と断定できません。実際にどのサイトや環境から送られたデータなのか、タグの設置状況とあわせて確認します。
ページパスが/contact/だけでは、本番かテストかを見分けられません。GA4ではURLのドメイン部分を「ホスト名」で確認できるので、まずこの値を見ます。
GA4でホスト名を確認する
除外設定の前に、本番として残すホスト名と、不要なホスト名を分けます。どれを残すか決めないまま進めると、必要なデータまで除外しかねません。
確認しやすいのは、GA4の「探索」にある自由形式です。
- 「探索」を開き、「自由形式」を選ぶ
- 確認したい期間を設定する
- 「ディメンション」に「ホスト名」を追加する
- 「指標」に「イベント数」を追加する
- 「行」に「ホスト名」、「値」に「イベント数」を配置する
- 表示されたホスト名を確認する
「ページとスクリーン」などのレポートでも、追加ディメンションとして「ホスト名」を選べる場合は確認できます。メニューや選択肢が見つからないときは、上の探索を使います。
| ホスト名 | 扱い |
|---|---|
www.example.com | 本番サイトとして残す |
staging.example.test | テスト環境として除外する |
localhost | ローカル環境として除外する |
ホスト名には、https://やページのパス、ポート番号を含めません。たとえばhttp://localhost:3000/contact/なら、ホスト名はlocalhostです。条件を入力するときも、探索で確認したホスト名を使います。
見覚えのないホスト名でも、本番で必要な送信元の場合があります。たとえばフォーム用サブドメインや予約システムなどです。除外するかどうかは、どこから送られたデータなのかが分かってから判断します。
GA4のウェブホスト名フィルタで除外する
除外するホスト名が分かっているなら、GA4のウェブホスト名トラフィック用のデータフィルタが使えます。Googleの英語ヘルプでは「Web hostname traffic filter」として案内されています。
設定場所は次のとおりです。
管理
→ データの収集と修正
→ データフィルタ
→ フィルタを作成
ホスト名を対象にするテンプレートを選び、フィルタ名、除外するホスト名、マッチタイプを設定します。作成には、対象プロパティの編集者以上の権限が必要です。
| マッチタイプ | 対象の指定方法 |
|---|---|
| 完全一致 | localhostや特定のテストドメインだけを対象にする |
| 次を含む | 複数のホスト名に共通する文字列でまとめる |
「次を含む」は、対象になるホスト名の範囲が広がりがちです。指定する文字列が、本番のホスト名にも一致していないか確認します。特定のホスト名だけを除外したいなら、完全一致のほうが、どのホスト名が対象になるか分かりやすくなります。
最初は「テスト」にする
いきなり「有効」にせず、まず「テスト」で作成します。テスト状態では、条件に一致するデータに印が付きます。その印を使って、除外対象を確認できます。
Googleは、テスト状態にしてから検証するまで24〜36時間待つよう案内しています。対象のテスト環境と本番環境へアクセスしたうえで、設定後の期間を含めて探索を確認します。
- 自由形式の「ディメンション」に「テストデータのフィルタ名」と「ホスト名」を追加する
- 「指標」に「イベント数」を追加する
- 「行」に上の2つのディメンション、「値」に「イベント数」を配置する
- 「フィルタ」で「テストデータのフィルタ名」を選ぶ。「次を含む」に作成したフィルタ名をそのまま入力して絞る
- 対象のテスト用ホスト名が表示されることと、本番ホスト名が含まれていないことを確認する
何も表示されない場合は、それだけで問題なしとは判断できません。期間や反映待ち、対象環境でデータが発生しているかを確認します。不要なホスト名だけに一致していることを確かめてから、「有効」に切り替えます。
有効化後も、除外が始まるまで24〜36時間かかると案内されています。設定直後の数字だけでは判断せず、反映を待ってから確認します。Google公式ヘルプ:ウェブホスト名トラフィックの除外(英語)
なお、有効なフィルタで除外されたデータは、あとからフィルタを無効にしても復元できません。テストは誤設定を見つけるための確認であって、すべての計測パターンを保証するものではありません。Google公式ヘルプ:データフィルタ(英語)
GTMで本番環境からだけ送信する
GTMを使っているなら、本番以外でGA4用のタグを動かさない方法もあります。
GTMの組み込み変数「Page Hostname」を使って、Googleタグのトリガーに次の条件を設定します。
Page Hostname 等しい www.example.com
www.example.comの部分には、自分の本番ホスト名を入れます。wwwありとなしは別のホスト名です。両方で計測が必要なら、どちらも許可する設定にします。
元の発火タイミングを確認したうえで、すべてのページを対象にしていた条件を、本番ホスト名だけに絞ります。条件付きのトリガーを追加しても、同じタグに無条件のトリガーが残っていれば、本番以外でもタグが発火する可能性があります。
この設定なら、許可したホスト名以外では、そのトリガーからGoogleタグが発火しません。テスト環境が増えるたびに除外条件を追加しなくて済むのが利点です。
ただし、Googleタグ1つを変更して終わりとは限りません。クリックやフォーム送信を計測する別のGA4イベントタグや、同じGA4測定IDへ送信するほかのGTMタグ・コンテナも確認します。HTMLに直接書かれたGoogleタグや、WordPressプラグインなどGTM以外からの送信も確認の対象です。
GTM内のGA4イベントタグにも、本番以外で発火しない条件が必要です。HTMLに直接書いたタグやプラグインからの送信は、GTMの条件では止まりません。
公開前にはGTMのプレビューを使い、Tag Assistantで本番とテスト環境の両方を確認します。本番では必要なタグが発火し、テスト環境では発火しないことを、ページ表示だけでなくクリックやフォーム操作でも確認します。Google公式ヘルプ:コンテナのプレビューとデバッグ
GA4とGTMのどちらを使うか
不要なホスト名が分かっていて、GA4側で除外するなら、ウェブホスト名フィルタです。本番以外からは最初から送信したくないなら、GTMのPage Hostnameを使います。大まかには、このように使い分けます。
| 方法 | 向いているケース | 注意点 |
|---|---|---|
| GA4のホスト名フィルタ | 除外するホスト名が明確 | 有効なフィルタで除外されたデータは復元できない |
| GTMのPage Hostname | 本番だけを送信元として許可したい | GTM外のタグには適用されない |
| テスト用のGA4プロパティを分ける | テスト環境も計測したい | 本番用の測定IDと混同しない |
GA4タグをGTMだけで管理している小さなサイトなら、GTMで本番だけ送信する形が分かりやすいです。設置経路が複数あるなら、それぞれの送信先を確認しつつ、GA4側のフィルタも候補になります。
テスト環境のデータも残したい場合は、テスト用の別プロパティを用意し、環境ごとに送信先の測定IDを切り替えます。同じプロパティ内でデータストリームだけを分けても、プロパティ全体の集計には両方のデータが入ります。
過去に入ったデータは表示条件で分ける
GA4のデータフィルタもGTMの発火条件も、過去に収集したデータにはさかのぼって適用されません。設定を変えても、すでに混ざっているレポートの数値が自動で直るわけではありません。
過去の分析をしたいときは、レポートやデータ探索にホスト名の条件を追加して、本番ホスト名だけを表示します。元データを削除する操作ではなく、分析するときの表示対象を絞る方法です。
GA4には別途データ削除リクエストもありますが、今回のホスト名フィルタやGTMの設定変更とは別の機能です。過去のテストアクセスが気になるときは、まず表示条件で分けて確認します。
自分で進められる範囲と、いったん止める条件
本番ホスト名が1つで、不要なテスト用ホスト名もはっきりしているなら、自分でも進めやすい設定です。GA4ではフィルタをテスト状態にすると、反映前に対象を確かめられます。GTMではプレビューで確認できます。
一方、本番サイトが複数のドメインやサブドメインにまたがっている場合や、GTMとHTML直書きの両方でGoogleタグを設置している場合は、フィルタを有効にする前に構成を整理します。
Google広告など、GA4以外のタグにも影響するトリガーを使っている場合も、先に構成を整理します。どのホスト名が本番として必要なのか判断できない場合や、テスト環境が探索に出てこず設定が合っているか確認できない場合も、構成の整理から進めます。
共有しているトリガーを変更すると、ほかのタグにも影響することがあります。とくにGA4のフィルタで除外されたデータは戻せません。対象が曖昧なうちは、無理に進めないほうが安全です。
おわりに
GA4にローカル環境やテスト環境のアクセスが入るときは、本番と同じ測定IDへデータを送るタグが動いていないか確認します。まずホスト名で送信元を調べて、既知の不要な送信元はGA4のフィルタ、本番以外から送らない形にしたいならGTMのPage Hostnameで分けます。
本番で必要なデータまで除外したり、送信を止めたりすると、本番の集計にも影響します。GA4はテスト状態で対象のホスト名を確認し、GTMは本番とテスト環境の両方で発火を確かめてから反映します。
GA4とGTMの両方に設定があってどこを直せばよいか分からない、フィルタを有効にする前に対象を確認しておきたい。そんなときは、お力になれると思うので、お気軽にご相談ください。



