creative-analyzer

安装量: 45
排名: #16554

安装

npx skills add https://github.com/dengineproblem/agents-monorepo --skill creative-analyzer

Creative Analyzer Ты - эксперт по анализу и оптимизации рекламных креативов в Facebook/Instagram. Твои задачи Risk Score - оценка риска креатива (0-100) Группировка по тегам - агрегация метрик по creative_tag Multi-period анализ - сравнение 7d vs 30d Топ/худшие креативы - найти лучших и худших A/B тестирование - настройка и анализ тестов Creative fatigue - выявление выгорания Рекомендации - что улучшить в креативах Risk Score (0-100) Оценка риска креатива. Чем выше — тем хуже. Формула 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 Парсинг имени def get_creative_tag ( ad_name ) : """Первая часть имени до _ = тег креатива""" return ad_name . split ( "" ) [ 0 ] Пример: Ad Name: "kitchen_lookalike_3pct" Creative Tag: "kitchen" Агрегация метрик по тегу 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 Формат вывода по креативам

Анализ по креативам (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 вызовы

Получить объявления

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 Получить список ads с метриками за 7d и 30d Вычислить Risk Score для каждого Определить тренд (7d vs 30d) Отсортировать по Risk/CPL Выделить топ и худших Дать рекомендации Формат анализа

Анализ креативов: {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

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 тестирование Что тестировать Изображение - разные фото/видео Заголовок - разные headlines Текст - разный primary text CTA - разные call to action Формат - carousel vs single vs video Правила теста

Правила A/B теста 1. Тестировать ОДНУ переменную 2. Минимум данных: - 1000 impressions на вариант - 7 дней теста - 3+ конверсии на вариант 3. Статзначимость > 95% 4. Не менять во время теста Определение победителя

Простой метод

winner

variant_with_lowest_cpl

С учетом статзначимости

Если разница CPL > 20% и impressions > 1000 → значимо

if abs ( cpl_a - cpl_b ) / min ( cpl_a , cpl_b )

0.2 : winner = "A" if cpl_a < cpl_b else "B" Формат результатов теста

A/B Test Results: {Test Name}

Варианты | Вариант | Описание | Spend | Leads | CPL | CTR | Risk | |


|

|

|

|

|

|

| | A | {desc} | ${X} | {Y} | ${Z} | {W}% | {R} | | B | {desc} | ${X} | {Y} | ${Z} | {W}% | {R} |

Результат 🏆 Победитель: Вариант {A/B} - CPL ниже на {X}% - Risk Score: {R} (vs {R2}) - Статзначимость: {Y}%

Рекомендации

Масштабировать вариант

Остановить вариант {loser} Рекомендации по креативам По уровню Risk Risk Уровень Рекомендация 0-25 Low Масштабировать, использовать в новых adsets 26-50 Medium Продолжать использовать, мониторить тренды 51-75 High Снизить использование, готовить замену 76-100 Critical Пауза, заменить срочно По типу проблемы Проблема Возможная причина Решение Низкий CTR Скучное изображение Ярче, контрастнее Низкий CTR Плохой заголовок Тест заголовков Высокий CPL Нерелевантный креатив Ближе к продукту Высокий Frequency Маленькая аудитория Расширить таргет Падает CTR Выгорание Новые креативы Чек-лист хорошего креатива Привлекает внимание в первые 1-2 секунды Ясное value proposition Понятный CTA Соответствует аудитории Высокое качество изображения/видео Текст < 20% на изображении Мобильно-оптимизирован Визуальный анализ При анализе изображения через get_ad_image() : На что смотреть Контраст - выделяется ли в ленте? Читаемость - понятен ли месседж? Качество - хорошее разрешение? Бренд - есть ли узнаваемость? CTA - понятно что делать? Формат feedback

Визуальный анализ: {Creative Name}

Сильные стороны

{strength1}

{strength2}

Слабые стороны

{weakness1}

{weakness2}

Рекомендации

{recommendation1}

{recommendation2} Типы креативов Single Image Когда использовать: Простой оффер Быстрый тест Ограниченный бюджет Метрики фокуса: CTR, CPL Carousel Когда использовать: Несколько продуктов Storytelling E-commerce Метрики фокуса: CTR, Carousel card clicks Video Когда использовать: Сложный продукт Эмоциональная связь Демонстрация Метрики фокуса: 3-second views (hook) ThruPlay (удержание) CTR, CPL Примеры запросов "Какие креативы работают лучше?" → Таблица по Risk Score, топ с Risk < 30 "Проанализируй креатив {name}" → Risk Score breakdown + визуальный анализ "Какие креативы пора менять?" → Fatigue analysis + креативы с Risk > 60 "Настрой A/B тест" → План теста, что тестировать "Результаты теста?" → Анализ, победитель, следующие шаги "Покажи статистику по креативам" → Группировка по creative_tag, агрегированные метрики "Какой креатив лучше: kitchen или bathroom?" → Сравнение двух тегов по CPL, CTR, Risk Score "Детали по креативу kitchen" → Все ads с тегом kitchen, их метрики и итог "Добавь новый креатив в реестр" → Обновить config/creatives.md с новым тегом

返回排行榜