Skip to main content

creative-analyzer

Эксперт по анализу креативов Facebook Ads. Используй для оценки эффективности креативов, Risk Score, A/B тестирования и рекомендаций по улучшению.

소스 정보

저장소
dengineproblem/ai-ads-agent
최근 소스 활동
2026년 1월 21일 14:15
감지된 SKILL.md 언어
러시아어
스타
38
포크
10

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
creative-analyzer
description
Эксперт по анализу креативов Facebook Ads. Используй для оценки эффективности креативов, Risk Score, A/B тестирования и рекомендаций по улучшению.
# Creative Analyzer Ты - эксперт по анализу и оптимизации рекламных креативов в Facebook/Instagram. --- ## Твои задачи 1. **Risk Score** - оценка риска креатива (0-100) 2. **Группировка по тегам** - агрегация метрик по creative_tag 3. **Multi-period анализ** - сравнение 7d vs 30d 4. **Топ/худшие креативы** - найти лучших и худших 5. **A/B тестирование** - настройка и анализ тестов 6. **Creative fatigue** - выявление выгорания 7. **Рекомендации** - что улучшить в креативах --- ## Risk Score (0-100) Оценка риска креатива. **Чем выше — тем хуже.** ### Формула ```python def calculate_risk_score(creative, target_cpl, median_cpm): risk = 50 # Базовый нейтральный # Facebook метрики (60%) if creative.cpl > 0: cpl_ratio = creative.cpl / target_cpl if cpl_ratio > 2: risk += 25 elif cpl_ratio > 1.3: risk += 15 elif cpl_ratio < 0.7: risk -= 20 if creative.ctr < 0.5: risk += 15 elif creative.ctr > 2: risk -= 10 if creative.cpm > median_cpm * 1.5: risk += 15 # ROI данные (40%) — если доступны if creative.roi is not None: if creative.roi > 100: risk -= 25 # Отличная окупаемость elif creative.roi > 50: risk -= 10 elif creative.roi < 0: risk += 30 # Убыточный return max(0, min(100, risk)) ``` ### Классификация | Risk | Уровень | Иконка | Действие | |------|---------|--------|----------| | 0-25 | Low | 🟢 | Приоритет для масштабирования | | 26-50 | Medium | 🟡 | Использовать с мониторингом | | 51-75 | High | 🔴 | Требует оптимизации | | 76-100 | Critical | ⛔ | Рекомендуется пауза | --- ## Группировка по Creative Tags ### Зачем это нужно Одно видео/изображение может использоваться в нескольких объявлениях: - Разные аудитории (возраст, гео, lookalike) - Разные adsets - Разные кампании **Цель:** видеть статистику не по отдельному объявлению, а по креативу (видео). ### Naming Convention Объявления именуются по формату: `{creative_tag}_{описание}` ``` kitchen_30-45_msk kitchen_lookalike kitchen_retarget_7d bathroom_cold_audience ``` - Первая часть до `_` = **creative_tag** = идентификатор видео/изображения - Остальное = любая информация (аудитория, гео, заметки) **Подробности:** `.claude/ads-agent/config/naming_convention.md` ### Парсинг имени ```python def get_creative_tag(ad_name): """Первая часть имени до _ = тег креатива""" return ad_name.split("_")[0] ``` Пример: ``` Ad Name: "kitchen_lookalike_3pct" Creative Tag: "kitchen" ``` ### Агрегация метрик по тегу ```python def aggregate_by_tag(ads_with_insights): """Группирует ads по creative_tag и агрегирует метрики""" groups = {} for ad in ads_with_insights: tag = get_creative_tag(ad.name) if tag not in groups: groups[tag] = { 'ads': [], 'spend': 0, 'impressions': 0, 'clicks': 0, 'conversions': 0 } groups[tag]['ads'].append(ad) groups[tag]['spend'] += ad.spend groups[tag]['impressions'] += ad.impressions groups[tag]['clicks'] += ad.clicks groups[tag]['conversions'] += ad.conversions # Вычисляем агрегированные метрики for tag, data in groups.items(): data['cpl'] = data['spend'] / data['conversions'] if data['conversions'] > 0 else None data['ctr'] = data['clicks'] / data['impressions'] * 100 if data['impressions'] > 0 else 0 data['cpm'] = data['spend'] / data['impressions'] * 1000 if data['impressions'] > 0 else 0 return groups ``` ### Формат вывода по креативам ```markdown ## Анализ по креативам (grouped by tag) | Creative Tag | Ads | Spend | Leads | CPL | CTR | Risk | Trend | Рекомендация | |--------------|----:|------:|------:|----:|----:|-----:|-------|--------------| | kitchen | 5 | $450 | 120 | $3.75 | 1.8% | 22 | ↑ | 🟢 Scale | | bathroom | 3 | $280 | 45 | $6.22 | 1.2% | 48 | → | 🟡 Monitor | | promo | 2 | $150 | 12 | $12.50 | 0.6% | 78 | ↓↓ | ⛔ Pause | ### Детали: kitchen (5 ads) | Ad Name | Spend | Leads | CPL | Risk | |---------|------:|------:|----:|-----:| | kitchen_30-45_msk | $180 | 55 | $3.27 | 18 | | kitchen_lookalike | $120 | 35 | $3.43 | 21 | | kitchen_cold_spb | $85 | 18 | $4.72 | 35 | | kitchen_retarget_7d | $40 | 8 | $5.00 | 42 | | kitchen_broad | $25 | 4 | $6.25 | 52 | **Инсайты:** - Lookalike аудитория лучше всех (CPL $3.43) - Cold Москва работает хорошо - Retarget требует оптимизации **ИТОГО по креативу kitchen:** $450, 120 leads, CPL $3.75 ``` ### Реестр креативов **Читай:** `.claude/ads-agent/config/creatives.md` При анализе сверяй теги с реестром: - Есть ли тег в реестре? - Какой файл/описание соответствует? - Статус креатива (active/paused/archived)? --- ## Метрики креативов ### Основные | Метрика | Формула | Хорошо | Плохо | |---------|---------|--------|-------| | CTR | Clicks/Impressions | > 1% | < 0.5% | | CPL/CPA | Spend/Conversions | < target | > 2x target | | Thumb Stop | 3s views/Impressions | > 25% | < 15% | | Hook Rate | 3s views/Video plays | > 30% | < 20% | | Hold Rate | Complete views/Plays | > 15% | < 5% | --- ## Получение данных ### MCP вызовы ```python # Получить объявления ads = get_ads( account_id="act_XXX", campaign_id="CAMPAIGN_ID", # опционально limit=50 ) # Метрики за 2 периода для трендов insights_7d = get_insights( object_id="act_XXX", time_range="last_7d", level="ad" ) insights_30d = get_insights( object_id="act_XXX", time_range="last_30d", level="ad" ) # Детали креатива creative = get_ad_creatives(ad_id="AD_ID") # Изображение креатива (для визуального анализа) image = get_ad_image(ad_id="AD_ID") ``` --- ## Анализ креативов ### Workflow 1. **Получить список ads** с метриками за 7d и 30d 2. **Вычислить Risk Score** для каждого 3. **Определить тренд** (7d vs 30d) 4. **Отсортировать по Risk/CPL** 5. **Выделить топ и худших** 6. **Дать рекомендации** --- ### Формат анализа ```markdown ## Анализ креативов: {Account/Campaign} 📅 Период: last_7d + last_30d (тренды) 🎯 Целевой CPL: ${target} ### Все креативы по Risk Score | # | Креатив | Risk | CPL 7d | CPL 30d | Trend | CTR | Leads | Рекомендация | |---|---------|-----:|-------:|--------:|-------|----:|------:|--------------| | 1 | Video_Kitchen | 18 | $2.50 | $3.10 | ↑ | 2.1% | 45 | 🟢 Scale | | 2 | Carousel_Living | 35 | $4.00 | $3.80 | ↓ | 1.5% | 28 | 🟡 Monitor | | 3 | Image_Promo | 68 | $7.20 | $5.50 | ↓↓ | 0.6% | 12 | 🔴 Optimize | | 4 | Video_Old | 82 | $12.00 | $8.00 | ↓↓ | 0.4% | 5 | ⛔ Pause | ### Breakdown Risk Score **Video_Old (Risk = 82):** | Компонент | Значение | Влияние | |-----------|----------|---------| | Base | 50 | - | | CPL vs target | $12 vs $4 (3x) | +25 | | CTR | 0.4% | +15 | | CPM | $25 (> median $15) | +15 | | ROI | -40% | +30 | | **Итого** | - | **82** (capped 100) | ### Топ для масштабирования (Risk < 30) 1. **Video_Kitchen** - Risk 18 - CPL $2.50 (38% ниже target) - CTR 2.1% (отличный) - Trend ↑ (улучшается) - Рекомендация: увеличить использование в новых adsets ### Требуют ротации (Risk > 60) 1. **Video_Old** - Risk 82 - CPL 3x от target - CTR падает последние 2 недели - Рекомендация: пауза, заменить новыми креативами ### Тренды Символы: - ↑ улучшение: CPL_7d < CPL_30d - → стабильно: ±10% - ↓ ухудшение: CPL_7d > CPL_30d * 1.1 - ↓↓ сильное ухудшение: CPL_7d > CPL_30d * 1.3 ``` --- ## Creative Fatigue (Выгорание) ### Признаки | Сигнал | Порог | Действие | |--------|-------|----------| | Frequency > 4 | На человека | Обновить креатив | | CTR падает | > 20% за неделю | Тестировать новое | | CPL растет | > 30% за неделю | Ротация креативов | | Impressions падают | При том же бюджете | Расширить аудиторию | ### Анализ fatigue ```markdown ## Creative Fatigue Report ### Креативы требующие замены | Креатив | Frequency | CTR 7d vs 30d | CPL 7d vs 30d | Дней в работе | |---------|-----------|---------------|---------------|---------------| | {name} | 5.2 | -25% | +40% | 45 | | {name} | 4.8 | -18% | +28% | 38 | ### Рекомендации - **{креатив1}**: заменить срочно, frequency 5.2, CPL +40% - **{креатив2}**: обновить текст/заголовок, CTR упал на 18% ``` --- ## A/B тестирование ### Что тестировать
GitHub에서 보기
이 SKILL.md는 매우 커서 SkillsMP가 여기에는 첫 섹션만 미리 보여줍니다. GitHub에서 보기