広告・EC・SEOのデータを、MCPでClaudeや業務AIへ。
← コラム一覧へ
データ活用

Windsor.aiの使い方|GA4・広告データをスプレッドシートに自動集約

執筆:中都智仁公開 更新 12分で読めます

Windsor.aiでGA4のデータをGoogleスプレッドシートへ自動出力する手順を、実演画像付きで解説。取得項目、日次更新、Backfill、重複の確認からGeminiでの分析まで。最新の無料条件と、自分の表をAIにつなぐ方法も紹介します。

こんにちは、中都です。

Google広告、Meta広告、GA4などを開いて、広告費やアクセス数をスプレッドシートへコピーする。毎日やっていると、数字を考える前の準備に時間を取られますよね。僕も個人事業主の頃は、月次のデータをまとめるだけで1日が終わってしまうことがありました。

そこで有料・無料のツールをいろいろ試し、約1年かけてたどり着いたのがWindsor.aiです。この記事では、GA4を例に、取得する項目を選び、スプレッドシートへ毎日出力するところまで説明します。実際の設定画面、出力された表、Geminiで作ったグラフを見ながら進められます。

動画でも解説しています

毎日の数字集めを自動化し、分析に使える表を用意する

媒体が増えるほど、管理画面の往復が増える

広告費は広告の管理画面、アクセス数はGA4、検索の状況はSearch Console。ダウンロードする場所も項目名も違います。担当者にしか操作が分からないと、レポートの数字をそろえるだけでも人を待つことになります。

僕が自動化を探したのも、この集計作業を何とかしたかったからです。毎回のコピーを減らして、集まった数字から「次に何を変えるか」を考える時間を作りたい。ここが出発点です。

この記事でできるようになること

  • 設定当日:GA4をWindsor.aiにつなぎ、日付・デバイス・セッション数などをスプレッドシートへ出力する。
  • 設定当日:直近7日分を毎日更新するタスクを作り、初回出力の列・期間・値を確認する。
  • 次回実行後:指定時刻に更新されたか、同じ行が重複していないかを確認する。
  • 出力後:GeminiなどのAIに表を読ませ、日別の推移やデバイス別の違いを調べる。

実演するデータはGA4のアクセスデータです。広告費そのものの出力例ではありませんが、取得元・項目・出力先を選ぶ考え方は、広告データを集約するときにも使えます。

Windsor.aiは、データの取得元と出力先をつなぐツール

Windsor.aiでは、GA4や広告媒体などを取得元として接続し、Googleスプレッドシート、Looker Studio、BigQueryなどへデータを送れます。取得・加工・保存をつなぐ、ETL/ELTと呼ばれる種類のツールです。

僕が使っていて驚いたのは、選べる取得元の多さでした。Googleのサービスだけでなく、Amazon関連のサービスやShopifyなども一覧から探せます。「この媒体だけ別のやり方で取る」を減らせるのは、複数の媒体を扱う側にはうれしいところです。

Windsor.aiの取得元一覧にGA4、Google広告、Search Console、Amazon、Shopifyなどが並ぶ画面
取得元は左側の一覧から選びます。検索欄で媒体名を探すこともできます。

ただし、媒体名があることと、欲しい項目が取れることは別です。導入前にその媒体の項目一覧を開き、日付、費用、キャンペーンなど、いつものレポートで使う列があるか確認しましょう。たとえばGoogle広告の項目一覧では、取得できる指標と分類項目を調べられます。

無料枠・料金は、媒体数と更新頻度で確認する

現在のWindsor.aiには30日間の無料トライアルと、その後のForever Freeプランがあります。トライアル後の無料枠は1ユーザー・1データソース・1アカウントです。動画中の「完全無料にはならない」という説明とは条件が変わっています。

Basicは月払い23ドル、年払いでは月あたり19ドルです。3データソースに対応し、日次更新のタスクは5件まで。過去分を取り込むBackfillは有料プランの機能です。時間単位の更新はStandard以上など条件が違うため、必要な媒体数・アカウント数・更新頻度を公式料金表で照合してください。

「データソース」はGoogle広告やGA4といったサービスの種類、「アカウント」はその中で接続する対象です。広告アカウントを複数持っている場合は、両方の上限を確認します。

1.アカウントを用意して、GA4を接続する

先に、読み取りたいGA4プロパティにアクセスできるGoogleアカウントと、出力先のスプレッドシートを用意してください。出力先は、手入力の表を上書きしないように、空の専用タブを作っておくと進めやすいです。

  1. Windsor.aiを開き、Start for Freeから登録します。すでにアカウントがあればログインします。
  2. データソースの一覧でGoogle Analytics 4を選びます。
  3. 未接続の場合は接続操作からGoogleの認証へ進み、対象のGA4を閲覧できるアカウントを選びます。求められるアクセス権を確認して許可します。
  4. Windsor.aiに戻ったら、取得対象のGA4プロパティを選びます。別のサイトが選ばれていないことを確かめ、Nextでプレビューへ進みます。
Windsor.aiでGoogle Analytics 4を選び、取得対象のアカウントにチェックする画面
GA4を選択し、自分が分析したいプロパティを指定します。アカウント名は元動画で伏せられています。

接続済みであれば、毎回Google認証からやり直す必要はありません。対象のプロパティが選べるかを確認してください。ここから先の画像は撮影時の画面なので、項目の配置が変わっている場合は、同じ名前の欄を探して進めてください。

2.取得期間と、表に出したい項目を選ぶ

Preview and Destinationの画面では、取得条件を設定するとプレビューに結果が出ます。まずは期間をLast 7 daysにし、GA4のデータが返ってくるかを確かめます。当日を含めるかどうかでも結果は変わるので、日次レポートでは集計が途中の当日を含めない条件から試すと確認しやすくなります。

Fieldsで必要な項目にチェックを入れます。今回の実演では、次のような列を選びました。

項目何を見るために使うか
Date日別の変化を追う
Device categorymobileとdesktopなどを分ける
Sessionsセッション数を集計する
Source流入元ごとの違いを見る
Account Name、Data Source、Campaignアカウントや取得元、キャンペーンの区分を残す
Last 7 daysとGA4を選び、Date、Device category、Sessions、Sourceなどにチェックを入れた画面
Fieldsでチェックした列が取得対象になります。まずは毎日の比較に使う項目へ絞ります。

選択した項目がプレビューの見出しに並び、行に日付や値が入れば、取得条件を確かめる準備ができました。出力前にアカウントと期間を見直し、元のGA4でも同じ条件の数値を確認してください。

最初からすべての項目を集めるより、毎週見たい表を1つ決めて、その表に必要な列をそろえるのがおすすめです。項目を増やすほど1日あたりの行数も変わります。後で重複を防ぐ設定をするときにも、この「1行が何を表すか」が大切になります。

3.スプレッドシートへの出力と、毎日の更新を設定する

Google Sheetsを出力先にする

Data DestinationsからGoogle Sheetsを選びます。今回はWindsor.ai側で出力タスクを作る方法を使います。

Windsor.aiの出力先一覧にあるGoogle Sheets
出力先としてGoogle Sheetsを選びます。Looker StudioやBigQueryとは別の選択肢です。

Add Destination Taskを押すと、出力先のGoogleアカウントを認証する画面へ進みます。保存先のスプレッドシートを編集できるアカウントを選び、必要なアクセス権を確認して認証を完了します。

Windsor.aiのAdd Destination Taskボタン
このボタンから出力タスクを作り、Google認証後に保存先や実行時刻を設定します。

保存先のファイル名とタブ名を分けて指定する

タスク設定で、次の欄を入力します。Documentはファイル、Sheet Nameはその中のタブです。

欄設定例
Task nameGA4-testなど、用途を判断できる名前
DocumentSelectから出力先の「サンプルシート」を選択
Sheet Name出力専用の「GA4デモデータ」タブ
Schedule type毎日更新する場合はDaily
GA4-test、サンプルシート、GA4デモデータ、Dailyを設定したタスク画面
DocumentとSheet Nameの両方を指定します。画像は実行時刻とBackfillを設定する前の状態です。

更新する時間と、同じ行を識別する列を決める

Schedule (UTC)はUTCでの実行時刻です。この表示の場合、00:00は日本時間の09:00に当たります。自分の画面でもタイムゾーン表記を確認し、数字を見る時間に合わせて設定してください。

取得期間をLast 7 daysにした日次タスクは、毎回その直近7日分を取り直します。過去に取得した期間と重なるため、同じデータをどう更新するかも決めます。

実行時刻00:00 UTCとColumns to Matchのdateを表示した設定画面
撮影時はdateを指定しています。現在は、下記のように出力表の1行を区別できる列を確認して設定します。

現在の公式手順では、Columns to Matchに指定した列が一致する行を更新し、一致する行がなければ追加する仕組みです。日付ごとに1行だけならdateで区別できますが、今回のようにデバイスや流入元で行が分かれる表は、同じ日付が何度も登場します。

同じ日付に複数行ある表では、日付だけで「同じ行」と判定しないようにしましょう。日付・デバイス・流入元・キャンペーンなど、取得した分類項目の組み合わせで1行を区別できるか確認します。複数のアカウントや媒体を同じ表に出す場合は、その区分も必要です。

設定には、実際に出力したヘッダーと一致する列名を使ってください。画像のdate単独指定をそのまま写すのではなく、自分の表に合わせます。詳しい設定はWindsor.aiのGoogle Sheets接続手順でも確認できます。

初回に過去分も入れたい場合はBackfillを使う

Backfill data forは、初回に過去のどこまでさかのぼって取り込むかを指定する欄です。僕は実演で1 monthを選びました。直近7日分の定期更新と、初回の1か月分の取り込みは別の処理です。

Backfillは有料プランで利用します。まず無料枠で試す場合はNo backfillのまま、通常の取得期間で出力を確かめてください。元の媒体に存在しないデータや、取得条件の範囲外まで復元する機能ではありません。

4.接続テストの後、保存して実際の出力を確認する

設定ができたらTest connectionを押します。Connection successfulと出たら接続テストは成功です。続けてSaveを押して、タスクを保存します。

Backfillを1 monthに設定し、Connection successfulが表示された画面
接続テストが成功した状態です。この後にSaveを押し、実際の出力まで確認します。

保存後はタスク一覧に戻り、Upload: OKを確認します。Backfillも設定した場合は、そちらの完了も確認してください。僕の実演でも、通常の出力が先に終わり、過去分の取り込みがその後に進んでいました。

GA4-testのタスクにUpload OKとBackfill OKが表示された画面
日次取得と過去分の取り込みが、どちらもOKになった状態です。

最後に、指定したスプレッドシートのタブを開きます。実演では日付・デバイス・セッション数などの列が並び、1か月前のデータまで取り込まれました。

出力先シートに2025年8月7日以降の日付、デバイス、セッション数が並んだ画面
過去分がシートへ書き出された結果です。同じ日付でもデバイスや流入元が違えば複数行になります。画像は日付・デバイス・セッション数の部分です。
  • 対象:意図したファイル・タブに、選んだGA4のデータが届いているか。
  • 期間と列:最初と最後の日付、見出し、数値の形式は想定どおりか。
  • 数値:まず1日分を選び、同じ条件のGA4の値と照合できるか。
  • 次回更新:次の予定時刻を過ぎてから、更新状況と同じキーの重複を確認できるか。

「接続できた」と「必要な数字が正しく届いた」は、分けて確認してください。テスト成功の表示だけでは、翌日以降の定期更新まで成功したとは判断できません。

うまく出ない場合は、タスクの状態とエラーを見て、出力先の権限、選んだファイル・タブ、取得期間・項目を順に確認します。僕が利用したときは、画面右下からの問い合わせにも比較的早く返事をもらえました。設定で詰まったときに相談できる窓口があるのも助かります。

5.集まったデータをGeminiで分析する

スプレッドシートに表ができたら、右上のGeminiを開きます。僕は「このデータを分析して」と尋ね、セッション数の推移やデバイス別のグラフを出しました。

GeminiがスプレッドシートのGA4データから作ったセッション数の推移グラフ
出力済みの表をもとにGeminiが作ったグラフです。広告費の推移ではなく、GA4のセッション数を表示しています。

これを見て、僕はスプレッドシートに書き出すところの価値が、今まで以上に高まっていると感じました。表に出せれば、その先の分析をAIと進められるからです。集めたデータを毎回貼り直す作業が減ると、分析の始め方も変わってきます。

自分の表で試すなら、集計範囲も伝えると結果を確かめやすくなります。次は、そのための質問例です。

「GA4デモデータ」タブを分析してください。
最初に、参照した範囲、データの開始日・終了日、列名を示してください。
そのうえで、日別のセッション数とデバイス別の内訳を表とグラフにしてください。
同じ行の重複や、空欄の日付がないかも確認してください。
数値から分かる変化と、原因として考えられる仮説を分けて説明してください。

Gemini in Googleスプレッドシートは、対象のGoogle WorkspaceまたはGoogle AIプランが必要です。アイコンが出ない場合は、Google公式の利用条件を確認してください。シートが更新された後は、分析やグラフがどの範囲の値を使っているかも見直します。

広告データへ広げる場合も、同じ期間・通貨で費用を比べるところから始めましょう。媒体ごとにCVの定義や計測条件が違う場合、件数だけを足すと意味が変わります。まず「何を同じ条件で比較するか」を決めてから、AIへ質問します。

ClaudeやChatGPTから出力済みの表を読みたい方は、記事末尾のSynapse MCPで自分のデータをAIにつなぐ方法も参考にしてください。

まとめ:まず1つの表を、自動で届く状態にする

Windsor.aiでは、取得元をつなぎ、必要な列を選び、出力先と更新条件を設定することで、GA4などのデータをスプレッドシートへ集められます。僕が「使ってみてほしい」と思うのは、媒体ごとの数字集めに追われている方です。

最初の一歩は、いつも手で更新している表を1つ選ぶこと。初回の出力を確認したら、次の定期更新まで確かめて、その後に媒体や項目を広げてみてください。

僕は、会社のデータにつながったAIと自然言語でやり取りし、数字を根拠に意思決定する使い方が広がっていくと考えています。一方、データをある程度整えておかないとAIがうまく読み取れないことも、手元で確認しています。データを集める仕組みと、AIが読める表を用意することを、セットで進めると活用につながります。

Synapse MCPで、普段の広告・計測データをAIに聞く

自動で数字が集まるようになったら、次は「どの日にアクセスが変わったか」「広告費に対して成果はどうか」を調べたくなります。そこで、普段使っているツールのデータをAIから読めるようにするのが、私たちのSynapse MCPです。

今回作ったGoogleスプレッドシートを接続すれば、ClaudeやChatGPTに表の内容を尋ねられます。Google広告やGA4を直接接続して、それぞれのデータを取得することもできます。表を作って終わらず、気になる数字から次に調べることまで、AIと会話しながら進められます。

まずは、自分のシートの中身が返ってくることを確かめる

  1. Synapse MCPにログインし、利用する店舗・案件の接続管理でスプレッドシートを追加します。
  2. Google認証を進め、Windsor.aiの出力先にしたファイルを選んで接続します。
  3. 同じ店舗・案件のMCPリンクを利用するAIに登録し、Synapse MCPの認証を完了します。AIとの会話で接続を有効にしてください。
  4. 次の質問で、ファイル名・タブ名・列名と先頭のデータが返ってくるかを確かめます。
接続済みの「サンプルシート」の「GA4デモデータ」タブから、
A1:G20を読み取ってください。
参照したファイル名・タブ名・範囲を示し、列名と先頭5行を表にしてください。
日付とセッション数に使う列はどれか、読み取った内容から説明してください。

名前と範囲は、自分のファイルに置き換えてください。これが最初の取得確認です。20行だけを読み取った段階では、月全体の合計はまだ出せません。続けて集計するときは、対象期間を含む範囲の全行を読み取るよう指定します。

比較したい期間と、判断したいことを質問に入れる

たとえば、同じシートに必要な期間のデータがそろっていれば、次のように聞けます。

同じ「GA4デモデータ」タブについて、2026年9月1日〜7日と
9月8日〜14日を含む範囲を、必要に応じて分割して全行読み取ってください。
取得した範囲・行数・実際の最初と最後の日付を先に示してください。
日付・デバイス・流入元などの組み合わせに重複がないか確認してから、
セッション数を日別とデバイス別に集計し、2期間を比べてください。
不足するデータがあれば、推測で埋めず、何が足りないか教えてください。

広告費を確かめたい場合は、Google広告を接続したうえで、こう尋ねられます。

接続したGoogle広告アカウントの名前と通貨を確認し、
2026年9月1日〜7日の費用・クリック数・コンバージョン数を、
日別の表と期間合計で示してください。
費用が大きく変わった日を挙げ、事実と、追加確認が必要な仮説を分けてください。

いずれも自分のデータで試すための質問例です。取得した期間や列をAIの回答で確認し、最初は元の管理画面や表の値とも照合してください。

接続・回答・グラフ化は、こんな流れで進む

利用のイメージとして、GA4とSearch Consoleで週次レポートを作った実演記事を紹介します。以下の3枚は、その別実演の画面です。今回のスプレッドシートや、上のGoogle広告の質問例を実行した結果ではありません。

Synapse MCPに同じサイトのGA4とSearch Consoleを接続した画面
① 接続先を用意する。別実演ではGA4とSearch Consoleを同じ案件に登録しています。今回の表を読むときはスプレッドシートを接続します。
ClaudeがSearch Consoleの検索クリック数や表示回数を日別の表で返した画面
② 会話に数値が返る。画像はSearch Consoleの7月22〜29日のクリック数・表示回数などです。

この実演ではCSVを添付せずに、接続先から数字が返ってきました。僕はその記事でも「控えめに言って便利でしかないです」と書いています。いつもの会話の中で自分のデータを尋ねられる、というのが気に入っているところです。

ClaudeがGA4のセッション数・ユーザー数・PVを日別グラフにした画面
③ 取得した値をグラフで見る。画像はGA4の7月24〜31日の推移で、今回の比較用質問とは期間も指標も異なります。

AI側のMCP設定はClaude・ChatGPTへの接続ガイドで確認できます。媒体別にシートへ出力する方法を比較したい方には、Google広告をスクリプトで自動出力する記事もあります。

集約した自分のデータで、最初の質問を試す

スプレッドシートをつないで、AIに集計表を聞く →

ログイン後、出力先のスプレッドシートを追加し、MCPリンクをAIに登録してください。まずは上の質問で、列名と先頭5行が自分の表と一致するかを確認するところから始めましょう。

Synapse MCPの新規フリー契約は14日間、3サービス・各媒体1アカウントまでで、自動課金はありません。料金と利用条件をご確認ください。Windsor.aiとAI側の契約・利用条件はそれぞれ別です。