·8分で読める

AIクローラーのアクセスを分析・可視化する方法【GA4・サーバーログ】

GA4、サーバーログ、専用ツールを使ってAIボットのアクセスを分析・可視化する方法を解説します。どのAIがどのページを何回見ているか把握しましょう。

GA4アクセス解析AIクローラー監視サーバーログ分析

なぜAIクローラーの監視が必要なのか

robots.txtを設定した後も、実際にどのAIボットがどのくらいアクセスしているかを定期的に確認することが重要です。理由は:

  • robots.txtを無視するボットの存在を把握できる
  • どのページが最も多く収集されているかがわかる
  • 新しいAIボットの登場をいち早く検知できる
  • 法的措置のための証拠を継続的に記録できる

方法①:Apacheサーバーログの分析

# /var/log/apache2/access.log からAIボットを抽出
grep -E "GPTBot|ClaudeBot|PerplexityBot|Google-Extended|CCBot|Diffbot|Bytespider|Amazonbot|OAI-SearchBot|YouBot|cohere-ai|MistralBot" \
  /var/log/apache2/access.log | awk '{print $1, $7, $12}' | sort | uniq -c | sort -rn | head -50

方法②:Nginxログの分析

# Nginxのアクセスログを分析
cat /var/log/nginx/access.log | \
  grep -E "GPTBot|ClaudeBot|PerplexityBot|Google-Extended" | \
  awk '{print $4, $7, $12}' | \
  sort | uniq -c | sort -rn

方法③:GA4でAIボットを除外・把握する

GA4ではボットのアクセスは標準で除外されますが、設定によっては混入します:

  1. GA4管理画面 → データ設定 → データフィルタ
  2. 「既知のボットとスパイダーからのイベントを除外する」をON
  3. カスタムフィルタでUser-Agentにボット名を含むものを除外設定

方法④:Next.jsでAIボットアクセスを記録

// middleware.ts でAIアクセスをログに記録
import { NextRequest, NextResponse } from 'next/server';

const AI_BOTS = /GPTBot|ClaudeBot|PerplexityBot|Diffbot|Bytespider/i;

export function middleware(request: NextRequest) {
  const ua = request.headers.get('user-agent') ?? '';

  if (AI_BOTS.test(ua)) {
    // ログ記録(本番ではDBに記録)
    console.log(JSON.stringify({
      type: 'ai_bot_access',
      path: request.nextUrl.pathname,
      ua: ua,
      ip: request.ip,
      timestamp: new Date().toISOString(),
    }));

    return new NextResponse('Forbidden', { status: 403 });
  }

  return NextResponse.next();
}

方法⑤:AI Access Monitor(専用ツール)

専用ツールを使うと最も詳細な分析が可能です。AI Access Monitorでは:

  • AIボット別のアクセス数・頻度の時系列グラフ
  • 最も多く収集されているページのランキング
  • 推定コンテンツ価値の計算
  • 法的証拠ログのCSVエクスポート

JavaScriptのタグを1行追加するだけで計測を開始できます(無料プランあり)。

定期監視のチェックリスト

  • 週1回:新規AIボットの出現確認
  • 月1回:アクセス数の増減トレンド確認
  • 四半期:robots.txt設定の更新(新しいAIボット追加)

AIアクセス分析を無料で始める →

AI Access Monitor

まず計測から始めよう

1行のコード追加で、AIクローラーの計測を今日から開始。無料・設定不要。

無料で始める →