Communitygithub.com

Google Ads Copilot

Google Ads オペレーターシステム。検索語分析、意図マッピング、無駄な広告費管理、アカウント構造決定、トラッキング診断、RSA生成、予算レビュー、アカウント計画、全アカウント監査を実行します。ライブAPIデータ(接続モード、google-ads-mcp経由)または手動エクスポート(エクスポートモード)に対応。人間によるレビューのためのドラフトアクションを生成します。

Google Ads Copilot とは?

Google Ads Copilot は、Google Ads アカウントを包括的に管理・最適化するための AI エージェントスキルです。このシステムは、検索語分析、意図マッピング、無駄な広告費の削減、アカウント構造の決定、トラッキング診断、レスポンシブ検索広告(RSA)の生成、予算レビュー、アカウント計画、そして全アカウント監査など、多岐にわたる機能を提供します。主に Claude Code などの AI エージェント上で動作し、`google-ads-mcp` MCP サーバーを介してライブの Google Ads API データにアクセスする「接続モード」と、手動でエクスポートされた CSV やスクリーンショットを解析する「エクスポートモード」の2つのデータ取得モードをサポートしています。分析結果に基づき、具体的なアクション案をドラフトとして `workspace/ads/drafts/` ディレクトリに書き出し、人間がレビュー・承認できるようにします。このワークフローにより、AI による高速なデータ分析と人間の判断を組み合わせた、安全かつ効果的なアカウント運用が可能になります。各機能は `/google-ads` をプレフィックスとするコマンドで呼び出せ、検索語分析、ネガティブキーワード提案、予算再配分などの専門的なタスクを実行します。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/TheMattBerman/google-ads-copilot/tree/HEAD/google-ads

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Google Ads Copilot は何をしますか?

Google Ads は、ダッシュボードに偽装された言語ゲームです。

ほとんどのアカウントは、ボタンの配置が間違っているから失敗するわけではありません。 異なる種類の意図が混ざり合い、質の低い好奇検索にお金を費やし、構造のせいでシグナルが隠れてしまうから失敗します。

このシステムは、それを修正するために存在します。

役割

  1. アカウントを詳しく調べる
  2. 意図マップ(Intent Map)を構築する
  3. 無駄を削減する
  4. シグナルを分離する
  5. 学習内容を構造、コピー、予算の決定に変換する
  6. システムが蓄積していくようにメモリを保持する
  7. 提案されたアクションをレビュー可能なドラフトとしてステージングする

アーキテクチャ: 読み取り → ドラフト → 適用

読み取りレイヤー      →  ドラフトレイヤー        →  適用レイヤー (将来)
MCP経由のライブデータ      提案されたアクション        制御された書き戻し
  または手動エクスポート    ステージングドキュメント    人間の承認後
        ↕                          ↕                      ↕
              ワークスペースメモリ (workspace/ads/)
  • 読み取り: google-ads-mcp MCPサーバーを介してライブデータを取得する(接続モード)か、手動でCSV/貼り付け/スクリーンショットを受け入れる(エクスポートモード)。
  • ドラフト: 分析によって実行可能な発見があった場合、具体的な提案アクションを workspace/ads/drafts/ に書き出し、人間によるレビューを可能にする。
  • 適用: 将来 — 承認されたドラフトをGoogle Ads API経由で実行する。

コマンド

コマンド目的
/google-ads connect初回セットアップ、ヘルスチェック、アカウント選択(接続モード)
/google-ads daily今日重要なことのクイックオペレーターサマリー
/google-ads search-terms無駄、シグナル、メッセージの手がかり、ルーティング問題を発見
/google-ads intent-mapアカウントの意図モデルを構築/更新
/google-ads negativesスコープとリスクノート付きのネガティブキーワードを推奨
/google-ads trackingアカウントが最適化するのに十分信頼できるか診断
/google-ads structureキャンペーン/広告グループ構造の変更を推奨
/google-ads rsas実際のクエリ言語からRSAの方向性を生成/洗練
/google-ads budgetシグナル品質に基づく予算/拡大判断
/google-ads planアカウントアーキテクチャを計画または再構築
/google-ads audit主要レイヤー全体の完全なオペレーターレビュー
/google-ads landing-reviewランディングページ→コンバージョンパスを診断(トラッキング vs UX)
/google-ads draft-summaryすべての保留中ドラフトの優先順位付きサマリー
/google-ads apply承認されたドラフトを実行(v1: ネガティブと一時停止のみ)

データ取得プロトコル

すべてのスキルはデータを必要とします。システムは2つのモードをサポートしています。分析の前に必ずモードを判別してください。

ステップ 1: モードを検出

接続モード(Connected mode) — 推奨。google-ads-mcp MCPサーバーが設定され、アクセス可能です。

  • テスト: MCP経由で list_accessible_customers を呼び出します。顧客IDが返ってくれば、接続されています。
  • データ: MCPの search ツールを使用してGAQLクエリでライブアカウントデータを取得します。
  • スキルごとのクエリテンプレートについては data/gaql-recipes.md を参照してください。

エクスポートモード(Export mode) — フォールバック。MCPサーバーがない場合、またはユーザーが明示的にエクスポートデータを提供する場合。

  • ユーザーはGoogle Ads UIからCSV、スクリーンショット、テキストを貼り付けます。
  • スキルごとの推奨エクスポート形式については data/export-formats.md を参照してください。
  • すべての分析は引き続き機能します — ライブクエリの代わりに静的なデータを使用するだけです。

ステップ 2: アカウントを特定

接続モードの場合:

MCP呼び出し: list_accessible_customers
→ 顧客IDと名前を返す
→ 複数のアカウントがある場合、どれを使用するかユーザーに尋ねる(または workspace/ads/account.md が設定されていればそれを使用)

エクスポートモードの場合:

  • アカウントコンテキストはユーザーが提供したデータから得られます。
  • 継続性のためにアカウントIDを workspace/ads/account.md に保存します。

ステップ 3: データを取得

各スキルには特定のGAQLクエリがあります(それぞれのSKILL.mdと data/gaql-recipes.md に文書化されています)。

MCP呼び出しパターン:

ツール: search (google-ads-mcp MCPサーバー上)
引数: { "customer_id": "1234567890", "query": "<GAQLクエリ>" }

GAQLに関する注意:

  • すべての cost_micros 値: 1,000,000 = $1.00 — 表示用に変換します。
  • 日付範囲: DURING LAST_7_DAYS、LAST_30_DAYS、または BETWEEN 'YYYY-MM-DD' AND 'YYYY-MM-DD'
  • 大規模アカウントの場合は LIMIT を使用します(500から開始)。
  • すべてのリソース+メトリクスの組み合わせが有効とは限りません — クエリが失敗した場合はGAQLリファレンスを確認してください。

日付範囲フォールバックプロトコル

一部のアカウントは休止状態、データが少ない、または季節性があります。単純に直近の期間を取得すると誤解を招く可能性があります — 有用な履歴が存在するにもかかわらず、データがゼロと表示されることがあります。

フォールバックチェーン(データが返ってくるまで順に試行):

優先順位日付範囲GAQL句使用するタイミング
1番目過去30日間DURING LAST_30_DAYSデフォルト — アクティブなアカウントに最も関連性が高い
2番目過去90日間DURING LAST_90_DAYS30日間でゼロまたはほぼゼロのデータが返ってきた場合
3番目過去12ヶ月間DURING LAST_12_MONTHS90日間でもまだデータが少ない場合
4番目全期間(日付フィルターなし)アカウントが完全に休止状態 — 利用可能なすべての履歴を取得

ルール:

  1. 常に LAST_30_DAYS から開始 します。ただし、オペレーターが範囲を指定した場合は除きます。
  2. 最初のクエリが0行または総費用が5ドル未満を返した場合は、自動的に範囲を広げます — 「データなし」と報告せずに試行してください。
  3. 出力で使用した日付範囲を常に明記 します。「日付範囲: 過去30日間」または「日付範囲: 全期間(アカウントは2023年第4四半期頃から休止状態)」のように。
  4. フォールバックする必要があった場合、その理由を説明します。「過去30日間にアクティビティがありませんでした。履歴コンテキストを提供するために全期間のデータにフォールバックしました。」
  5. デフォルト以外の日付範囲を黙って使用しないでください。 オペレーターは、見ているデータの鮮度を知る必要があります。
  6. 期間を比較する場合、両方の期間にデータが必要です。現在の期間が空の場合は、「現在アクティビティなし」と記載し、誤解を招く-100%の差異を表示しないようにします。

スキルでの実装: 各スキルのプライマリクエリは DURING LAST_30_DAYS を使用する必要があります。結果セットが空または非常に小さい場合は、DURING LAST_90_DAYS で再実行し、次に日付フィルターなしで実行します。出力ヘッダーにどの範囲がデータを生成したかを文書化します。

モードの宣言

すべての分析の開始時に、どのモードがアクティブかを明記します:

モード: 接続 — アカウント [名前] (ID: XXXXXXXXXX) からライブデータを取得中

または

モード: エクスポート — 提供されたデータを分析中。ライブアクセスには、google-ads-mcp MCPサーバーを設定してください (data/mcp-config.md を参照)。


ドラフト作成プロトコル

分析によって 実行可能な発見 が得られた場合、スキルは人間によるレビューのためにドラフトドキュメントを作成します。

ドラフトを作成するタイミング

  • 発見には具体的で実装可能なアクションが含まれている場合(単なる観察ではない)
  • 確信度が少なくとも中程度(Medium)である場合
  • そのアクションに測定可能な期待効果がある場合

ドラフトを作成しないタイミング

  • 発見が観察のみの場合(代わりにワークスペースメモリを更新)
  • 確信度が低く、さらなるデータが必要な場合
  • アクションがインラインで言及するには些末な場合

ドラフトの仕組み

  1. drafts/templates/ から適切なテンプレートを選択します(negative-draft.md、structure-draft.md、budget-draft.md、rsa-draft.md、tracking-draft.md)
  2. workspace/ads/account.md からアカウントスラッグを導出します — 小文字、ASCII、ハイフン区切り、最大2〜3語。必要な場合はCIDにフォールバックします。
  3. ドラフトを workspace/ads/drafts/YYYY-MM-DD-[account-slug]-[type].md に書き込みます。
  4. workspace/ads/drafts/_index.md のインデックスを更新します。
  5. 1回の監査実行で2つ以上のドラフトが作成された場合、その実行のための永続的な監査パケットとして workspace/ads/drafts/_batch-YYYY-MM-DD-[account-slug].md も書き込みます。
  6. 分析出力でドラフトを告知します。「ドラフト作成: workspace/ads/drafts/2026-03-14-east-coast-negatives.md — キャンペーンXに対する8つのネガティブキーワード」

ドラフト品質基準

  • 提案されるすべてのアクションには、ターゲット、詳細、リスク、元に戻せるかどうかが含まれている必要があります。
  • 証拠は特定のデータ(クエリテキスト、支出額、コンバージョン数)にリンクされている必要があります。
  • 確信度は理由とともに述べられている必要があります。
  • ドラフト間の依存関係は記載されている必要があります。
  • ## レビュー チェックリストには、確認された証拠、確認された付随リスク、確認された依存関係、決定、決定理由、レビュー担当者、レビュー日、適用日、メモが含まれている必要があります。

コンテキストの取り込み

深い分析の前に、以下を収集または抽出します:

  1. ビジネスモデル / 業界
  2. 主要KPI / コンバージョン目標
  3. 予算範囲または予算の実態
  4. アクティブなキャンペーンタイプ
  5. 利用可能なデータ: 接続モードまたはエクスポート(検索語レポート、キャンペーンエクスポート、スクリーンショット、トラッキングノート)

ユーザーがすでにコンテキストを提供している場合は、再度尋ねないでください。 workspace/ads/account.md と workspace/ads/goals.md が存在する場合は、それらを読み込みます — コンテキストがすでにキャプチャされている可能性があります。

クエリインタビューレンズ

常に問いかける:

  • ユーザーはこの検索で何をしようとしているのか?
  • この検索は購入、比較、学習、ナビゲーション、または直帰の可能性が高いか?
  • このクエリは他のクエリと同じ最適化バケットに属するべきか?
  • 明らかな勝者の間で繰り返される言語は何か?
  • 無駄な支出の間で繰り返される言語は何か?
  • どのような構造上の含意が続くのか?

ワークスペースメモリ

共有メモリとして workspace/ads/ を使用します。

主要ファイル:

ファイル目的
account.mdアカウントID、顧客ID、ビジネスコンテキスト
goals.mdKPI、ターゲット、成功の定義
intent-map.md検索意図クラスの永続的なモデル
queries.md注目すべきクエリパターンとクラスター
negatives.mdアクティブおよび提案中のネガティブキーワード
winners.md高パフォーマンスのクエリ、広告、キャンペーン
tests.md実行中および完了した実験
findings.md戦略的発見のログ
change-log.md何がいつ変更されたか
learnings.md学習内容(将来の意思決定に活用)
assets.mdRSAの見出し、説明文、クリエイティブノート
drafts/_index.mdステータス付きドラフトキュー
drafts/_summary.md現在の優先順位付けされたバックログビュー
drafts/_batch-*.md複数ドラフト監査実行のための特定時点の監査パケット
drafts/*.md個別のドラフトアクション提案

メモリルール

  • タスクに関連するファイルのみを読み込む
  • 必要に応じて追記専用の履歴を保持する
  • 検索行動に有意義な変化があった場合は意図マップを更新する
  • 単なる生のメモではなく、戦略的な発見を記録する
  • 分析によってドラフトが生成された場合は、常にインデックスを更新する

リファレンスファイル

必要に応じて読み込む(現在のスキルに関連するもののみ):

  • google-ads/references/operator-thesis.md
  • google-ads/references/intent-map.md
  • google-ads/references/query-patterns.md
  • google-ads/references/negatives-playbook.md
  • google-ads/references/tracking-playbook.md
  • google-ads/references/structure-playbook.md
  • google-ads/references/rsa-playbook.md
  • google-ads/references/budget-playbook.md
  • google-ads/references/deliverable-templates.md
  • google-ads/references/benchmarks.md
  • google-ads/references/landing-page-playbook.md

ルーティングロジック

connect

ライブアカウントに初めて接続するとき、アカウントを切り替えるとき、またはMCP接続のトラブルシューティングを行うときに使用します。セットアップ、顧客発見、アカウント選択、ヘルスチェックを実行します。接続モードで workspace/ads/account.md が空または存在しない場合、他のスキルの前にこれを実行してください。 skills/google-ads-connect/SKILL.md を参照してください。

daily

ユーザーが短いオペレーターの読み物を希望するときに使用します。過去7日間のパフォーマンスと最近の変更を取得します。今日重要なことを表面化し、関連する場合既存のドラフトにリンクします。

search-terms

ユーザーが無駄がどこで漏れていて、意図がどこに現れているかを知りたいときに使用します。検索語レポート(過去30日間)を取得します。発見内容に応じて、ネガティブドラフト と RSAドラフト を生成します。

intent-map

ユーザーがアカウントの検索行動について永続的な戦略的な読み物を希望するときに使用します。クラスタリングのためにすべての検索語を取得します。意図クラスを分離する必要がある場合、構造ドラフト を生成します。

negatives

除外とルーティングの判断が優先される場合に使用します。既存のネガティブキーワードと検索語を取得します。特定のキーワードを含む ネガティブドラフト を常に生成します。

tracking

アカウントが悪いシグナルに対して最適化している可能性がある場合に使用します。コンバージョンアクションとそのパフォーマンスを取得します。修正が必要な場合、トラッキングドラフト を生成します。

structure

異なる意図が混在し、アカウントアーキテクチャが意味を隠している場合に使用します。キャンペーン/広告グループ/キーワード構造を取得します。分割、統合、ルーティング変更のための 構造ドラフト を生成します。

rsas

広告コピーが実際の購入者の言語に基づくべき場合に使用します。RSAアセットパフォーマンスと検索語を取得します。具体的な見出しと説明文を含む RSAドラフト を生成します。

budget

どこで支出を保護、削減、拡大するかを決定するときに使用します。予算とインプレッションシェアデータを取得します。再配分提案のための 予算ドラフト を生成します。

plan

新規立ち上げ時または再構築時に使用します。包括的な計画ドキュメントを生成します(ドラフトではありません — 計画はスタンドアロン成果物で、ワークスペースに保存されます)。

audit

広範な統合のために使用します。複数のスキルのミニバージョンを実行します。最もレバレッジの効く変更をカバーする 優先順位付けされたドラフトのバッチ を生成し、2つ以上のドラフトが作成された場合、その実行のための永続的な _batch-YYYY-MM-DD-[account-slug].md 監査パケットを生成します。

landing-review

ユーザーが「ランディングページがコンバージョンしていない」と言う場合や、クリックがなぜリード/売上にならないのかを理解したい場合に使用します。常にフォークA(トラッキング診断)をフォークB(UX/パス診断)の前に実行します。 トラッキングの失敗とページの失敗を区別します — 最も頻繁に混同される2つの根本原因です。ランディングレビュードラフト および/または トラッキング修正ドラフト を生成します。ブラウザ/fetchを使用して実際のランディングページを検査します。

draft-summary

ユーザーが保留中のドラフトをレビューしたい、何を適用するか優先順位を付けたい、または推奨される実装順序を理解したい場合に使用します。すべての保留中ドラフトを読み取り、優先度/影響/リスクで分類し、依存関係をマッピングし、単一の優先順位付けされたバックログスナップショットを workspace/ads/drafts/_summary.md に生成します。_summary.md を監査実行パケットとして再利用しないでください。その役割は _batch-*.md にあります。

apply

ユーザーが承認されたドラフトを実行したい場合に使用します。v1の範囲: ネガティブキーワードの追加とキーワード/広告グループの一時停止のみ。 ドライランを表示し、明示的な確認を要求し、Google Ads API経由で実行し、変更を確認し、監査証跡を書き込みます。詳細については APPLY-LAYER.md を参照してください。

関連スキル