Перейти к содержанию

Авто-правила

Авто-правила следят за метриками кампаний и сами выполняют действия: останавливают слив, шлют алерты, возвращают кампании в работу, когда метрика выправилась. Каждое решение объяснимо — журнал запусков показывает, какое условие сработало, а какой предохранитель отрезал.

Раздел в интерфейсе: Авто-правила.

Быстрый старт за 2 минуты

  1. Авто-правила → Из шаблона → Stop-loss: ROI < −30%.
  2. Проверить сейчас — увидите по каждой кампании, сработало бы правило прямо сейчас или нет, и почему (трейс по каждому условию).
  3. Сохранить. Правило создаётся выключенным и в режиме dry-run.
  4. Включите его переключателем в списке. В dry-run правило пишет в журнал «сработало бы» и шлёт уведомления с пометкой [dry-run], но кампании не трогает.
  5. Понаблюдав день-два, нажмите на бейдж Dry-run — правило перейдёт в боевой режим и начнёт реально останавливать кампании.

Как это работает

Каждые интервал проверки секунд правило:

  1. Разворачивает область действия в список целей (кампании, потоки, офферы).
  2. Считает метрики каждой цели за выбранное окно.
  3. Прогоняет цель через предохранители → условия → действия.
  4. Пишет запись в журнал с трейсом решения и снапшотом метрик.

Планировщик просыпается раз в 15 секунд и берёт те правила, у которых подошёл срок, — интервал выдерживается с точностью до этого шага.

Действия применяются мгновенно: после паузы кампании редиректы прекращаются сразу.

Метрики

clicks, unique_clicks, conversions, leads, sales, rejected, revenue, cost, profit, cr, epc, roi, roas, cpa, approval_rate — те же значения, что в отчётах. Деньги — в базовой валюте воркспейса. Симулированный трафик в метрики правил не попадает. Цель, у которой в окне нет ни кликов, ни конверсий, получает нулевой снапшот — поэтому условие clicks = 0 («кампания молчит») работает.

Операторы условий

Оператор Смысл
< > = сравнение с порогом
между значение в диапазоне [a, b]
↓ vs 7д метрика упала на ≥ N% против своего среднего за предыдущие 7 дней
↑ vs 7д метрика выросла на ≥ N% против среднего за 7 дней

Операторы vs 7д — детектор аномалий без жёстких порогов: «CR упал вдвое» сработает и на кампании с CR 1%, и на кампании с CR 10%.

Как считается база

База — предыдущие 7 дней до начала окна. Счётные метрики (клики, конверсии, доход, расход) приводятся к длине окна, чтобы сравнивать сопоставимое; ставки (CR, ROI, EPC, апрув) берутся как средние за 7 дней. Если база нулевая — истории ещё нет, — условие не срабатывает: новую кампанию такое правило не остановит.

Условий может быть несколько, с логикой И (все) или ИЛИ (любое).

Предохранители

Главная причина не доверять авто-правилам — ложные срабатывания на шуме. Поэтому каждое правило проходит через предохранители:

Предохранитель Что делает Рекомендация
Мин. кликов не срабатывать, пока в окне меньше N кликов всегда для правил с паузой; 100–300
Мин. конверсий то же по конверсиям для правил по апруву и EPC
Wilson 95% для CR и апрува сравнивается граница доверительного интервала, а не точечное значение включать для любых правил, останавливающих трафик по CR
Cooldown после срабатывания по цели правило молчит N времени 1 час по умолчанию; защищает от спама алертами
Макс. срабатываний в день жёсткий потолок реальных срабатываний (UTC) 5–10

Про Wilson простыми словами: CR = 0% на 10 кликах — это «мы ничего не знаем», а не «кампания мертва». Интервал широкий на маленькой выборке и узкий на большой, поэтому правило с этим флагом физически не может убить кампанию на 10 кликах, но уверенно сработает на 10 000.

Поправка применяется только к операторам < > : с = и «между» она была бы бесполезной, и такое правило не сохранится — форма вернёт ошибку.

Если правило «молчит», нажмите Проверить сейчас: в трейсе по каждой цели видно, какой предохранитель отрезал срабатывание и с какими числами. В журнал оценка, срезанная по выборке, не попадает — туда пишутся только срабатывания, подавленные cooldown'ом или дневным лимитом.

Действия

Действие Что происходит
Пауза цель → paused, трафик прекращается; запись в audit-лог
Уведомить центр уведомлений в интерфейсе (каждому участнику воркспейса) и/или Telegram
Webhook событие rule.fired — во включённые вебхуки, подписанные на это событие

Действия идемпотентны: уже остановленную кампанию правило повторно не трогает (в журнале будет no-op).

При авто-восстановлении вместо rule.fired уходит rule.recovered.

Для офферов доступны только Уведомить и Webhook: горячий путь пока не смотрит на состояние оффера при ротации, поэтому пауза оффера была бы фиктивной.

Шаблон уведомления

Плейсхолдеры: {{name}} (цель), {{kind}}, {{rule}}, {{window}} и любая метрика: {{roi}}, {{cr}}, {{clicks}}, {{cost}}, {{revenue}}.

{{name}}: ROI {{roi}}% при {{clicks}} кликах — кампания остановлена

Telegram

Настройки → Интеграции → Telegram.

  1. Создайте бота через @BotFather (/newbot), скопируйте токен.
  2. Узнайте chat_id: напишите боту и спросите у @userinfobot, либо добавьте бота в группу — её id начинается с -.
  3. Сохраните и нажмите Тест — придёт проверочное сообщение.

Токен хранится в зашифрованном виде и не возвращается через API.

Авто-восстановление

Опциональный блок «вернуть как было»: когда условие восстановления держится N проверок подряд, правило само возвращает кампанию в работу.

Два важных свойства:

  • Восстанавливаются только свои жертвы. Правило возобновляет только те цели, которые само же и остановило. Кампанию, выключенную руками или другим правилом, оно не тронет никогда.
  • N подряд — защита от дребезга на границе порога. 2–3 проверки — разумный выбор.

Пример: stop-loss остановил кампанию ночью на просадке, утром ROI вернулся в плюс — через две «зелёные» проверки правило само включает кампанию и шлёт уведомление.

Набор действий восстановления в интерфейсе фиксирован: возобновить + уведомление в приложении. Свой набор (например, с вебхуком) задаётся через API.

Dry-run

Новые правила всегда создаются в dry-run. В этом режиме правило оценивается по-настоящему, пишет в журнал «сработало бы» и шлёт уведомления с пометкой [dry-run], но кампании не трогает.

Переводите в боевой режим, когда журнал несколько дней показывает ожидаемое поведение. При переводе cooldown'ы сбрасываются — правило сможет действовать сразу.

Вебхуки уходят и в dry-run

Действие Webhook отправляет событие в обоих режимах; в теле стоит "dry_run": true. Если принимающая сторона что-то делает по этому событию — учитывайте флаг у себя.

Журнал запусков

Кнопка Журнал у каждого правила. Каждая строка — одна оценка цели:

  • вердикт (сработало / тихо / восстановлено) и режим;
  • трейс решения — каждый предохранитель и каждое условие с ✓/✗ и фактическими числами: ✓ [guard] min_clicks: 1258 >= 150, ✓ [cond] roi(-100) lt -30;
  • снапшот метрик на момент проверки;
  • выполненные действия или no-op.

«Тихие» оценки в журнал не пишутся — кроме тех, где условия выполнились, но срабатывание подавил предохранитель: у подавленных cooldown'ом причина видна в трейсе, у подавленных дневным лимитом — красной строкой рядом со снапшотом метрик (suppressed: max_fires_per_day (N) reached). Для вопроса «почему не срабатывает?» используйте Проверить сейчас в редакторе: он показывает трейс по каждой цели, ничего не выполняя и ничего не записывая.

Хранение: несработавшие записи — 30 дней, сработавшие — 180. Удаление правила удаляет и его журнал.

Рецепты

Stop-lossroi < -30 И clicks ≥ 150, окно «Сегодня», интервал 5 минут, cooldown 1 час, максимум 10 в день → пауза и Telegram.

Аномалия CRcr ↓ vs 7д на 50% И clicks ≥ 200, окно «Последние 3 часа», мин. кликов 200, cooldown 2 часа → алерт. Ловит сломанный лендинг или оффер раньше, чем это станет видно по деньгам.

Тишина в трафикеclicks = 0, окно «Последний час» → алерт. Умер домен, забанили аккаунт, упал источник — узнаете через час, а не утром.

Перегрев расходовcost > 200 И conversions = 0, окно «Сегодня» → пауза и Telegram.

Падение апруваapproval_rate < 30 И conversions ≥ 20, окно «Последние 3 дня», Wilson включён → алерт. Повод поговорить с партнёркой, пока не слили больше.

Права и аудит

Доступ управляется ролями: сущность rules (просмотр / редактирование / удаление). По умолчанию аналитик — только просмотр, менеджер — редактирование, владелец и админ — всё.

Каждое изменение правила и каждое его действие над кампанией пишется в audit-лог.

Ограничения

  • Триггер — только расписание, минимум одна минута.
  • Конструктор условий плоский — одна группа И/ИЛИ. Вложенные группы доступны через API.
  • Для офферов — только уведомления и вебхуки.
  • Область действия в интерфейсе — все активные кампании или выбранные вручную; отбор по группе кампаний или по тегам задаётся через API.
  • Окна «Сегодня» и «Вчера» и дневной лимит срабатываний считаются по UTC, независимо от часового пояса сервера и браузера.
  • Архивные кампании и потоки в область действия не попадают, приостановленные — попадают: без этого не работало бы авто-восстановление.