Kurage プロジェクト

GA4とサーチコンソールの数字が合わない理由と、突き合わせの手順

株式会社エクスブリッジ / 自社30ドメインの運用で実測した内容をもとにしています

「GA4では検索流入が数千あるのに、Search Consoleのクリックは数百しかない」——これはツールの故障でも設定ミスでもありません。両者は違うものを数えています。まずその違いを押さえると、どちらの数字をいつ信じればいいかが決まります。

数えているものが違う

数えているもの数えられないもの
GA4ページでJavaScriptタグが発火したセッション広告ブロッカー利用者、Cookie同意の拒否、JSを実行しないボット・AIクローラー
Search ConsoleGoogle検索の結果画面でのクリックGoogle以外の検索(Bing・Yahoo!)、SNS・直接流入、Discover経由の一部

だから「GA4の検索セッション > GSCのクリック」は普通に起きます。GA4の「Organic Search」にはBingやYahoo!も入りますし、逆にGSCにしか出ない検索需要(表示されたがクリックされなかったクエリ)もあります。

それでも差が大きすぎるときに疑うこと

① 実ブラウザを使うボットがGA4を水増ししている

GA4のボット除外は、IABの既知ボットリストに載っているものだけです。本物のChromeを自動操縦するスクレイパーは素通りします。当社の実測では、ある2週間でセッションが約5倍に見えた増加分のほぼ全部が、特定国からの自動アクセスでした。見分け方は簡単です。

3つ揃ったら、それは成長ではなく自動アクセスです。GA4の探索レポートで該当国を除外したセグメントを作って見てください。

② 参照元が「取れない」流入がDirectに化けている

GoogleはRefererをドメイン単位でしか送らないため、Discover・ニュース・検索の区別はGA4側では付きません。メールやアプリからの流入もDirectに落ちます。Direct が多い=ブックマークが多い、とは限りません。

③ AIクローラーはどちらにも出ない

GPTBotやClaudeBotなどのAIクローラーはJavaScriptを実行しないので、GA4のタグは発火しません。GSCにも出ません。つまりJSタグ型の計測だけを見ていると、AIに読まれているかどうかが一切分からないということです。当社のサイトでは、サーバー側の計測を入れた直後からAIクローラーの巡回が記録されました。JSタグだけの期間は1万行を超えるログにゼロ件——記録できていなかっただけでした。

突き合わせの手順(月1回・30分)

  1. GSCのクリック数を基準にする——Google検索からの実流入はこれが正
  2. GA4のOrganic Searchから、GSCクリックを引く——差分がBing/Yahoo!+Discover系のおおよその量
  3. GA4の国別で不自然な国を除外し、実勢のセッション数を出す
  4. サーバー側計測があれば、AIクローラー・botの巡回数を別枠で見る

この4つを並べると、「検索からの実流入」「検索以外の実流入」「自動アクセス」「AIの巡回」が分離できます。どれかひとつの数字だけを見て一喜一憂しなくなります。

この突き合わせを自動でやるツールを販売しています サーバー側で計測して人間・AIクローラー・検索ボットを分類し、GA4・GSCと突き合わせるPHP製ツール「AIアクセス解析(ktrackgeo)」。レンタルサーバーにファイルを置くだけで動き、DB不要・月額不要の買い切りです。導入手順と分析手順はAIエージェント用のスキルとしても同梱しています。
Kurage App Store で見る(55,000円・税別)
デモ: proto.exbridge.jp/ktrackgeo(実際に動いている画面をご覧いただけます)

よくある質問

GA4とサーチコンソールのどちらが正しいのですか?
どちらも正しく、数えているものが違います。Google検索からの流入はGSC、サイト全体の行動はGA4(ボットを除外した上で)、AIクローラーはサーバー側計測でしか見えません。
GA4のアクセスが急に増えました。喜んでいいですか?
国別・参照元・平均セッション時間の3点を先に確認してください。特定国×(direct)×滞在数秒が揃ったら自動アクセスです。
ボットのアクセスは無視していいですか?
数字を分けて見られるなら無視で構いません。問題は、混ざったまま「伸びている」と誤読することです。