「Google Analytics(GA4)やサーチコンソールを設定したけど、数字の羅列で意味がわからない…」
「数値を見ても『ふーん』で終わってしまい、次に何をすればいいか分からない…」

そんな悩みを抱えていませんか?

このロードマップ第3話では、GA4やサーチコンソールのデータをAIに分析させ、具体的な「サイト改善のアクションプラン」を立てる方法を徹底解説します。

この記事を読むと、こんなメリットがあります
  • メリット1:面倒なサイト分析を「自動化」できる。
  • メリット2:AIが「次にやるべき事」を具体的に教えてくれる。
  • メリット3:専門知識ゼロでも、データに基づいたブログ改善ができる。

このロードマップ第3話では、GA4やサーチコンソールのデータをAIに分析させ、具体的な「サイト改善のアクションプラン」を立てる方法を徹底解説します。

関連記事
AIに勝つ「生きた経験」記事強化術!初心者ブロガーのための収益化ロードマップ(2/6)最強ジャンル選定

AIが作った記事に「あなたの経験」を加えて説得力を生む「型」と、AIを家庭教師にして「ウェブ基礎知識」を学ぶ重要性を解説。さらに、継続と収益化を両立する「黄金のジャンル選定法」(好きなこと・読者の課題・マネタイズ)も紹介します。

この記事で解説する『生成AIを使ったサイト分析入門』動画解説板。

※テキストでじっくり読みたい方はこのまま読み進めてください!

AIに”丸投げ”する前に!GA4とサチコで「最低限見るべき数字」の意味

AIに分析を任せるとはいえ、最低限「何の数字が何を示しているか」だけ知っておくと、AIからの回答の精度が格段に上がります。安心してください、覚えるのはこれだけです。

Google Analytics (GA4):「読者の行動」を知る4つの指標

GA4は「ブログに来た後、読者がどう動いたか」を見る場所です。AIには以下のCSVデータを渡します。

名前意味
セッション数訪問数
新規ユーザー数訪問数のうちの新規
表示回数(PV)閲覧数
エンゲージメント率ページの評価

Google Search Console (サチコ):「ブログへの入り口」を知る3つの指標

サチコは「読者がGoogle検索で、どうやってあなたのブログを見つけたか」を見る場所です。AIには以下のCSVデータを渡します。

名前意味
合計クリック数表示された結果、「実際にクリックされた回数」
合計表示回数読者の目に触れた回数
CTRクリック率

サイト分析業務のルーティーン

このサイクルを継続的に回すことで、勘や思いつきではなく、データに基づいた合理的なサイト改善が可能になります。自分のサイトの強みやチャンスを見逃さないように、このサイクルを継続的に回しましょう。

日次:異常検知と速報チェック(5分)

サイトが正常に動いているか、突発的な変化が起きていないかを確認する「ヘルスチェック」です。 深い分析は不要です。「いつもと違う」異常を早期に発見し、被害を最小限に抑えることが最優先です。

ツール見る場所チェックポイント
GA4リアルタイムレポート・今、ユーザーは来ているか?(0人なら計測タグの問題かも)
・意図しない流入(スパムリファラなど)はないか?
GA4集客 > トラフィック獲得・前日と比較し、トラフィックが極端に増減していないか?
・SNSでバズった、TVで紹介された、などの突発的要因を把握
サチコ概要・クリック数や表示回数に大きな変動はないか?
サチコインデックス作成 > ページ・「エラー」が急増していないか?(サイト全体がクロール不可になっている等)

P (Plan – 計画):

  • 「サイトが停止していないこと」
  • 「計測タグが正常に動作していること」
  • 「スパムなどの大きな攻撃を受けていないこと」

D (Do – 実行):

  • 日々のサイト運営・監視。

C (Check – 評価):

  • GA4 (リアルタイム): アクセスが「0」になっていないか? 不審な参照元(リファラスパム)が大量発生していないか?
  • GA4 (トラフィック獲得): 前日と比べ、トラフィックが極端に増減していないか? (SNSでのバズなども把握)
  • サチコ (概要): クリック数や表示回数に大きな変動はないか?
  • サチコ (インデックス作成 > ページ): 「エラー」が急増していないか?

A (Act – 改善):

  • もしアクセスが「0」なら: 計測タグの状態確認、サーバーの状態確認。
  • もしスパムが多ければ: GA4のフィルタ設定を検討(※急がなければ月次対応でも可)。
  • もしエラーが急増なら: サチコでエラー内容(例: サーバーエラー5xx)を確認し、サーバー会社などに連絡。

週次:傾向把握とコンテンツ評価(30分)

公開した記事の反応や、直近の施策(リライト、SNS投稿など)がどのような影響を与えたか、短期的なトレンドを把握します。

P (Plan – 計画):

  • (例)「先週公開した記事Aが、狙ったクエリでサチコに表示され始める」
  • (例)「今週リライトした記事BのCTR(クリック率)が改善する」
  • (例)「今週SNSで告知した記事Cの流入が増える」

D (Do – 実行):

  • 新規記事の公開、既存記事のリライト、SNSでの告知活動。

C (Check – 評価):

  • サチコ (検索パフォーマンス): 記事Aが狙ったキーワードで「表示」され始めたか? 記事BのCTRは上昇傾向にあるか?
    • 記事Aが、狙ったクエリで「表示」され始めたか?
    • 記事BのCTRは、リライト前と比較して上昇傾向にあるか?
  • GA4 (ページとスクリーン): 記事Cのページビューは増えているか? 各記事のエンゲージメント率(読まれているか)は低すぎないか?
  • GA4 (トラフィック獲得): 「Organic Search(SEO)」、「Social(SNS)」など、どの経路からの流入が伸びているか?
    • 記事Cのページビューは増えているか?
    • 記事A, B, Cのエンゲージメント率(読まれているか)は他の記事と比べて低すぎないか?

A (Act – 改善):

  • もし記事Aが表示されない: インデックス状況をサチコで確認。内容が薄ければ追記を検討。
  • もし記事BのCTRが低いまま: 検索結果で競合のタイトルと比較し、より魅力的なタイトルに修正する。
  • もし記事Cのエンゲージメント率が低い: SNSの告知文と記事内容の期待値がズレているかも。→ 導入文やSNSの告知文を見直す。
ツール見る場所チェックポイント
GA4エンゲージメント > ページとスクリーン・表示回数: どの記事がよく読まれているか?
・エンゲージメント率: 読者はしっかり読んでくれているか?(低いページは改善候補)
・コンバージョン: 設定した目標(例: 申込、特定リンククリック)は発生しているか?
GA4集客 > トラフィック獲得・チャネル: 「Organic Search(SEO)」、「Social(SNS)」、「Direct(直接)」など、どの経路からの流入が伸びているか?
サチコ検索パフォーマンス・クエリ: どんな検索語句で流入しているか?
・ページ: どのページのクリック数・表示回数・CTR(クリック率)が伸びているか?
・(Tips) 新規公開した記事が、意図したクエリで表示されているか?

月次:戦略評価と次の計画(1時間)

サイト全体の成長を俯瞰し、「行った施策が正しかったか」を評価し、次月の戦略を立てます。

P (Plan – 計画):

  • (例)「サイト全体のOrganic Search流入を前月比10%増やす」
  • (例)「『〇〇』カテゴリの記事を5本追加し、このカテゴリの流入を強化する」
  • (例)「サイト全体のコンバージョン率(CVR)を0.5%から0.6%に改善する」

D (Do – 実行):

  • 計画に基づいた記事制作、リライト、内部リンク改善、導線改善などを1ヶ月間実行する。

C (Check – 評価):

  • GA4(トラフィック獲得): Organic Search流入は前月比・前年同月比で目標(10%増)を達成したか?
  • サチコ(検索パフォーマンス):
    • 強化した「〇〇」カテゴリのページの表示回数・クリック数は増えたか?
    • 表示回数は多いがCTRが低いクエリ(=改善の宝庫)はないか?
    • 順位が11〜30位のクエリ(=リライトすればトップ10を狙える候補)はないか?
  • GA4(コンバージョン): CVRは目標(0.6%)を達成したか?どのランディングページがCVに貢献しているか?

A (Act – 改善) → 次のP (Plan) へ

  • (評価結果の分析):
    • なぜ流入が増えた(減った)のか?(例: 強化したカテゴリが成功した、Googleのアップデートの影響を受けた、など)
    • CVRが上がった(下がった)要因は?(例: 特定の記事からの導線改善が効いた、など)
  • (次のPlanの策定):
    • 成功施策の横展開: 「〇〇」カテゴリの強化が成功したので、来月は隣接する「△△」カテゴリも同様の手法で強化する。
    • 改善点の抽出: サチコで見つけた「CTRが低いクエリ」の記事を、来月のリライト対象にする。
    • 新規施策: 「順位が11〜30位のクエリ」の記事を強化し、トップ10入りを目指す。
ツール見る場所チェックポイント
GA4エンゲージメント > ランディングページ・どの「入口ページ」が最もユーザーを呼び込み、エンゲージメント(やコンバージョン)に貢献しているか?
・離脱率が高すぎるランディングページはないか?
GA4集客 > トラフィック獲得・チャネル別の成長: メインの集客チャネル(特にOrganic Search)が前月比・前年同月比で伸びているか?
サチコ検索パフォーマンス・前月比 / 前年同月比: クリック数・表示回数は成長しているか?
・クエリ分析:
→改善対象: 表示回数は多いがCTRが低いクエリ(→タイトル・ディスクリプション改善)
→リライト対象: 掲載順位が11〜30位のクエリ(→記事の質を上げてトップ10を狙う)
サチコエクスペリエンス > ウェブに関する主な指標・サイトの表示速度(LCP, CLSなど)に「不良」URLが増えていないか?(ユーザビリティの低下はSEOに悪影響)

【実践】GA4とサチコを合体!AI分析用の「最強データ」を10分で作成する全手順

サイト運営のPDCAサイクルが重要ということはわかりました。

「いや素人には難しいよ!」ここまで読んで頭がパンクしてしまったみなさん。ご安心ください。

実際にも詰め込んで覚えるというより、本来は日々サイト運営しながら経験を積んで数年かかります。

そこで、GA4とサチコから必要なデータだけをGoogleスプレッドシートに自動で取得し、AI専用の分析データ(CSVファイル)を作成する方法をお教えします。

ワンポイントアドバイス
もし下記の手順でつまずいた場合、設定している画面のスクリーンショットをAI(Geminiなど)に見せて「どこがおかしいですか?」と聞いてみてください。ツールの更新でボタンの場所が変わっている場合なども教えてくれます。

GoogleAnalytics情報をスプレットシートからダウンロードする方法

ステップ1:インストール方法

  1. Googleスプレッドシートを新規で開きます。
  2. 上部メニューの「拡張機能」をクリックします。
  3. アドオン」 > 「アドオンを取得」を選択します。
  4. 検索ウィンドウで「GA4 Reports Builder」と入力します。
  5. GA4 Reports Builder for Google Analytics™ という公式アドオンを選択し、「インストール」をクリックします。
  6. Googleアカウントの選択と、アナリティクスデータへのアクセス許可を求められるので、「許可」します。

ステップ2:レポートの作成方法 (Create new report)

インストールが完了すると、「拡張機能」メニューの中にGA4 Reports Builder...が追加されます。

  1. 拡張機能」 > 「GA4 Reports Builder for Google Analytics™」 > 「Create new report」を選択します。
  2. 画面右側に設定用のサイドバーが開きます。ここで「どんなレポートが欲しいか」を定義します。
  • Report name:
    • レポートの名前を決めます(例: 「週次PVレポート」「ページ別訪問数」)。
    • 重要: この名前のシートが新しく作成され、そこにデータが出力されます。
  • Account / Property:
    • データを取得したいGA4のアカウントとプロパティをプルダウンから選択します。
  • Start date / End date:
    • データの取得期間を指定します。
    • today(今日)、yesterday(昨日)のほか、「NdaysAgo」という書き方が便利です。例えば、Startに 7daysAgo、Endに yesterday を指定すると「過去7日間」のデータを常に取得できます。
  • Dimensions (ディメンション):
    • 分析の「切り口」です。(例: date(日付別)、pagePath(ページパス別)、sessionSourceMedium(参照元/メディア別))
  • Metrics (メトリクス):
    • 集計したい「数値」です。(例: sessions(セッション数)、activeUsers(アクティブユーザー数)、pageviews(表示回数)、conversions(コンバージョン数))
  • Filters (フィルタ):
    • 特定の条件でデータを絞り込みたい場合に使います。(例: 特定のページパスだけを集計する)
  1. 必要な項目を入力したら、サイドバー下部の「Create Report」ボタンを押します。
ポイント
この時点ではまだデータは取得されません。 「Report Configuration」という名前のシートが作成され、そこに今設定した内容が「設定値」として1行書き込まれるだけです。
書き込まれたデータサンプル

ステップ3:レポートの実行方法 (Run reports)

ステップ2で作成した「設定値」に基づき、実際にGA4からデータを取得します。

  1. 拡張機能」 > 「GA4 Reports Builder for Google Analytics™」 > 「Run reports」を選択します。
  2. アドオンが「Report Configuration」シートの設定を読み込み、GA4のAPIを呼び出します。
  3. 処理が完了すると、ステップ2で指定したReport name(例: 「週次PVレポート」)という名前の新しいシートが自動で作成され、そこにデータが出力されます。

ステップ4:レポートの自動更新 (Schedule reports)

これがこのアドオンの強力な機能です。設定したレポートを定期的に自動実行できます。

  1. 拡張機能」 > 「GA4 Reports Builder for Google Analytics™」 > 「Schedule reports」を選択します。
  2. 右側のサイドバーにスケジューラーが開きます。
  3. Enable reports to run automatically」のチェックボックスをオンにします。
  4. Select frequency(頻度の選択)」で、自動実行したいタイミングを選びます。
    • every hour (毎時)
    • every day (毎日)
    • every week (毎週)
    • every month (毎月)
  5. 時間帯なども指定し、「Save」をクリックします。

これで、指定した頻度で自動的に「Run reports」が実行され、データシートが常に最新の状態に保たれます。

サーチコンソール情報をスプレットシートからダウンロードする方法

ステップ1:インストール方法

GA4アドオンの時と手順は同じです。

  1. 今作業しているスプレッドシート(GA4のデータを取得しているシート)で、上部メニューの「拡張機能」をクリックします。
  2. アドオン」 > 「アドオンを取得」を選択します。
  3. 検索ウィンドウで「Search Analytics for Sheets」と入力します。
  4. 表示されたアドオンを「インストール」します。
  5. GA4の時と同様に、アカウントの選択と、Search Consoleへのアクセス許可を求められるので、「許可」します。 (※必ずGA4と同じ、サイトを登録しているGoogleアカウントを選んでください)
Search Analytics for Sheets

ステップ2:基本的な使い方(サイドバーでの設定)

GA4アドオンと操作感は似ています。

  1. 拡張機能」 > 「Search Analytics for Sheets」 > 「Open sidebar」を選択します。
  2. 画面右側に設定用のサイドバーが開きます。
  • Verified Site: データを取得したいサイトを選択します。
  • Date Range: データの取得期間を選択します。(例: Last 7 days(過去7日間))
  • Search Type: Web(ウェブ検索)のままでOKです。
  • Group By (重要):何を「切り口」にするかを選びます。GA4のDimensionsに似ています。
    • Query(検索キーワード別)
    • Page(ページ別)
    • Date(日付別) (複数選択も可能です。例: QueryPageを選ぶと、「どのページが、どのキーワードで」が分かります)
  • Metrics (参考): このアドオンは賢く、必要な指標(クリック、表示回数、CTR、平均順位)を自動で全て取得するため、GA4のようにメトリクスを細かく選ぶ必要は通常ありません。
  • Results Sheet: データを出力するシート名です。(空欄のままでもOKです)
  1. 設定が完了したら、サイドバー下部の「Request Data」ボタンを押します。
  2. 新しいシートが作成され、そこにサーチコンソールのデータ(キーワード、クリック数、表示回数、CTR、平均順位)が出力されます。

ステップ3:自動化の方法(スケジュール)

このアドオンにも自動化機能があります。

  1. 「Recurrent Requests」をクリックします。
  2. Enable backup」をオンにします。
  3. 毎日(Daily)か毎月(Monthly)かを選びます。

これで、GA4アドオンと同じように、サーチコンソールのデータも自動でスプレッドシートに蓄積されていきます。

これで、1つのスプレッドシート(ファイル)の中に、GA4のデータ(先週のセッションシートなど)と、Search Consoleのデータ(Queryシートなど)の両方が自動で集まる環境が整いました。

複数のシートをGASで合体したCSVをGoogleドライブに保存する方法

シート一つひとつをCSVでダウンロードしてAIに渡しても良いですが、最後に「複数のシートを1つのCSVにまとめる」作業をGAS(Google Apps Script)で自動化する方法を紹介します。

少し難しく見えますが、コピペだけで動きますので安心してください。

シートを丸ごと配布

シートをコピーすれば、面倒なスプレットシートとGoogle Apps Script(GAS)の連携は不要で利用することができます。

関連記事
【コピペでOK】複数のスプレッドシートをCSVで「一括DL」&「結合DL」生成AI×GASで完全自動化

パワーアップ版

初回実行時の承認

  • 初めて実行する際に「承認が必要です」というダイアログが表示されます。「続行」をクリックしてください。
  • 自分のGoogleアカウントを選択します。
  • 「このアプリは Google で確認されていません」という警告画面が表示される場合がありますが、これは自作のスクリプトのためです。左下の「詳細」をクリックし、「(プロジェクト名)(安全ではないページ)に移動」をクリックして次に進んでください。
  • 「メールの送信」などを許可する画面が表示されるので、「許可」をクリックします。

承認が完了すると、スクリプトが実行されます。

GASコードのみ利用する

シート名は必ず「Config」にしてください。

// スプレッドシートを開いたときにカスタムメニューを追加する
function onOpen() {
  const ui = SpreadsheetApp.getUi();
  ui.createMenu('CSVエクスポート')
    .addItem('選択したシートをCSVに結合', 'runCsvExport')
    .addToUi();
}

/**
 * メインの処理:シートから設定を読み込み、CSVを生成してドライブに保存する
 */
function runCsvExport() {
  const ui = SpreadsheetApp.getUi();
  
  // 1. 設定シートから情報を読み込む
  const configSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Config');
  if (!configSheet) {
    ui.alert('エラー', '「Config」という名前のシートが見つかりません。', ui.ButtonSet.OK);
    return;
  }
  
  // A2:Bの範囲で、最後の行までデータを取得
  const range = configSheet.getRange('A2:B' + configSheet.getLastRow());
  const values = range.getValues().filter(row => row[0] && row[1]); 

  if (values.length === 0) {
    ui.alert('情報', 'Configシートに処理対象が指定されていません。', ui.ButtonSet.OK);
    return;
  }

  let combinedData = []; 
  let headerSkipped = false;

  // 2. 各スプレッドシートをループしてデータを取得
  try {
    for (const row of values) {
      const url = row[0];
      const sheetName = row[1];

      let targetSpreadsheet;
      try {
        targetSpreadsheet = SpreadsheetApp.openByUrl(url);
      } catch (e) {
        Logger.log(`URLが開けません: ${url} - ${e.message}`);
        ui.alert(`エラー: URLが開けませんでした。\n${url}`);
        continue; 
      }

      const targetSheet = targetSpreadsheet.getSheetByName(sheetName);
      if (!targetSheet) {
        Logger.log(`シートが見つかりません: ${sheetName} (URL: ${url})`);
        ui.alert(`エラー: シートが見つかりませんでした。\nシート名: ${sheetName}\nURL: ${url}`);
        continue; 
      }

      const data = targetSheet.getDataRange().getValues();
      if (data.length === 0) {
        continue; 
      }

      // 3. データを結合(2つ目以降はヘッダー行をスキップ)
      if (!headerSkipped) {
        combinedData.push(...data);
        headerSkipped = true;
      } else {
        combinedData.push(...data.slice(1));
      }
    }

    if (combinedData.length === 0) {
      ui.alert('情報', '取得できるデータがありませんでした。', ui.ButtonSet.OK);
      return;
    }

    // 4. データをCSV文字列に変換
    const csvString = convertArrayToCsvString(combinedData);

    // 5. CSVファイルとしてGoogleドライブに保存(ファイル名は日時でユニークにする)
    const fileName = `combined_export_${Utilities.formatDate(new Date(), 'JST', 'yyyyMMdd_HHmmss')}.csv`;
    // 文字化け対策のため、UTF-8のBOM付きでファイルを作成します
    const blob = Utilities.newBlob(csvString, MimeType.CSV, fileName).getBytes();
    const file = DriveApp.createFile(Utilities.newBlob(blob, MimeType.CSV, fileName));


    // 6. ダウンロードURLをポップアップで表示
    const fileUrl = file.getUrl();
    const message = `CSVファイルの生成が完了しました。\n以下のURLからダウンロードできます:\n${fileUrl}`;
    ui.alert('エクスポート完了', message, ui.ButtonSet.OK);

  } catch (err) {
    Logger.log(err);
    ui.alert('スクリプトエラー', err.message, ui.ButtonSet.OK);
  }
}


function convertArrayToCsvString(data) {
  let csv = '\uFEFF'; 
  
  data.forEach(row => {
    let rowArray = [];
    row.forEach(cell => {
      let cellString = String(cell);
      if (cellString.includes(',') || cellString.includes('"') || cellString.includes('\n')) {
        cellString = '"' + cellString.replace(/"/g, '""') + '"';
      }
      rowArray.push(cellString);
    });
    csv += rowArray.join(',') + '\r\n';
  });
  
  return csv;
}

『指定したシート合体してCSVでダウンロード』ダウンロード使い方

「Config」シートのA列に【シートのURL】B列に【シート名】を記載します。

右上のメニューの【CSVエクスポート】→【選択したシートをCSVに結合】

Googleドライブに1つのCSVにまとまったデータがアップロードされます。

このデータをGeminiなどAIに渡し、下記のようなプロンプトを書いてレポートを作成して貰えば完了です。

あなたはプロのWebアナリストです。GA4・Search ConsoleデータとサイトURLから、【今週】の傾向を分析し、特に改善すべき点を3つ挙げてください。

サイト URL
https://URL
Geminiが分析してくれた一部のサンプル

まとめ:

次回(4/6)は「ウェブ分析その2 サイト簡単可視化編」です。GA4やサチコのデータが情報量が多すぎて見づらいと感じる方のために、Looker Studioを使って「人の目でもわかりやすい」自分オリジナルの分析レポートを作成する方法を解説します。

関連記事
GA4・サチコ情報量多くて正直難しくない?サイトかんたん可視化編!初心者ブロガーロードマップ(4/6)

「GA4が難しくて分析をサボってしまう…」そんな初心者ブロガーの救世主、Google公式「Looker Studio」を解説。GA4とサーチコンソールを連携し、毎朝のチェックを「たった1分」にする自分専用レポートの作り方を、画像付きでステップ解説します。