search-campaign-audit について
search-campaign-auditは、Google Adsの検索キャンペーンをデータに基づいて読み取り専用で監査するスキルです。品質スコアや検索語句の無駄な支出、マッチタイプ、除外キーワード、広告の掲載状況を確認し、改善案を記録します。
主な機能
- 01キャンペーンとキーワードの確認
- 02品質スコアの診断
- 03マッチタイプ別支出の分析
- 04検索語句の無駄を検出
- 05除外キーワードの網羅性確認
- 06広告とアセットの掲載状況確認
活用シーン
- 01コンバージョンのない検索語句の支出特定
- 02低い品質スコアの原因診断
- 03部分一致の成果確認
- 04広告グループの広告掲載不足の確認
MCP 対応
キャンペーンデータの読み取りには、Cogny Google Ads GAQL ツール `mcp__cogny__google_ads__tool_execute_gaql` が必要です。読み取り専用で動作し、アカウントを変更せず改善案を提示します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ cognyai/ claude-code-marketing-skills --skill search-campaign-auditインストール後、Claude Code で/search-campaign-auditを入力して読み込まれたか確認します。
詳細
検索キャンペーン監査
Google Ads の検索キャンペーンを詳細に監査します。検索キャンペーンは、キーワード、マッチタイプ、広告を引き続き直接管理できるキャンペーンタイプです。品質スコアの低下要因、マッチタイプによる無駄な費用、除外キーワードの不足、効果の弱い広告を特定します。
必要条件: Cogny Agent のサブスクリプション(月額 $9)— 登録
前提条件の確認
mcp__cogny__google_ads__tool_execute_gaql を使用できない場合は、Cogny の登録手順(/google-ads-audit を参照)を表示して終了します。
使い方
/search-campaign-audit — アカウント内のすべての検索キャンペーンを監査します
/search-campaign-audit Brand - Exact — 名前または ID を指定して、1 つのキャンペーンを監査します
ベンチマーク
| シグナル | 低い | 普通 | 良好 |
|---|---|---|---|
| 品質スコア | ≤4 | 5–6 | 7–10 |
| 広告の有効性 | 低い/平均 | 良好 | 非常に良好 |
| 検索語句の関連性 | 意図に合った語句への費用が50%未満 | 50–75% | 75%超 |
| インプレッション シェア損失率(ランク) | 40%超 | 20–40% | 20%未満 |
手順
1. 検索キャンペーンを見つける
SELECT campaign.id, campaign.name, campaign.status,
campaign.bidding_strategy_type, campaign_budget.amount_micros,
metrics.cost_micros, metrics.conversions, metrics.conversions_value,
metrics.search_impression_share, metrics.search_rank_lost_impression_share,
metrics.search_budget_lost_impression_share
FROM campaign
WHERE campaign.advertising_channel_type = 'SEARCH'
AND segments.date DURING LAST_30_DAYS
ORDER BY metrics.cost_micros DESC
広告ランク(品質/入札単価)または予算が原因で、インプレッション シェアを40%超失っているキャンペーンにフラグを立てます。
2. キーワードのパフォーマンスと品質スコア
SELECT ad_group_criterion.keyword.text, ad_group_criterion.keyword.match_type,
ad_group_criterion.quality_info.quality_score,
ad_group_criterion.quality_info.creative_quality_score,
ad_group_criterion.quality_info.post_click_quality_score,
ad_group_criterion.quality_info.search_predicted_ctr,
campaign.name, ad_group.name,
metrics.cost_micros, metrics.conversions, metrics.clicks, metrics.impressions
FROM keyword_view
WHERE segments.date DURING LAST_30_DAYS AND metrics.cost_micros > 0
ORDER BY metrics.cost_micros DESC
LIMIT 100
次にフラグを立てます。
- 費用が発生しているキーワードのうち、品質スコアが4以下のもの。さらに、3つの要素を確認して、理由を説明します
(
creative_quality_score= 広告の関連性、post_click_quality_score= ランディングページ、search_predicted_ctr= 予測クリック率) - 費用が大きく、コンバージョンがゼロのキーワード
- 広告グループ間で重複しているキーワード(アカウント内でのオークション競合)
3. マッチタイプの構成
match_type(EXACT/PHRASE/BROAD)ごとに費用とコンバージョンを集計します。
次にフラグを立てます。
- 広範囲一致が費用の大きな割合を占め、CPA が完全一致/フレーズ一致より悪い場合。広範囲一致がうまく機能するのは、スマート自動入札と厳密な除外キーワードの両方がある場合に限られます。
- 完全一致が100%のアカウント(おそらく表示回数が不足)や、広範囲一致が100%のアカウント(おそらく費用が無駄に発生)
4. 検索語句の分析
SELECT search_term_view.search_term, search_term_view.status, campaign.name,
ad_group.name, metrics.cost_micros, metrics.conversions, metrics.clicks
FROM search_term_view
WHERE segments.date DURING LAST_30_DAYS AND metrics.cost_micros > 0
ORDER BY metrics.cost_micros DESC
LIMIT 100
次にフラグを立てます。
- 費用が発生している、関連性のない/意図に合わない語句—除外キーワードの候補です
- ステータスが
NONEのコンバージョンにつながった語句(まだキーワードとして追加されていません)—キーワードとして追加します - コンバージョンがゼロの語句にかかった費用の合計—無駄な費用として最も重要な数値です
5. 除外キーワードのカバー状況
SELECT shared_set.name, shared_set.type, shared_set.member_count
FROM shared_set
WHERE shared_set.type = 'NEGATIVE_KEYWORDS'
共通の除外キーワードリストがない場合、ブランド以外のキャンペーンでブランド関連語句を除外していない場合、または継続的に不要な語句(free、jobs、diy、cheap。ビジネスに合わせて調整してください)のリストがない場合にフラグを立てます。
6. 広告の有効性と RSA のカバー状況
SELECT ad_group.name, ad_group_ad.ad.id, ad_group_ad.ad.type,
ad_group_ad.ad_strength, ad_group_ad.status, campaign.name,
metrics.impressions, metrics.conversions
FROM ad_group_ad
WHERE campaign.advertising_channel_type = 'SEARCH'
AND ad_group_ad.status = 'ENABLED'
AND segments.date DURING LAST_30_DAYS
次にフラグを立てます。
- RSA が1つだけの広告グループ(テストを実施していません)
ad_group_ad.ad_strengthがPOORまたはAVERAGE- 残っている拡張テキスト広告(提供終了)
- 有効な広告が0件の広告グループ
7. アセット(広告表示オプション)のカバー状況
SELECT campaign.name, campaign_asset.field_type, campaign_asset.status
FROM campaign_asset
WHERE campaign.advertising_channel_type = 'SEARCH'
サイトリンク、コールアウト、構造化スニペットがないキャンペーンにフラグを立てます。多くのアカウントが活用できていない、無料で使える広告スペースとクリック率向上の機会です。
8. スコアを付けてレポートする
Search Campaign Audit — [Account Name]
Search Score: X/100 · 30-day spend: [X] · Conv: [X] · CPA: [X]
| Campaign | Spend | Conv | CPA | Avg QS | IS lost (rank) |
|----------|-------|------|-----|--------|----------------|
🔴 Critical — QS ≤4 on top spenders, zero-conversion keyword spend
🟡 Important — broad-match bleed, single-RSA ad groups, missing negatives
🟢 Optimization — extensions, search-term harvesting
Top 3 Actions:
1. [Highest $ impact]
2. ...
3. ...
9. 調査結果を記録する
{
"title": "Quality Score 3 on 'crm software' — $620/mo at a 2.4x CPA penalty",
"body": "'crm software' (phrase) has QS 3: ad relevance below average, landing page below average. It spent $620 last month at $94 CPA vs $39 account average. Tighten the ad group to one theme, mirror the keyword in RSA headlines, and point it at a dedicated landing page.",
"action_type": "keyword_optimization",
"expected_outcome": "QS to 6+, CPC down 20-35%, CPA toward account average",
"estimated_impact_usd": 380,
"priority": "high"
}
アクションタイプ:keyword_optimization、negative_keyword、match_type、creative_refresh、campaign_optimization、bidding_strategy。
重要なルール
- 数値を報告するだけでなく、品質スコアの要素を確認してください。 広告の関連性、ランディングページ、クリック率のどれが原因かによって、対策は異なります。
- コンバージョンがない検索語句の費用が、無駄な費用として最も重要な数値です — 合計してください。
- 実際の数値を示してください:品質スコア、マッチタイプ別の内訳、語句ごとの費用。
- 読み取り専用です。 除外キーワードを追加したり、キーワードを一時停止したりしないでください。提案にとどめ、実行はしないでください。