Google Ads・Meta Ads・LinkedIn Ads の広告クリエイティブを、パフォーマンスデータ分析に基づいて 大量に自動生成・最適化するスキル。既存広告のCSVデータから低パフォーマンス広告を特定し、 プラットフォーム別の文字数制約を遵守しながら数百のバリエーションを生成する。 Use when user says「広告コピーを作って」「Google Adsのクリエイティブを生成して」 「広告のバリエーションを増やして」「パフォーマンスの悪い広告を改善して」 「Meta広告のテキストを書いて」「広告ABテスト用のバリエーション」 「ヘッドラインを大量生成して」「広告CSVから新しいコピーを作って」。 Do NOT use for: LP全体のコピーライティング(→ marketing-copy)、 ブランド戦略やペルソナ設計の上流工程(→ marketing-copy で定義したコンテキストを前提とする)、 広告配信の技術設定(→ 広告プラットフォーム管理画面で直接操作)。
量が質を生む — データ駆動で広告クリエイティブを工業的に量産せよ
マーケコンテキスト・CSV・成果物は file_read / file_write とプロジェクト workspace(inbox / notes / proposal 等)を正とする。ツール名やパスの読み替えは references/strands-py-runtime.md を参照。
marketing-context → [ad-creative] → CSV出力 → 広告プラットフォーム投入
↓
クリエイティブ生成
・パフォーマンス分析
・ヘッドライン生成
・ディスクリプション生成
・クリエイティブマトリクス構築
| 入力 | 説明 | 例 |
|---|---|---|
| marketing-context.md | マーケティング基盤コンテキスト | ブランドボイス、ペルソナ、USP |
| 既存広告データ(CSV) | 現行広告のパフォーマンスデータ | CTR、CVR、CPA、インプレッション数 |
| プラットフォーム指定 | 対象の広告プラットフォーム | Google Ads、Meta Ads、LinkedIn Ads |
| プロダクト情報 | 訴求する商品・サービスの詳細 | 機能、価格、差別化ポイント |
| 出力 | 形式 | 説明 |
|---|---|---|
| クリエイティブマトリクス | CSV / Markdown テーブル | ヘッドライン×ディスクリプションの全組み合わせ |
| パフォーマンス分析レポート | Markdown | 勝ちパターン・負けパターンの分析結果 |
| プラットフォーム別広告セット | CSV | 各プラットフォームの制約に準拠した広告一式 |
| イテレーション記録 | Markdown | テスト仮説・結果・次回アクションの記録 |
プロジェクト内の marketing-context.md を探して読み込む。存在しない場合は最低限のコンテキストを収集する。
以下の情報を確認する:
| 項目 | 確認内容 | 広告生成への影響 |
|---|---|---|
| ブランドボイス | トーン、禁止表現、必須要素 | コピーのトーン設定 |
| ペルソナ | ターゲット像、課題、欲求 | 訴求軸の選定 |
| USP | 独自の価値提案 | 差別化メッセージ |
| 競合 | 競合の訴求パターン | 差別化・回避すべき表現 |
以下を直接ヒアリングする:
チェックリスト:
品質基準:
バリエーション数 ≥3 パターン/広告グループ
広告見出し文字数 最大 30 文字(Google Ads 規定準拠)
marketing-context.md の有無を確認した
ブランドボイスとトーンを把握した
ターゲットペルソナの課題・欲求を理解した
USP と差別化ポイントを整理した
禁止表現・コンプライアンス要件を確認した
CSV やスプレッドシートで提供されるパフォーマンスデータを分析し、勝ちパターンと負けパターンを特定する。
受け取る CSV の典型的なカラム構成:
campaign,ad_group,headline_1,headline_2,headline_3,description_1,description_2,impressions,clicks,ctr,conversions,cvr,cpa,cost
広告を 4 象限に分類する:
| セグメント | CTR | CVR | アクション |
|---|---|---|---|
| スター | 高 | 高 | バリエーション拡大(最優先) |
| クリックベイト | 高 | 低 | ディスクリプション改善 |
| 隠れた宝石 | 低 | 高 | ヘッドライン改善 |
| 淘汰候補 | 低 | 低 | 要因分析 → 大幅刷新 or 停止 |
スター広告群から以下を分析する:
チェックリスト:
プラットフォーム別のオーディエンスに合わせたメッセージング戦略を策定する。
| セグメント | 認知段階 | メッセージ方針 | 適合プラットフォーム |
|---|---|---|---|
| 問題無自覚層 | 未認知 | 課題の顕在化 | Meta(リーチ広告) |
| 問題認知層 | 課題認知 | 解決策の提示 | Google(検索広告)、Meta |
| 解決策探索層 | 情報収集中 | 比較優位性の訴求 | Google(検索)、LinkedIn |
| 購買検討層 | 比較段階 | 具体的なオファー | Google(検索・リマケ) |
各セグメントに対して 3-5 個の訴求軸を設定する:
| 訴求軸カテゴリ | 例 | 最適な認知段階 |
|---|---|---|
| 課題喚起 | 「まだ手作業でレポートを作っていますか?」 | 未認知〜課題認知 |
| 成果訴求 | 「レポート作成時間を75%削減」 | 課題認知〜情報収集 |
| 社会的証明 | 「10,000社以上が導入済み」 | 情報収集〜比較段階 |
| 競合比較 | 「従来ツールの3倍の速度」 | 比較段階 |
| 緊急性 | 「今月末まで初月無料」 | 比較段階〜購買 |
| アイデンティティ | 「データドリブン経営者のための」 | 全段階 |
| 好奇心喚起 | 「トップ企業が使う秘密のワークフロー」 | 未認知〜課題認知 |
| 逆説 | 「なぜExcelは最悪のBI基盤なのか」 | 未認知〜課題認知 |
チェックリスト:
プラットフォーム別の文字数制約を厳守しながら、訴求軸ごとにヘッドラインを量産する。
| プラットフォーム | 要素 | 文字数上限 | 推奨本数 |
|---|---|---|---|
| Google Ads(RSA) | ヘッドライン | 30文字 | 15本 |
| Meta Ads | ヘッドライン | 40文字(推奨) | 5-10本 |
| LinkedIn Ads | ヘッドライン | 70文字(推奨) | 5-10本 |
| X / Twitter Ads | カードヘッドライン | 70文字 | 3-5本 |
詳細な制約は platform-specs.md を参照。
強いヘッドラインの原則:
詳細な心理学原則は psychology-triggers.md を参照。
各訴求軸について以下の 4 次元でバリエーションを展開する:
| 次元 | 変化させる要素 | 例 |
|---|---|---|
| 語彙 | 類義語・表現の入れ替え | 削減 → カット → 短縮 |
| 具体度 | 数値 vs 概念的表現 | 「75%削減」vs「大幅に短縮」 |
| トーン | 直接 / 疑問 / 命令 | 「始めよう」/「まだ手作業?」/「今すぐ試せ」 |
| 構文 | 短い一撃 vs 完全な価値文 | 「即日導入」vs「初日から効果を実感」 |
チェックリスト:
ヘッドラインを補完し、CTAで行動を促すディスクリプションを生成する。
| プラットフォーム | 要素 | 文字数上限 | 推奨本数 |
|---|---|---|---|
| Google Ads(RSA) | ディスクリプション | 90文字 | 4本 |
| Meta Ads | プライマリテキスト | 125文字(表示)/ 2,200文字 | 3-5本 |
| Meta Ads | 説明文 | 30文字(推奨) | 3本 |
| LinkedIn Ads | イントロテキスト | 150文字(推奨)/ 600文字 | 3-5本 |
コピーフレームワークの詳細は ad-copy-frameworks.md を参照。
| パターン | 構成 | 最適なシーン |
|---|---|---|
| ベネフィット + 証拠 | 「[成果] — [実績・数値]。[CTA]」 | 比較検討段階 |
| 課題 + 解決 + CTA | 「[課題]を解決。[方法]で[成果]。[CTA]」 | 課題認知段階 |
| 社会的証明 + CTA | 「[N社]が選んだ[プロダクト]。[CTA]」 | 信頼醸成 |
| オファー + 条件 + CTA | 「[期間限定オファー]。[条件]。[CTA]」 | 購買促進 |
| 反論処理 + CTA | 「[障壁解消]。[安心材料]。[CTA]」 | 離脱防止 |
| CTA タイプ | 例 | 適合段階 |
|---|---|---|
| ソフト CTA | 「詳しくはこちら」「事例を見る」 | 認知〜検討 |
| ハード CTA | 「無料で始める」「今すぐ申し込む」 | 検討〜購買 |
| 緊急性 CTA | 「今月末まで30%OFF」「残り10席」 | 購買促進 |
| アクション CTA | 「ROI を計算する」「診断を受ける」 | エンゲージメント |
チェックリスト:
生成したヘッドラインとディスクリプションを組み合わせ、プラットフォーム投入用のマトリクスを構築する。
全組み合わせを総当たりするのではなく、戦略的に組み合わせる:
| 組み合わせ方針 | 説明 | 例 |
|---|---|---|
| 同一訴求軸 | ヘッドライン・ディスクリプションが同じ訴求軸 | 課題喚起H × 課題解決D |
| 補完型 | ヘッドラインの訴求をディスクリプションで補強 | 成果訴求H × 社会的証明D |
| 段階横断 | 異なる認知段階を橋渡し | 好奇心喚起H × オファーD |
Google Ads RSA 用:
campaign,ad_group,headline_1,headline_2,headline_3,headline_4,headline_5,headline_6,headline_7,headline_8,headline_9,headline_10,headline_11,headline_12,headline_13,headline_14,headline_15,description_1,description_2,description_3,description_4,path_1,path_2,final_url
Meta Ads 用:
ad_name,primary_text,headline,description,cta_type,url
LinkedIn Ads 用:
ad_name,intro_text,headline,description,cta_type,destination_url
| プラットフォーム | 推奨バリエーション数 | 理由 |
|---|---|---|
| Google Ads(RSA) | 3-5 広告(各15H+4D) | Google の機械学習が組み合わせを最適化 |
| Meta Ads | 10-30 広告 | クリエイティブ疲れが早い、多品種少量 |
| LinkedIn Ads | 5-10 広告 | オーディエンスが小さく、テスト速度が遅い |
チェックリスト:
各プラットフォーム固有の仕様とベストプラクティスに基づいて最終調整を行う。
| 最適化項目 | 対応 |
|---|---|
| 広告カスタマイザ | {KeyWord:デフォルト} で検索語句に動的対応 |
| ピン留め | ブランド名を Position 1 にピン、他は原則フリー |
| 広告の有効性 | 「優良」以上を目指す(ヘッドラインの多様性が鍵) |
| 表示パス | キーワードを含めてクリック率を向上 |
| 最適化項目 | 対応 |
|---|---|
| プライマリテキスト | 最初の 125 文字にフックを集約 |
| 改行活用 | 長文は改行で可読性を確保 |
| 絵文字 | テスト前提で 1-2 個まで。過度な使用は禁止 |
| 配置対応 | ストーリーズ用は 72 文字以内に短縮 |
| 最適化項目 | 対応 |
|---|---|
| トーン | プロフェッショナルだが堅すぎない |
| 統計・データ | 数値を積極的に活用(信頼性向上) |
| 職種固有の言語 | ターゲットの職種が使う業界用語を反映 |
| 同僚の声 | 第一人称のテスティモニアル形式が有効 |
チェックリスト:
最終的な品質ゲートを通過させ、投入準備を完了する。
| チェック項目 | 確認内容 |
|---|---|
| 禁止表現 | NG ワードリストとの照合 |
| トーン一貫性 | marketing-context.md のブランドボイスとの整合 |
| 必須要素 | 商標記号、免責事項、必須表記の有無 |
| 競合言及 | 比較表現が法的に問題ないか |
以下の基準でバリエーションの多様性を検証する:
LLM が広告クリエイティブを大量生成する際、distributional convergence により「量産したはずが全部同じ」という状態に陥る。表層的な語彙の差し替えではなく、訴求の本質が多様化しているかを検証する。
| # | Ad Creative Slop パターン | 検出方法 | 対策 |
|---|---|---|---|
| AC-1 | ヘッドライン公式の固定化 | 全ヘッドラインが「X%削減」「N社が導入」の2-3パターンに収束 | 訴求軸8カテゴリ(Step 3b)から最低4カテゴリを使用。同じ公式を3回以上使わない |
| AC-2 | バリエーションの幻想 | 語彙の差し替え(削減→カット→短縮)だけで本質的差異がない | 4次元(語彙×具体度×トーン×構文、Step 4c)のうち最低2次元を変化させる |
| AC-3 | CTA の一本化 | 全広告で「無料で始める」「今すぐ試す」 | 認知段階に応じた CTA(ソフト/ハード/緊急性/アクション、Step 5c)を使い分ける |
| AC-4 | オーディエンスセグメントの画一化 | 毎回同じ4セグメント(未認知/認知/探索/検討)を使い回す | プロダクトの購買プロセスに応じてセグメントを再設計。BtoB は職種・企業ステージで分割 |
| AC-5 | 訴求軸の順序固定 | 毎回「課題喚起→成果→社会的証明→緊急性」の同じ順序 | パフォーマンスデータがあればデータ駆動で順序決定。なければペルソナの認知段階で優先順位を変える |
| AC-6 | プラットフォーム最適化のコピペ | Google/Meta/LinkedIn で同じ最適化アドバイス | プラットフォーム固有のアルゴリズム特性・ユーザー行動の違いを反映。Step 7 の最適化を形骸化させない |
| AC-7 | 心理トリガーの機械的適用 | 社会的証明と希少性をどの広告にも同じように適用 | ペルソナの購買心理と認知段階に最も刺さるトリガーを選定。1広告1トリガーの原則 |
| AC-8 | パフォーマンス分析のテンプレ化 | 毎回同じ4象限分析(スター/クリックベイト/隠れた宝石/淘汰候補)で終わる | 4象限は入口。なぜスターなのか(訴求軸?構文?タイミング?)の因果分析まで踏み込む |
Why: 広告クリエイティブの量産は「量が質を生む」が前提だが、distributional convergence によって 量産されたコピーが実質的に同一であれば、A/B テストの意味がなくなる。プラットフォームの機械学習も 実質的に同じ広告から学習することになり、最適化が停滞する。
核心原則: 語彙を変えるのではなく、訴求の角度を変えよ — 同じベネフィットの言い換えではなく、 異なる訴求軸・異なる認知段階・異なる心理トリガーからアプローチすることで、 真のバリエーションが生まれる。
チェックリスト:
| 納品物 | 形式 | 内容 |
|---|---|---|
| クリエイティブ一覧 | CSV | プラットフォーム投入用の広告データ |
| パフォーマンス分析 | Markdown | 既存広告の分析結果と改善方針 |
| クリエイティブ戦略メモ | Markdown | 訴求軸・仮説・テスト計画の記録 |
| イテレーション記録 | Markdown | 前回比の変更点と次回の方針 |
## イテレーション記録
- ラウンド: [番号]
- 日付: [日付]
- 分析対象: ヘッドライン [X]本 / ディスクリプション [Y]本
- トップパフォーマー: 「[ヘッドライン]」— CTR: [値], CVR: [値]
- ワーストパフォーマー: 「[ヘッドライン]」— CTR: [値], CVR: [値]
- 勝ちパターン: [要約]
- 新規生成: ヘッドライン [X]本 / ディスクリプション [Y]本
- テスト仮説: [今回テストする新しい訴求軸・構文]
- 停止候補: [パフォーマンスが低い訴求軸]
チェックリスト:
「プロジェクト管理ツール TaskFlow の Google Ads 検索広告を作って。
ターゲットは中小企業のマネージャー層。USP はリアルタイム進捗可視化。」
→ Step 1 で marketing-context.md を確認(なければヒアリング)
→ Step 3 でオーディエンスを「課題認知層」「解決策探索層」に設定
→ Step 4 で 15 本のヘッドライン生成(各30文字以内)
例: 「進捗が一目でわかるTaskFlow」(14文字)
「プロジェクト遅延をゼロに」(12文字)
→ Step 5 で 4 本のディスクリプション生成(各90文字以内)
→ Step 6 で RSA 用 CSV を出力
→ 成果物: 15H+4D の RSA セット × 3 広告グループ
「この CSV に過去30日の広告データがあります。パフォーマンスが悪い広告を
特定して、新しいバリエーションを提案してください。」
→ Step 2 で CSV を分析、4象限セグメンテーション実施
スター: 3本(CTR 5.2%、CVR 3.1%)— 成果訴求が強い
淘汰候補: 8本(CTR 0.8%、CVR 0.2%)— 汎用的な表現
→ Step 2c で勝ちパターン抽出: 数値入りヘッドラインが高CTR
→ Step 4-5 で勝ちパターンを踏襲した新バリエーション 30 本生成
→ Step 8e でイテレーション記録を作成
→ 成果物: パフォーマンス分析レポート + 新規クリエイティブ CSV
「Meta 広告で新しいリード獲得キャンペーンを始めます。
ターゲットは人事担当者。採用管理ツールの広告を 20 パターン作って。」
→ Step 1 でコンテキスト確認(人事向け採用管理ツール)
→ Step 3 でセグメント定義: 採用業務に課題を感じている人事担当者
→ Step 4 で 10 本のヘッドライン(40文字以内)
→ Step 5 で Meta 用プライマリテキスト 10 本(125文字にフック集約)
→ Step 6 で 20 パターンの組み合わせ構築
→ Step 7b で Meta 固有の最適化(改行・絵文字・配置対応)
→ 成果物: Meta Ads 投入用 CSV(20 広告セット)
「LinkedIn でエンタープライズ向けセキュリティ製品の広告を作って。
ターゲットは CISO と IT マネージャー。」
→ Step 1 でコンテキスト確認
→ Step 3 で B2B セグメント定義(職種: CISO、IT Manager)
→ Step 4 で LinkedIn 用ヘッドライン 10 本(70文字推奨)
→ Step 5 でイントロテキスト 5 本(150文字推奨)
→ Step 7c で LinkedIn 最適化(プロフェッショナルトーン、統計活用)
→ 成果物: LinkedIn Ads 用 CSV + クリエイティブ戦略メモ
「新商品ローンチで Google、Meta、LinkedIn の 3 プラットフォームに
同時出稿したい。一括でクリエイティブを作って。」
→ Step 1-3 を共通で実施
→ Step 4 でプラットフォーム横断のヘッドライン生成
最も制約が厳しい Google RSA(30文字)から開始し拡張
Google 30文字 → Meta 40文字 → LinkedIn 70文字 の順
→ Step 5 でプラットフォーム別ディスクリプション生成
→ Step 6 で 3 つの CSV を生成
→ Step 7 で各プラットフォーム固有の最適化
→ 成果物: 3 プラットフォーム分の CSV + 統合クリエイティブ戦略メモ
「現在の広告は課題喚起型のコピーが中心です。社会的証明型のコピーと
ABテストしたい。テスト用のバリエーションを作って。」
→ Step 2 で現行広告(課題喚起型)を分析
→ Step 3 で社会的証明型の訴求軸を設計
→ Step 4-5 で社会的証明型のヘッドライン・ディスクリプション生成
例: 「導入企業500社突破」「顧客満足度98%」
→ Step 6 で A群(課題喚起)/B群(社会的証明)のマトリクス構築
→ Step 8e でテスト仮説を記録:
「仮説: 社会的証明型は課題喚起型より CVR が 15% 高い」
→ 成果物: ABテスト用 CSV + テスト計画書
Given: CTR や CVR が欠損・不正値を含む CSV データ When: パフォーマンス分析を実行 Then: エラーメッセージで不正行を特定し、有効データのみで分析を継続する
Given: 新規プロダクトで既存広告データなし When: ゼロからクリエイティブを生成 Then: ブランドボイスとペルソナに基づく基本セットを出力する
Given: marketing-copy で策定済みのブランドコンテキスト When: 上流スキルの成果物を参照して広告を生成 Then: ブランドガイドラインと整合する統合された広告セットを出力
| 問題 | 原因 | 解決策 |
|---|---|---|
| ヘッドラインが文字数オーバーする | 日本語は漢字でも1文字カウントだが表現が長くなりがち | 体言止め・略語を活用し圧縮。助詞「の」「を」を省略可能か検討 |
| 全バリエーションが似通っている | 同じ訴求軸の言い換えに終始している | Step 3 に戻り、異なる訴求軸カテゴリから生成し直す |
| CSV 読み込み時にエラーが出る | 文字コード(BOM 付き UTF-8)やカンマ区切りの不一致 | UTF-8(BOM なし)に変換、Excel からはタブ区切りで再出力 |
| Google RSA の広告有効性が「低い」 | ヘッドラインの多様性不足、キーワード欠如 | キーワード系・ベネフィット系・CTA系を各3本以上確保 |
| Meta 広告のフック部分が表示されない | プライマリテキストの冒頭が 125 文字を超過 | フック(最も伝えたい一文)を冒頭 80 文字以内に配置 |
| LinkedIn 広告のトーンが不適切 | 消費者向けの軽いトーンを使っている | 「!」の多用を避け、データ・実績で裏付ける表現に変更 |
| パフォーマンスデータが不十分 | インプレッション 1,000 未満のデータで判断している | 1,000 imp 以上のデータのみ分析対象とし、不足分は期間延長 |
| 動的キーワード挿入が文字数超過 | デフォルト値が長すぎる | デフォルト値を文字数制約の 80% 以内に設定する |
| ブランドガイドラインとの不整合 | marketing-context.md の参照漏れ | Step 1 に戻り、禁止表現リスト・トーン指示を再確認 |
| 配信後に CTR が急落する | クリエイティブ疲れ(同じ広告の長期配信) | 2-3 週間ごとにバリエーションを追加し、低パフォーマンス広告を停止 |
| 広告ポリシー違反で不承認になる | 過度な誇張表現、禁止カテゴリの表現 | 「最高」「No.1」等の最上級表現を避け、客観的な数値で表現 |
| 多言語展開でニュアンスが変わる | 直訳により文化的な不適切表現が生じる | ターゲット市場のネイティブスピーカーにレビューを依頼 |
| 大量生成したバリエーションが実質的に同一 | AI slop(distributional convergence)— 語彙差し替えだけで訴求の角度が同じ | Step 8c の AC-1〜AC-8 チェックを実行。4次元(語彙×具体度×トーン×構文)のうち最低2次元を変化させる |
| 全プラットフォームの最適化提案が同じ内容になる | AC-6(プラットフォーム最適化のコピペ)— LLM が汎用的なベストプラクティスに収束 | Step 7 の各プラットフォーム固有テーブルに立ち返り、アルゴリズム特性・ユーザー行動・UI 仕様の違いを明示的に反映する |
| 心理トリガーが全広告で同じパターンになる | AC-7(心理トリガーの機械的適用)— 社会的証明と希少性が無差別に適用されている |
| ファイル | 内容 |
|---|---|
| strands-py-runtime.md | strands-py(Strands Agent)上のツール・workspace の扱い |
| platform-specs.md | プラットフォーム別の文字数制約・フォーマット一覧(Google RSA, Meta, LinkedIn, X/Twitter) |
| ad-copy-frameworks.md | 広告コピーフレームワーク集(AIDA, PAS, Before-After-Bridge, 4Us, FAB) |
| performance-benchmarks.md | 業種別 CTR・CVR ベンチマーク、改善目標の目安 |
| psychology-triggers.md | 広告で使える心理学トリガー集(社会的証明、希少性、権威、互恵性等) |
project/00_schemas/BUSINESS_RULES_TEMPLATE.md | 広告制作ビジネスルール定義テンプレート |
project/00_schemas/REVIEW_RESULT_TEMPLATE.md | クリエイティブレビュー結果テンプレート |
このスキルの出力品質を検証するためのチェックリスト。
| スキル | 関係 | 説明 |
|---|---|---|
| marketing-context | 前提 | ブランドボイス・ペルソナ・USP の基盤コンテキストを提供 |
| marketing-copy | 補完 | LP・メールなど広告以外のコピーライティング |
| seo-analytics | 連携 | 検索連動広告とSEOランディングページの整合性確保 |
| growth-ops | 連携 | 広告パフォーマンスデータをファネル分析・CRO施策に反映 |
| review | 後工程 | 生成したクリエイティブの品質レビュー |
| data-validation | 補完 | パフォーマンスデータの数値整合性検証 |
| diagram | 補完 | 広告キャンペーン構成やファネル図の作成 |
| ペルソナの認知段階に最も刺さるトリガーを1広告1つに絞る。psychology-triggers.md を参照し、段階別の有効トリガーを使い分ける |