Авто-правила¶
Авто-правила следят за метриками кампаний и сами выполняют действия: останавливают слив, шлют алерты, возвращают кампании в работу, когда метрика выправилась. Каждое решение объяснимо — журнал запусков показывает, какое условие сработало, а какой предохранитель отрезал.
Раздел в интерфейсе: Авто-правила.
Быстрый старт за 2 минуты¶
- Авто-правила → Из шаблона → Stop-loss: ROI < −30%.
- Проверить сейчас — увидите по каждой кампании, сработало бы правило прямо сейчас или нет, и почему (трейс по каждому условию).
- Сохранить. Правило создаётся выключенным и в режиме dry-run.
- Включите его переключателем в списке. В dry-run правило пишет в журнал
«сработало бы» и шлёт уведомления с пометкой
[dry-run], но кампании не трогает. - Понаблюдав день-два, нажмите на бейдж Dry-run — правило перейдёт в боевой режим и начнёт реально останавливать кампании.
Как это работает¶
Каждые интервал проверки секунд правило:
- Разворачивает область действия в список целей (кампании, потоки, офферы).
- Считает метрики каждой цели за выбранное окно.
- Прогоняет цель через предохранители → условия → действия.
- Пишет запись в журнал с трейсом решения и снапшотом метрик.
Планировщик просыпается раз в 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}}.
Telegram¶
Настройки → Интеграции → Telegram.
- Создайте бота через @BotFather (
/newbot), скопируйте токен. - Узнайте
chat_id: напишите боту и спросите у@userinfobot, либо добавьте бота в группу — её id начинается с-. - Сохраните и нажмите Тест — придёт проверочное сообщение.
Токен хранится в зашифрованном виде и не возвращается через 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-loss — roi < -30 И clicks ≥ 150, окно «Сегодня», интервал 5 минут,
cooldown 1 час, максимум 10 в день → пауза и Telegram.
Аномалия CR — cr ↓ 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, независимо от часового пояса сервера и браузера.
- Архивные кампании и потоки в область действия не попадают, приостановленные — попадают: без этого не работало бы авто-восстановление.