·GA4 / アクセス解析 / アトリビューション / not set / Unassigned

「Direct/None」を直しても意味がない — GA4の『不明な流入』が4種類ある

GA4で「Direct / (none)」を減らす対策だけ打っても、レポートの不明な流入は減りません。実は『(not set)』『Unassigned』『(other)』『Direct / (none)』の4区分は発生原因も対処法もまったく別物です。Google Analytics公式ドキュメントから4区分の判定ロジックを逆引きし、それぞれの発生段階・診断手順・対処の優先順位を整理します。

「Direct/None」を直しても意味がない — GA4の『不明な流入』が4種類ある

「GA4の Direct / (none) を減らすために utm を徹底した。それなのに『不明な流入』の合計はほとんど減っていない」。これは、よく寄せられる相談です。

理由は単純で、GA4のレポートで「正体が分からない流入」として扱われている値は 1種類ではなく4種類ある からです。「Direct / (none)」「(not set)」「Unassigned」「(other)」── どれも「よく分からない流入」「分類できなかったもの」と一括りにされがちですが、実際には 発生する段階も、対処の方向性もまったく異なる4区分 です。

この4つを混同したまま対処を始めると、本来は計測タグの再設定で解消するべき問題に対してチャネル分類ルールを書き換えるという的外れな打ち手を選んだり、本来は分類ルールの追加で済む問題に対して計測タグを総ざらいするという過剰対応に踏み込んだりします。Direct / (none) だけを下げても、(not set) と Unassigned と (other) は別系統で発生し続けます。

本記事では、Google Analytics 公式ドキュメントから4区分の判定ロジックを逆引きで整理し、それぞれの発生段階・診断手順・対処の優先順位を解説します。

この記事のまとめ#

  1. 「(not set)」はデータが届かなかった状態。受信段階の問題で、計測タグの実装に起因する
  2. 「Direct / (none)」は届いたデータが『直接流入』と判定された状態。明示的な分類結果であり、欠損ではない
  3. 「Unassigned」は届いたデータがどのチャネル定義にも一致しなかった状態。チャネルグループの定義不足が原因
  4. 「(other)」はデータが分類された後、表示の都合で集約された状態。カーディナリティ制限による表示集約

1. なぜ4区分は混同されやすいのか#

3つに共通するのは「レポート上で意味のある流入元として扱えない」という見た目の印象です。実際の運用現場でも「(not set) も Unassigned も (other) も、どうせ正体不明の流入だから一括で除外してしまえ」という処理が頻繁に行われます。

しかし、4区分は GA4の中で異なる段階で発生 します。データがGA4に届くまでの3段階で見ると、関係が一気に整理できます。

GA4の(not set)/Direct/Unassigned/(other)の発生段階フロー

段階発生する区分状態
①受信(not set)データそのものが欠損している
②分類Direct / (none)、Unassigned受信したデータをチャネルに割り振る
③表示(other)分類済みデータをレポートで集約する

この階層を最初に押さえておくと、「どの段階で発生した問題なのか」を1分で切り分けられるようになります。それぞれを詳しく見ていきます。

2. 「(not set)」── 受信段階の欠損#

「(not set)」について Google Analytics ヘルプは、明確に 「Analytics がディメンション値を受信していないときに使用するプレースホルダー」 と定義しています[1]。日本語に翻訳すれば「値が空っぽだった」という意味です。

発生パターンは Google が公式に列挙しています[1]。

  • Google Ads 関連:Google Ads アカウントと GA4 プロパティが連携されていない、自動タグ設定(auto-tagging)が無効、UTM パラメータが不完全な手動タグ
  • セッション ソース/メディアsession_start イベントが発生していない、Google タグの初期化トリガーの設定不備
  • ランディング ページ:セッション内に page_view イベントが存在しない
  • コンテンツ グループcontent_group パラメータが空値で送信されている
  • カスタム パラメータ:登録から24時間以内、または session_start 以降に追加されたパラメータ
  • 同意モード:同意が拒否されたイベントが別セッション扱いになる場合

共通するのは 「GA4側に届く前にデータが欠落している」 点です。チャネルグループの定義をいくらいじっても解消しません。直すべきは計測タグの実装側です。

3. 「Direct / (none)」── 分類段階の明示的な結果#

「Direct / (none)」は欠損ではなく、GA4が公式の判定ルールに従って 明示的に「直接流入」と分類した結果 です。Default channel group の定義によれば、判定条件は以下の論理式で表現されます[2]。

Source が "(direct)" と完全一致 AND Medium が "(not set)" または "(none)"

ここで紛らわしいのが、Direct の中に Medium = (not set) という条件が含まれている点です。これは「Medium ディメンション自体が空で届いた」場合を Direct として 明示的に分類 するルールであり、ディメンション全体が欠損した「(not set)」表示とは別物です。

Direct / (none) の比率が高いこと自体は分類ロジック上は正常動作です。問題はその 比率が膨らみすぎたとき にあります。本来は広告経由・SNS経由のセッションが utm 欠損や referrer 消失によって Direct に流れ込んでいるケースで、その分解と対処は別記事 GA4の『Direct / (none)』が増える5つの原因と診断・対処 で詳しく整理しています。

4. 「Unassigned」── 分類段階のルール不足#

Unassigned について Google Analytics ヘルプは 「他のチャネルルールがイベントデータと一致しなかった場合に Analytics が使用する値」 と定義しています[2]。つまり、データはGA4に届いている、Source も Medium も値が入っている、しかし どのチャネル定義の判定条件にも合致しなかった 状態です。

これは「(not set)」とは決定的に異なります。「(not set)」が「データが来なかった」状態であるのに対し、Unassigned は「データは来たがルールがなかった」状態です。

代表的な発生パターンはGoogle公式のタギング ベスト プラクティスに整理されています[3]。

  • 新興プラットフォーム(TikTok・LINE Ads・新しい広告ネットワーク等)からの流入で、デフォルト チャネル グループの判定条件にマッチしない
  • カスタム チャネル グループを使用しているが、特定の Source / Medium 組み合わせを定義から漏らしている
  • UTM パラメータが付与されているが、utm_medium の値が GA4 のチャネル分類が想定する標準値(cpc・organic・referral 等)から外れている

対処の方向性は チャネル グループ定義の更新 です。計測タグの再実装ではなく、レポート側のチャネル定義に「該当する Source / Medium をどのチャネルに振り分けるか」を追加します。

5. 「(other)」── 表示段階の集約#

「(other)」について Google Analytics ヘルプは 「カーディナリティ制限により集約された行に Analytics が使用する値」 と定義しています[4]。これは分類の問題ではなく、レポートの表示行数に上限がある ために発生する純粋な表示集約です。

GA4 の標準プロパティでは 1ディメンションあたり500種類 がカーディナリティの目安として示されており[4]、これを超えた値は (other) に集約される可能性があります。レポートのテーブル行数自体にも上限があり、たとえば「ページとスクリーン」レポートで上限が 100,000 行のときに 150,000 種類のページが存在すれば、出現頻度の低い 50,000 行が (other) に集約されます。

(other) が増える原因は、計測でも分類でもなく 「ディメンション値の種類が多すぎる」 という設計上の問題です。代表的な発生源は次のような構造です。

  • ページパスにユーザーIDや注文IDがクエリ文字列で混入している
  • 商品詳細ページのURLが商品ごとに無限に増える設計
  • イベントパラメータに自由記述やセッションIDなど、無限に値が増える種別が混ざっている

対処は ディメンション値の種類を削る ことです。Google公式は「URLからクエリ文字列を除外する」「カスタム ディメンションをユーザーIDの保管先に使わない」「User-ID 機能を活用する」を推奨しています[4]。

6. 4区分の対処マトリクス#

ここまでの4区分を、発生段階と対処の方向性で1枚にまとめます。

4区分の発生段階と対処マトリクス

「対処の方向性」と「関与する人」が4区分でまったく異なる点に注目すべきです。(not set) を解消するためにアナリストにチャネル定義をいじってもらうのは打ち手として誤りで、Unassigned を解消するためにエンジニアに計測タグの再実装を依頼するのも工数の浪費です。

7. 診断の最初の一歩 — 「どの区分が膨らんでいるか」を1分で見る#

4区分を理解したうえで最初にすべきことは、自社プロパティでどの区分が大きいかを把握する ことです。GA4の「集客 → トラフィック獲得」レポートで、ディメンションを「セッションのデフォルト チャネル グループ」に切り替えると、Unassigned の比率がすぐに見えます。「ソース/メディア」に切り替えれば、(not set) と (direct) / (none) の比率が分かります。「ページとスクリーン」レポートで「ページパス」を見ると、(other) の比率が確認できます。

次に取るべき診断プロセスを整理すると次の通りです。

  1. Unassigned が10%以上:チャネル グループ定義の追加から着手。新しい広告プラットフォームを使い始めていないかを点検
  2. (not set) が5%以上のディメンションがある:そのディメンションを送信しているタグの実装を点検
  3. Direct / (none) が20%以上別記事の5原因 のフローで分解
  4. (other) が表示されている:ページパスやイベントパラメータの設計を見直し、ディメンション値の種類を削る

この4ステップで、4区分が混在しているレポートでも対処の優先順位が立てられます。

まとめ — 「分類できなかった」を一括で扱わない#

GA4のレポートに現れる「(not set)」「Unassigned」「(other)」「Direct / (none)」は、いずれも「正体不明の流入」と一括りにされがちですが、実際には GA4 内部で 異なる段階で発生する別々の現象 です。

  • (not set) は 受信段階の欠損:計測タグを直す
  • Direct / (none) は 分類段階の明示的な結果:utm を徹底する
  • Unassigned は 分類段階のルール不足:チャネル定義を追加する
  • (other) は 表示段階の集約:ディメンション設計を見直す

4区分の発生段階を切り分けて理解しておくと、対処の方向性を間違えなくなり、無駄な打ち手を選ばなくなります。社内のアナリスト・エンジニア・マーケ運用者で「どの区分はどのチームが見るか」を最初に決めておくだけで、トラブルシューティングの所要時間が大きく短縮されます。

RevenueScopeでは、流入セッションのチャネル分類を独自ロジックで再判定し、Unassigned や Direct / (none) として扱われがちなセッションを本来の流入元に振り戻す設計にしています。GA4 のレポートだけでは追いきれないチャネル別の売上を、別の角度から見るための補完ツールとして設計しました。


本記事の関連トピックは /news でも扱っています。

参考文献#

  1. Google Analytics Help 「[GA4] About (not set)」 2026年4月
  2. Google Analytics Help 「[GA4] Default channel group」 2026年4月
  3. Google Analytics Help 「Tagging best practices to avoid unassigned, (not set), and direct traffic issues」 2026年4月
  4. Google Analytics Help 「[GA4] High-cardinality dimensions」 2026年4月

どの広告が売上を生んでいるか、一目でわかる

14日間の無料トライアル。クレジットカード不要。最短5分で導入。

14日間無料で計測する

「Direct/None」を直しても意味がない — GA4の『不明な流入』が4種類ある | RevenueScope