В контекстной рекламе есть множество задач, для решения которых нужно спрогнозировать зависимость числа кликов, конверсий или оборота от ставки. Этот прогноз нужен, чтобы быстрее вписаться в условия, поставленные клиентам, или оценить эффективность работ. В этой статье описан простой, но относительно точный способ прогнозирования.
Применения
Кроме очевидных вещей, как, например, медиапланирование, предсказание трафика используется во множестве других моментов.
Вписка в условия
Есть некоторые условия, которые ставит клиент перед исполнителем или сервисом-оптимизатором конверсий (например, К50) – к примеру, бюджет не больше 2000$ в месяц или CPA не больше 2$.
Эти условия могут изменится: в кампанию могут быть добавлены ключевые слова, конкуренты могут менять ставки, может измениться алгоритм прогнозирования CTR в Директе. В общем исполнитель или система вынуждены время от времени изменять ставки, чтобы вписаться в условия.
Чем точнее спрогнозирована зависимость числа кликов от ставки, тем быстрее можно вписаться в эти условия и тем меньше ставки будут при этом колебаться. Колебания ставок снижают эффективность рекламы, поскольку за клики в один день мы платим необоснованно больше, чем в другой.
Оптимизация условий
Например, клиент устанавливает ограничения для агентства – средний CPA не более 2$. Это число он берет, по сути, с потолка. Скорее всего, при каком-то другом ограничении его прибыль будет существенно больше.
Студии выгодно посчитать это число и, если оно будет больше текущего, сообщить об этом клиенту. Например, в интерфейсе клиента Netpeak считается оптимальный рекламный бюджет.
Оценка эффективности работы
Если выплачивать вознаграждение за результат или просто для обратной связи, то нужно считать эффективность оптимизации. Но без прогноза числа кликов от ставки, на практике это сделать невозможно.
Например, было 1000 конверсий при CPA=10$, стало 1100 при CPA=11$. Вопрос какой результат дала оптимизация? Без прогноза числа конверсий от ставки ответить на этот вопрос невозможно.
Если у исполнителя нет четкой обратной связи, то он может только гадать, улучшили или ухудшили эффективность его действия. А его заказчик не может платить за результат или давать премию своим сотрудникам в зависимости от эффективности.
Прогноз от Директа
Прогноз в интерфейсе Яндекс.Директ не учитывает CTR ваших ключевых слов, показатель качества и историю вашего домена, а ведь от этого сильно зависит стоимость клика.
Более того, он считает, прогноз в зависимости от позиций, а не ставок. Прогноз Директа думает, что вы в каждом ключевом слове находитесь на некоторой фиксированной позиции. Чтобы понять, что это не соответствует истине, нужно просто посмотреть в статистике долю показов в спецразмещении.
Обычно, прогноз Директа ошибается в 2-3 раза.
Цифры
В интерфейсе Директа отображается стоимость позиций и даже действующая стоимость клика. Но в справке Директа написано, что эти циферки верны, только когда запрос пользователя точно совпадает с ключевым словом, в самом дорогом регионе и в самое дорогое время. Что на практике значит: почти никогда.
Может показаться, что если взять пару тысяч ключевых слов, то в силу закона больших чисел, по цифрам можно построить довольно точный прогноз. Но это снова неверно, поскольку цифры в Директе обладают систематической погрешностью. Они не отражают среднюю стоимость клика в показах.
Мы в К50 пробовали составить прогноз по циферкам. Точность прогноза была не очень, хотя мы пробовали множество вариантов. Например, комбинацию циферок с данными прогноза Директа. Также мы пытались построить распределение на этих циферках. Но ни один метод не дал хороших результатов.
Все это показывает, что без данных статистики невозможно построить точный прогноз в Директе.
Пропорциональная модель
Практика и статистическое моделирование показывают, что CPC=K*Bid довольно точно описывает действительность. Т.е. если мы увеличим вдвое ставку, то вдвое возрастет средняя стоимость клика. Мы вместо CPC=K*Bid будем использовать следующую запись CPC ~ Bid. CPC пропорционально числу кликов.
Мы будем считать, что число кликов пропорционально корню из ставки.
Практика показывает, что точность этой модели довольно высока, особенно при относительно небольших изменениях ставки (+-30%).
Показатель конверсии и средний чек мы считаем независящими от ставки.
Основываясь на этих допущениях, мы можем вычислить практически любую зависимость в контекстной рекламе:
Число конверсий:
Расход в контекстной рекламе:
Выручка:
Суммарная ценность конверсий (прибыль без постоянных расходов и расходов на рекламу):
ROI или ROMI:
Доля рекламных расходов:
Вписка в условия
Мы можем вывести обратные формулы:
Из этого можно легко посчитать, во сколько раз нужно изменить ставки, чтобы получить желаемый результат. Индексом 1 мы обозначим текущие показатели. Индексом 2 мы обозначим необходимые показатели.
- Если вам нужно сократить CPC, CPA или ДРР вдвое, то нужно сократить ставки вдвое.
- Если нужно сократить бюджет вдвое, то нужно сократить ставки в 2^0.667=1.59 раза.
- Если нужно сократить ROI с 3 до 2, то нужно увеличить ставки в (3+1)/(2+1)=4/3= 1.33 раза.
Расчет оптимальных условий
Допустим наша цель – максимум конверсий при условии(X) равной средней стоимости конверсий. Конечная цель рекламодателя – прибыль.
Перейти от прибыли к числу конверсий можно, сделав допущении о том, что ценность всех конверсий одинаковая. Допустим, она равна K. Пусть число конверсий при CPA=1 равно L, тогда:
Наша цель – найти такой X, чтобы Profit было максимальным. Чтобы не утомлять вас расчетами, приведу сразу результат:
X=K/3.
- Оптимальный средний CPA в районе ⅓ от ценности конверсии.
- Оптимальный средний CPC в районе ⅓ от ценности клика. Не стоит путать средний CPС со ставкой.
- Оптимальный в районе ROI = (3-1)/1 = 2
Однако расчет оптимальных условий более требователен к точности модели, чем другие применения. Эти цифры можно использовать в качестве первого приближения.
Оценка результатов оптимизации
Пусть X – это условие, а Y – это цель. Например, если наша задача – максимум конверсий при ограниченном CPA, то X – это CPA, а Y – число конверсий.
Пусть F(X) – это зависимость между X и Y. Если мы повысим или понизим все ставки в определенное число раз, то мы окажемся на одной из точек, описываемой этой функцией. Эта функция отражает текущее состояние кампании, если мы оптимизируем кампанию, то мы перейдем на другую кривую.
Пусть F0(X) – состояние до оптимизации, а F1(X) – после. При использовании пропорциональной модели F1(X)=U * F0(X), где U – некоторая константа, далее – коэффициент Уварова. Коэффициент Уварова выражает во сколько раз стало лучше после оптимизации. Во сколько раз возрастет Y при одинаковых X.
Более того, коэффициент Уварова выражает, во сколько раз возросла прибыль после оптимизации, в случае, если до и после оптимизации X будут равны, при тех же допущениях, которые нам позволили с прибыли перейти к цели Y.
Более общий вид. Если конечная цель клиента Z, то используя те же допущения, которые позволили перейти с цели Z на цель Y, можно доказать, что ожидаемый рост Z при любом фиксированном X будет равен U раз.
Грубо говоря, коэффициент Уварова отражает рост прибыли с такой же точностью, с которой выбрана промежуточная цель Y.
Доказательство:
- Общий случай. Пусть {Z=>Y|X=const} допущения, которые нам позволили перейти от конечной цели Z к промежуточной Y.
- X=CPA, Y=число конверсий и Z=Прибыль. Такая цель предполагает следующее допущение: средний чек и маржа одинаковая во всех конверсиях. В противном случае цель поставлена некорректно – она не отражает прибыль.
При фиксированном CPA, среднем чеке и марже, ROI тоже будет постоянным. Поэтому Profit Expense.
Expense~ CPA * Conversions ~ Conversions => Profit Conversions
- X=любой, Y=оборот и Z=Прибыль. Такая цель предполагает следующее допущение: процент маржи одинаковый для разных товаров. В противном случае цель поставлена некорректно – она не отражает прибыль.
В силу допущения:
Расчет коэффициента Уварова
Например, было 1000 конверсий по 10$, стало 1500 по 11$. U=(1500/1000) * SQRT(10/11)= 1.5 * 0.95 = 1.43
Другой пример: до оптимизации был оборот 100К при ROI = 3, стал 150К при ROI = 2.5. U=(150/100) * SQRT((2.5+1)/(3+1))= 1.5 * 0.94 = 1.40
Сезонность
Вот формула, учитывающая сезонность:
- U с индексом biased – это число, полученное по формуле в прошлой главе.
- U без индекса – итоговый коэффициент с поправкой на сезонность,
- Shows0 – число показов по вордстат одного из ваших ключевых слов в контрольном месяце (до оптимизации),
- Shows1 – число показов по вордстат одного из ваших ключевых слов в расчетном месяце (после оптимизации).
Нужно пробить самое частотное ключевое слово в WordStat и перейти на вкладку “история запросов”. И взять данные по месяцам. Если данных по текущим месяцам еще нет, то можно взять данные по аналогичным месяцам прошлого года.
Погрешность
При небольших изменениях X (+-30%) данная модель довольно точно отражает действительность.
При больших изменениях на поиске следует использовать другие модели, основанные на теории вероятности и доле показов в спецразмещении. Вручную их посчитать крайне сложно, поэтому мы разработали онлайн-калькулятор.