Как мы автоматизировали свой Директ и в итоге сделали собственный биддер

Приветствую! Наше агентство из Санкт-Петербурга уже четыре года занимается настройкой и ведением контекстной рекламы. Не только ей, конечно, но так уж вышло, что основной бизнес - контекст, более того - Яндекс.Директ.

Работа требует внимания, выполнения большого объема рутинных задач и постоянных войн с клиентами, которые представляют рекламное агентство чем-то вроде представительства Сатаны, которому ты передаешь свою душу (кампании) за власть над всем миром.

С последним, черт возьми, выходит не всегда. Особенно в желаемые клиентами сроки. Ну, нельзя, просто нельзя, взять и за неделю настроить рекламные кампании так, чтобы захватить весь рынок пластиковых окон с бюджетом на рекламу в 50 тысяч рублей!

В общем, воюем, боремся, настраиваем. Все как у всех. Есть хорошие клиенты, которые с нами много лет. Есть те, кто хлопнули дверью, ушли к конкурентам, а затем вернулись. А есть и те, кому мы не понравились. Каждому своё.

Находим себе проблему на пятую точку

Все шло хорошо, пока однажды наш продакт не спросил на одном из совещаний: “Как Вы, собственно, докажете клиенту, что вообще что-то делаете по его кампаниям?” И мы не знали, что ответить. Если кампании настроены, выверены, семантика (ключи) собраны и отминусованы, посадочные страницы оттестированы на все возможные шрифты и цвета негласного флага Европы, то особо показывать-то и нечего. KPI выполняем, работа идет.

Но клиенту этого мало! Ему нужно, чтобы постоянно мы как гномики на рудниках что-то делали и долбали киркой по личному кабинету в Директе. Иначе мы плохое агентство, ленивое. Можно без нас. Можно забрать все созданные нами кампании и работать с ними самому, а потом искать других, когда испортится то, что есть.

Проблема, на первый взгляд, плевая. Очевидное решение: давайте почаще цены менять. Дело полезное. Во-первых, заставляет подробно все проанализировать и собрать статистику. Во-вторых, кое-где можно “повоевать” с конкурентами.

Вообще, изначальная идея была проста: выставить стоимость клика в случайном диапазоне +- от честной ставки, а потом регулярно все это дело обновлять. То есть, чтобы колебания были незначительными, ни на что не влияющими, но рекламодатель был бы доволен - работа идет!.

Честная ставка - это просчитанная математически цена клика, которую готов заплатить рекламодатель, чтобы выполнить KPI. Зависит от конверсии

Однако мы легких путей не ищем, потому что, видимо, можем себе это позволить. Бесполезную работу выполнять никто не хочет, тем более регулярно. Есть жгучее желание приносить пользу миру и обществу.

Ставки захотелось менять так, чтобы сэкономить бюджет, “опустить” на деньги конкурентов, получить 100% охват. Все это возможно благодаря забавной системе аукциона в Яндексе.

Эта технология позволяет выставить одну ставку за клик, но зачастую списывает не её полное значение, а то, что получается по ходу аукциона. То есть, зачастую Вы можете не бояться подобно Остапу Бендеру указать огромное четырехзначное число за клик при допустимом значении в 20 руб., потому что Яндекс эти 20 руб. и спишет, но за такое “рвение” и готовность потратиться вознаградит высокими позициями и большим объемом трафика.

В то же время, если появится конкурент, который поставит что-то тоже большое, но чуть ниже Вашего - это будет “подпоркой”, то есть, Яндекс заставит уже платить по-полной (на самом деле механика чуть сложнее, но при первом приближении она именно такая).

Получается, надо успевать реагировать, отслеживать конкурентов и вовремя “завышенные” ставки убирать. Тогда Вы и бюджет не сольете, и трафик получите в огромных количествах и жизнь наладится.

На самом деле все окажется гораздо сложнее. Потому что у большинства рекламные кампании настраиваются ровно до момента достижения KPI. То, что какие-то ключи трафик не получают может оказаться и хорошо, потому что по ним конверсий как раз нет. Поэтому при реализации подобной стратегии приходится сразу же проводить подробную сквозную аналитику по конверсиям каждого ключа. Ведь будет выкупаться трафик по всей семантике. Кто, скажите честно, готов к этому? )

Вручную все это делать не выйдет. Ставки в Яндексе обновляются постоянно, конкуренты не дремлют, интерфейс тормозит. Надо использовать автоматизацию. Что же, наверняка есть много компаний, которые предоставляют нужный функционал!

Выборы без выбора

Та штука, которая отслеживает ставки и выставляет нужные по заданному алгоритму, называется биддером. Бид - ставка. Биддер, значит, эти ставки проставляет. В этих ваших интернетах есть множество предложений, и мы с радостью взялись их тестировать. Каково же было наше разочарование, когда мы так и не нашли ничего нужного.

Все что есть можно разделить на несколько больших групп:

  • Биддеры, которые работают по устаревшим алгоритмам. Раньше, аукцион Яндекса был построен немного иначе. Основные битвы разворачивались не вокруг показателей “охвата”, а вокруг позиций - гарантия, места в спеце. Яндекс изменил алгоритмы, убрал все это из интерфейса, но на уровне своего API оставил в урезанном виде. То есть, Яндекс как бы данные отдает, но на самом деле проставлять ставки исходя из них невозможно.Часть маркетологов-мастодонтов не смирилось с изменениями алгоритмов Яндекса и упорно пытаются работать по этим самым алгоритмам. В результате ставки выставляются практически рандомом, но создатели таких биддеров уверяют, что это все не так, и они нашли способ вернуть ваш 2007.В общем, смысла в этих системах нет. Но они будут жить, пока жива память о старом аукционе яндекса и есть его ученики.
  • Супер-системы, которые позволяют делать все. Можно вручную записать любую формулу. Стоимость клика можно привязать хоть к прогнозу погоды, хоть к результатам матча спартак-зенит. Но…. они, к сожалению, не любят обновлять ставки оперативно.Есть подозрение, что программистам этих компаний просто лень разбираться с лимитами API Яндекс.Директа и они уверили руководство, что обновление ставок раз в час - это то, что нужно. На самом деле за этот час можно слить весь бюджет вообще. Так что, увы, не наш вариант.
  • Самопальные системы с интерфейсом из 90-х и пакетом для медитации в подарок. Да, даже самые классные и раскрученные системы порой становятся жертвой непродуманного юзабилити и медленного интерфейса.Вероятно, причина этому одна - программисты писавшие все это о том что такое биг дата и высоконагруженные проекты слыхом не слыхивали. Как оптимизировать запросы к базе данных и что такое кэш - не слышали. В общем, работать с этим можно, но оооочееень-оооочееень медленно. Для эстонцев.
  • Хорошие, но дорогие решения. Такое тоже на рынке имеется. Но, мы все это задумывали чтобы увеличить отдачу для клиента, а не лишить себя всего нашего дохода. Думается, финансовый директор тут же отправил бы на заслуженный отдых всю нашу команду, если бы мы предложили ему ради обновления ставок заплатить 5 окладов полноценных маркетологов без гарантий увеличения оборотов от клиентов. А такие гарантии мы дать не могли, не морг же.

В общем, пришлось остановиться на третьем варианте и медитировать. В офисе воцарилась атмосфера сна. Мы даже свет перестали включать. А зачем?

Свой продукт

Хотя спать на работе - это круто, руководство это не оценило. В итоге, мы решили создавать свой биддер. Современный, быстрый, по “кошерным” алгоритмам. Который бы делал все что нам нужно, не раздувал бюджет и оказался полезным.

Несколько правил, которым мы следовали:

  • Обновление ставок раз в 15 минут и не реже
  • Интерфейс без тормозов. Ну, вообще без них
  • Простота и доступность
  • Нулевая цена для нас и наших клиентов
  • Гибкая система аналитики.

В общем, кое-что у нас получилось. Вы можете загуглить наш биддер - everystraus и даже воспользоваться им. Он сейчас в бете. К сожалению, в угоду этих принципов пришлось немного урезать наши аппетиты.

Например, хранить всю статистику на наших серверах оказалось слишком тяжло. Во всяком случае без нарушения правила 4. Ну, это дело поправимое! Статистика сохраняется в Яндексе, и мы когда-нибудь ее заберем.

Сейчас же мы перевели всех клиентов на наше решение и очень рады. Надеемся, что то как мы решили нашу проблему окажется полезным не только нам, но и всем коллегам с аналогичной болью.

33
4 комментария

на самом деле механика чуть сложнее, но при первом приближении она именно такая

Это называется аукцион второй цены.

Так все же, пошли в RTB или двигаются ручки в директе?

Ответить

*Обновление ставок раз в 15 минут и не реже* - а разве сам Яндекс не пишет про активизацию цены в течении 30 минут?

Т.е. я хочу сказать, не случится ли такого, что вы выставили ставки, Яндекс в течении получаса их обновляет, вы через 15 после первой команды на изменение цен отдаёте вторую - а Яндекс ещё и первую не успел применить? 

И так далее.

Ответить

Яндекс последовательно выполняет команды от всех пользователей. Т.е., то что была команда "перед" не повлияет на время выполнения команды "после" (ну, если мы не перегрузим всю систему своими командами, но для этого у яндекса есть ограничение по баллам API), а задача биддера - оперативная реакция на изменение ситуации

Ответить

Спасибо, чекну сегодня) 

Ответить