「広告経由のはずのCVが、GA4で『Direct / (none)』に分類されている」「Meta広告のキャンペーンが2行に分かれて表示される」。月次レポートを開くたびに、UTMパラメータの不備が原因で集計が崩れている、という現場は少なくありません。
UTMパラメータは一度仕込めば自動で動く仕組みのように見えますが、実態は GA4側の判定ロジックと噛み合わない値を入れた瞬間にチャネル分類が崩壊する 繊細な仕組みです。本記事ではUTMパラメータの正しい使い方を、GA4の公式仕様から逆引きで整理し、チャネル分類が機能しなくなる4パターンとその対処までを解説します。
この記事のまとめ#
- UTMパラメータは5つ(source / medium / campaign / term / content)。このうち source / medium / campaign の3つは出稿時に必ず指定する。値はすべて 小文字統一・ハイフン区切り が事故防止の基本ルール
- GA4でチャネル分類されない4パターン:①GA4公式リストに無い値の混入、②大文字小文字・表記揺れ、③mediumの正規表現条件と矛盾する組み合わせ、④リダイレクト・referrer policy等によるパラメータ欠損
- UTMは「広告経由」を識別するための仕組みであって、サイト全体の売上効率を見る指標ではない。チャネル横断で売上効率を判断するには、UTMで分類したセッションを束ねた セッション軸の指標 が別途必要
1. UTMパラメータとは — 5つの基本パラメータの役割#
UTM(Urchin Tracking Module)パラメータは、URLの末尾にクエリ文字列として付与する5種類のタグです。流入元の情報をURL自身に埋め込み、Google Analyticsやその他の解析ツールに「このアクセスは○○広告経由だ」と教える役割を持ちます。
GA4が公式に認識するUTMパラメータは次の5つです[1]。
| パラメータ | 必須/任意 | 何を入れるか | GA4での表示位置 |
|---|---|---|---|
utm_source | 必須 | 流入元の媒体名(例:google / facebook / newsletter) | 「参照元」(source) |
utm_medium | 必須 | 流入の種類(例:cpc / email / social) | 「メディア」(medium) |
utm_campaign | 必須 | キャンペーン名(例:spring-sale-2026) | 「キャンペーン」(campaign) |
utm_term | 任意 | 検索キーワード(主に有料検索広告) | 「キーワード」(term) |
utm_content | 任意 | 同一広告内のクリエイティブ識別(例:hero-banner-a) | 「広告コンテンツ」(content) |
URLとしては次のような形になります。
https://example.com/lp/?utm_source=google&utm_medium=cpc&utm_campaign=spring-sale-2026&utm_content=hero-banner-a
GA4は utm_source と utm_medium の組み合わせ をもとに、Googleが定義した「Default Channel Group(デフォルトチャネルグループ)」のルールに従って、各セッションを Paid Search / Organic Social / Direct などのチャネルに自動分類します[2]。つまり、UTMパラメータの値が分類ルールと噛み合わないと、チャネルレポートはその瞬間に意味をなさなくなる、という構造です。
1.1 utm_source と utm_medium の使い分け#
実務で最も詰まりやすいのが、utm_source と utm_medium の使い分けです。基本ルールは次の通りです。
utm_source= 「どこから来たか」(具体的な媒体名・サイト名・サービス名)utm_medium= 「どういう種類の流入か」(広告/メール/自然流入/ソーシャル等)
例:
- Google検索広告 →
source=google/medium=cpc - Facebookメルマガ拡散 →
source=facebook/medium=social - 自社メルマガ →
source=newsletter/medium=email - ヤフー検索広告 →
source=yahoo/medium=cpc
「広告/自然流入/メール/SNSのどれに分類されるべきか」を考えるのが utm_medium、「具体的にどのプラットフォーム経由か」を表すのが utm_source です。この2つを混同すると、後述するチャネル分類トラブルの大半が発生します。
1.2 utm_term と utm_content の役割#
任意項目ですが、運用が成熟してくると2つとも実務で重宝します。
utm_term:有料検索広告で、入札しているキーワードを記録する用途が中心。Google広告の自動入札やDSAでは自動付与されるutm_content:同じキャンペーン内で クリエイティブのA/Bテスト を行うときの識別子。「ヘッダー画像Aパターン vs Bパターン」「CTA文言X vs Y」を区別するのに使う
GA4では utm_term は「キーワード」、utm_content は「広告コンテンツ」というディメンションで切り出せます。レポートの粒度を上げるための任意パラメータと考えれば良いです。
2. UTMパラメータの命名規則 — 表記揺れが事故を生む#
UTMパラメータで最も多い事故は、技術的なバグではなく 表記揺れ です。同じキャンペーンで facebook / Facebook / fb / meta が混在すると、1つのキャンペーンが4行に分割されて、それぞれが本来の3〜4分の1の数字で表示されます。媒体管理画面では「キャンペーン全体で売上100万円」だったものが、GA4では「facebook 25万円 / Facebook 25万円 / fb 25万円 / meta 25万円」のように分散し、レポートの読み手は「結局どれが正しいんだ」と混乱します。
この事故を防ぐ命名規則の基本ルールは次の3点です。
2.1 小文字統一#
GA4は utm_source の値を 大文字と小文字を区別して保存 します[2]。facebook と Facebook は別物として集計されます。社内ルールで「すべて小文字」を徹底するだけで、表記揺れの大半が回避できます。
2.2 ハイフン区切り(スペース・アンダースコアは避ける)#
utm_campaign=spring sale 2026 のように 空白を含めると、URLエンコードで %20 に変換 され、GA4のキャンペーン名に spring%20sale%202026 と表示される事故が起きます。spring-sale-2026 のようにハイフン区切りで統一するのが安全です。アンダースコア(spring_sale_2026)も技術的には動きますが、GA4の他のメトリクスと混同しやすいため、ハイフン推奨が業界の事実上の標準です。
2.3 日本語を含めない#
utm_campaign=春のセール のように日本語を含めると、URLエンコードで %E6%98%A5%E3%81%AE のような長い文字列に展開されます。GA4のレポートでは見た目に解釈不能な文字列になるため、英数字+ハイフンに統一するのが鉄則です。
2.4 命名規則テンプレート — チームで共有する設計表#
UTMパラメータの値を場当たり的に決めると、3か月後には誰がどんなルールで命名したか分からなくなります。社内で共有する命名規則テンプレートを最初に作っておくと、長期的なレポート品質が安定します。
| 媒体 | utm_source | utm_medium | utm_campaign例 | utm_content例 |
|---|---|---|---|---|
| Google検索広告 | google | cpc | 2026-spring-sale-search | headline-a |
| Yahoo検索広告 | yahoo | cpc | 2026-spring-sale-yss | headline-a |
| Meta広告(Facebook/Instagram) | facebook | cpc | 2026-spring-sale-meta | image-a |
| LINE広告 | line | cpc | 2026-spring-sale-line | talkhead-a |
| メルマガ | newsletter | email | 2026-04-newsletter | top-cta |
| アフィリエイト | affiliate | referral | 2026-spring-sale-aff | partner-x |
| プレスリリース | prtimes | referral | 2026-04-prtimes | — |
| YouTube動画概要欄 | youtube | social | 2026-spring-sale-yt | video-x |
utm_source の選び方には注意点があります。GA4は utm_source の値を「ソースカテゴリリスト」と突き合わせて、facebook を SOURCE_CATEGORY_SOCIAL に自動分類します[3]。リストに無い値(例:meta)を入れると、Paid Social ではなく Referral に分類されてしまうため、特にMeta広告では utm_source=facebook 固定が安全です。詳細は別記事 Meta広告のutm_source、結局何を入れるのが正解か で扱っています。
3. GA4でチャネル分類されない4パターンと対処#
UTMパラメータを設定したのに、GA4のチャネルレポートで意図したチャネル(Paid Search / Paid Social等)に分類されない事故は、原因のパターンがほぼ4つに収まります。順番に整理します。
| # | 原因パターン | 結果の分類先 |
|---|---|---|
| 1 | 公式リスト外の utm_source 値(例:utm_source=meta) | Referral / (other) |
| 2 | 大文字小文字・表記揺れの混入(facebook / Facebook / fb 混在) | 1キャンペーンが複数行に分裂 |
| 3 | utm_medium=social と utm_source=facebook の OR条件矛盾 | Paid Social が Organic Social に混入 |
| 4 | リダイレクト・referrer policy 等で UTM が消失 | Direct / (none) |
3.1 パターン1:GA4公式リストに無い utm_source を使っている#
GA4のチャネル分類は、utm_source の値を Googleが配布する「Default Channel Group Source Categories」リスト と突き合わせて判定します[3]。このリストには2026年4月時点で約820件のソース名が登録されており、facebook は SOURCE_CATEGORY_SOCIAL、google は SOURCE_CATEGORY_SEARCH、youtube は SOURCE_CATEGORY_VIDEO のように分類されます。
リストに 存在しない値 を utm_source に指定すると、GA4はその流入を「ソーシャルでも検索でも動画でもない」と判定し、Referral または (other) に分類します。具体例として utm_source=meta がよく挙げられます。社名がMetaに変わってからこの値で出稿する運用者が増えましたが、リストに meta は登録されていないため、Paid Social に分類されません[3]。
対処:
- 出稿前に、使う
utm_sourceがリストに含まれているかを確認する - 主要媒体は次の値で固定する:
google/yahoo/bing/facebook/instagram/twitter/line/youtube/tiktok - リストに無い値を使う必要があるなら、GA4の管理画面で チャネルグループのカスタム定義 を追加し、自社専用のチャネル分類ルールを作る
3.2 パターン2:大文字小文字・表記揺れの混入#
前述の通り、GA4は utm_source の値を大文字小文字を区別します。同じキャンペーンで Facebook と facebook が混在すると別行で集計されます。さらにありがちなのが、出稿担当者ごとに表記が違うパターンです。
| 担当者 | 入れた値 | GA4での扱い |
|---|---|---|
| Aさん | facebook | SOURCE_CATEGORY_SOCIAL |
| Bさん | Facebook | SOURCE_CATEGORY_SOCIAL(別行) |
| Cさん | fb | SOURCE_CATEGORY_SOCIAL(さらに別行) |
| Dさん | meta | SOURCE_CATEGORY_SOCIAL に該当しない |
担当者が4名いると、1キャンペーンが4行に分かれ、うち1行(meta)はそもそもPaid Socialから外れます。月次レポートで「Paid Socialが急減した」と見えるのに、実態は分類が剥がれただけ、という事故が起きます。
対処:
- 命名規則テンプレート(前述2.4)を1ページにまとめ、出稿担当者全員が参照する場所(社内Notion・Google Drive等)に置く
- Google公式の Campaign URL Builder を必ず使う運用に統一する。手で打たないことで表記揺れの大半が消える
- 出稿URLは1人がレビューしてから配信する2段階チェック体制を作る
3.3 パターン3:medium と source の組み合わせがGA4の正規表現と矛盾する#
GA4のチャネル分類は、utm_source 単独ではなく utm_source と utm_medium の組み合わせ を見ます。Default Channel Groupの判定ロジックは公開されており、たとえば Paid Social に分類される条件は次の通りです[2]。
utm_sourceがソーシャル系のソースリストに一致する ANDutm_mediumが正規表現^(.*cp.*|ppc|retargeting|paid.*)$に一致する
問題は Organic Social の判定ロジックがOR条件で書かれていることです[2]。
utm_mediumがsocial/social-network/social-media/smのいずれかに一致する ORutm_sourceがソーシャルリストに一致する
このため、utm_source=facebook + utm_medium=social で出稿すると、utm_medium=social の一致だけで Organic Social に分類されてしまい、有料広告経由の売上が「自然流入」として計上されます。Paid Socialのレポートが空になり、ROASの分子が外れて広告効果が過小評価されます。
対処:
- Meta広告・X広告・LINE広告など 有料の ソーシャル広告は、
utm_medium=cpc固定にする utm_medium=socialは、自然投稿(Organic Social)からの流入だけに使う- 出稿前にGA4のリアルタイムレポートでチャネル分類を確認する(後述の5章)
3.4 パターン4:リダイレクト・referrer policy 等で UTM が消える#
意外に見落とされがちなのが、出稿時には正しいUTMを付けていたのに、ユーザーがLPに着地するまでの 経路上でパラメータが落ちる 事故です。代表的な発生原因は次の通りです[4]。
- 短縮URLサービスのリダイレクト:一部の短縮URLサービスは、リダイレクト先でクエリ文字列を保持しない実装になっている
- HTTPS→HTTPの遷移:HTTPSページからHTTPページにリダイレクトすると、ブラウザがリファラーを送信せず、UTMも消える
- referrer-policy: no-referrer:LP側のHTMLに
<meta name="referrer" content="no-referrer">が指定されていると、リファラー経由でのソース判定が一切できなくなる - アプリ内ブラウザ経由:LINEやFacebookのアプリ内ブラウザで開かれたリンクは、ブラウザの実装によってリファラーやUTMが落ちる
UTMが消えると、本来は広告経由のセッションが Direct / (none) または (not set) に分類されます。GA4で「Direct」が30%を超えている事業者は、広告経由のCVがここに10〜20%紛れ込んでいる可能性があります。詳細は別記事 GA4の『Direct / (none)』が増える5つの原因と診断・対処 で整理しています。
対処:
- 出稿URLには独自ドメインの短縮URL(自社サーバー経由)を使うか、UTMをそのまま含む長いURLで配信する
- LPは必ずHTTPSで配信し、HTTPS→HTTPのリダイレクトを発生させない
- LP側のHTMLに
referrer-policy: no-referrerを設定しない(必要ならstrict-origin-when-cross-originを選択) - 主要広告媒体ごとに、配信前のテストアクセスでGA4 DebugViewにUTMが正しく届いているかを確認する
4. UTMパラメータの生成 — Campaign URL Builder の使い方#
Google公式が提供する Campaign URL Builder は、UTMパラメータ付きURLを生成するための無料ツールです[5]。手打ちでURLを組み立てると表記揺れや空白混入の事故が起きやすいため、このツールに統一するのが現場では現実的です。
使い方は次の通りです。
- Google Campaign URL Builder にアクセス
- Website URL:LPの完全なURL(
https://example.com/lp/)を入力 - Campaign ID:(任意)社内のキャンペーンIDがあれば入力
- Campaign Source:
utm_sourceの値(例:facebook) - Campaign Medium:
utm_mediumの値(例:cpc) - Campaign Name:
utm_campaignの値(例:2026-spring-sale-meta) - Campaign Term:(任意・有料検索広告の場合)入札キーワード
- Campaign Content:(任意)クリエイティブ識別子
入力すると、ページ下部に完成形のURLが自動生成されます。そのURLをコピーして、広告管理画面の遷移先URLに貼るだけ です。手打ちでURLを組み立てる工程を経ないことで、空白の混入・全角スペース・タイポを構造的に防ぎます。
4.1 Meta広告のダイナミックパラメーター#
Meta広告では、Campaign URL Builderで生成したURLの値を、Meta公式の URLダイナミックパラメーター に置き換えると、配信時に自動で実値に展開できます[6]。
utm_source=facebook
utm_medium=cpc
utm_campaign={{campaign.name}}
utm_content={{ad.name}}
utm_term={{adset.name}}
utm_id={{campaign.id}}
{{campaign.name}} のようなマクロは、配信時にMeta側でキャンペーン名・広告セット名・広告名に自動展開されます。広告ごとに個別のUTMを手で書く工程が不要になり、A/Bテスト時の集計粒度も自動的に確保されます。
4.2 Google広告の自動タグ設定(GCLID)#
Google広告では auto-tagging(自動タグ設定)を有効にすると、gclid パラメータが自動付与され、UTMを書かなくても広告レポートが完全な状態でGA4に届きます[7]。Google広告アカウントの「設定」→「アカウント設定」→「自動タグ設定」を有効にしておくのが事実上の標準です。
ただし auto-tagging を有効にしていてもUTMを併用すること自体は妨げません。社内レポート用に utm_campaign を残しておくと、GA4以外のBIツール(Looker Studio・社内DWH)で集計するときに便利です。
5. UTMパラメータの動作検証 — 出稿前のチェックリスト#
UTMの設定ミスに配信開始後に気づくと、その期間の集計が永久に欠損します。出稿前に動作検証を完結させる手順をルーチン化するのが、長期のレポート品質を守る一番の近道です。
5.1 GA4 DebugView で確認する#
GA4の DebugView を使うと、自分のセッションを実時間で観測できます。
- PCで Chrome に GA Debugger 拡張機能をインストール
- 出稿予定URLにアクセス(実装中のサーバーでもOK)
- GA4管理画面の「DebugView」を開き、
page_viewイベントを確認 - イベントの詳細パラメータに、
source/medium/campaignが期待値で入っているかを目視
URLパラメータが消えていたり、utm_source の値がリストに無い場合は、ここで検出できます。
5.2 GA4 リアルタイムレポートでチャネル分類を確認#
DebugViewでイベントが届いていることを確認したら、GA4の 「リアルタイム」 レポートで、自分のセッションがどのチャネルに分類されているかを確認します。「ユーザーの最初の参照元 / メディア」「セッションのデフォルトチャネルグループ」が想定通り(例:Paid Social)になっていれば、出稿後も同じ分類で集計されます。
5.3 リダイレクト経路でのパラメータ保持を確認#
短縮URL・アフィリエイトリンク・自社の独自ドメイン短縮URLを経由する出稿の場合、リダイレクトの最終LPでUTMが残っているかを確認します。手順は次の通りです。
- 出稿予定の短縮URLにブラウザでアクセス
- アドレスバーが最終LPに変わったタイミングで、URLにUTMパラメータが含まれているかを目視
- 含まれていなければ、短縮URLの設定または独自ドメイン短縮URLの実装を見直す
5.4 出稿前チェックリスト#
実務で運用するなら、次のような出稿前チェックリストをチームで共有しておくと、事故率が大幅に下がります。
-
utm_sourceutm_mediumutm_campaignの3つが指定されている - すべて小文字・ハイフン区切りで統一されている
-
utm_sourceがGA4公式リストに含まれているか、独自値ならカスタムチャネルグループを設定済み -
utm_mediumの値が、GA4の判定ロジックで意図したチャネル(Paid Search / Paid Social / Email等)に分類される - Campaign URL Builderで生成したURLをそのままコピーしている(手打ちしていない)
- DebugViewで
source/medium/campaignの値を確認した - リアルタイムレポートで意図したチャネルに分類されている
- 短縮URL経由の場合、リダイレクト後もUTMが残っている
6. UTMだけでは見えないもの — チャネル横断で売上効率を見る視点#
ここまでUTMパラメータの正しい使い方を整理してきましたが、UTMはあくまで「この流入は何経由か」を識別するための仕組みであって、売上効率そのものを測る指標ではありません。レポートの読み手としては、UTMで分類されたセッションを束ねた上で、チャネル別の売上効率を比較する一段上の視点が必要になります。
たとえば次のような問いには、UTMの設定が完璧でも答えられません。
- Paid Socialのセッションと、Organic Searchのセッションで、1セッションあたりの売上はどちらが高いか
- メルマガ経由のCV率は、検索広告経由と比べて何倍か
- 同じ予算をブログSEOに振り向けたら、長期的な売上効率はどう変わるか
これらの問いに答えるには、チャネル別に「セッション数 × CV率 × 客単価 = 売上」を分解 して、1セッションあたりの売上効率を比較する必要があります。私たちはこの軸を RPS(Revenue Per Session) と呼んでいて、ROASと並べて運用すると、「広告キャンペーンの効率」と「サイト全体の売上効率」を二段で判断できるようになります。
UTMの設定品質は、このRPSを正しく計算するための 前提条件 です。UTMが崩れているとチャネル分類が歪み、RPSの分母(セッション数)も分子(売上)もチャネル別に正しく集計できなくなります。本記事で扱った命名規則・GA4分類ロジック・出稿前検証の3点が揃って初めて、チャネル別の売上効率を判断できる状態になります。
ROASとRPSの関係性、損益分岐点ROASの設計、チャネル横断で売上効率を見る具体的なフレームについては、別記事 ROAS計算式 完全ガイド|計算方法・業種別目安・改善の打ち手 で詳しく整理しています。広告管理画面のROASでキャンペーン効率を見て、サイト全体のRPSでチャネル別の売上効率を見る、という2軸の使い分けが、EC事業者の予算判断を一段精度の高いものに変えます。
参考文献#
[1] Google Analytics 「Custom campaigns」 2024年
[2] Google Analytics 「\[GA4\] Default channel group」 2024年
[3] Google Analytics 「\[GA4\] Default channel group source categories」 2024年
[4] W3C 「Referrer Policy」 2017年
[5] Google Analytics 「Campaign URL Builder」 2024年
[6] Meta for Business 「About URL parameters」 2024年
[7] Google Ads 「About auto-tagging」 2024年
