Как собирать расходы из Яндекс.Директ для крупных рекламодателей

В статье расскажу и покажу как быстро собирать расходы в Яндекс. Директ через API в Google Sheets. Удобно и главное быстро, нужно знать только технологию.

Итак, я работаю в крупной федеральной компании с 120 филиалами по всей России — руководителем отдела лидогенерации. Когда я пришел в компанию, было 25 филиалов. А сейчас у нас более 1000 кампаний на 1 аккаунте.

Технология лидогенерации такая, что на каждый город свои рекламные кампании со своим бюджетом и если у города в текущем месяце есть финансовые ограничения (бывает такое) то нужно было убавить бюджет так, чтобы другие города не пострадали. При этом, система была удобна для подсчета расхода в каждом городе путем ручного сбора расходов просто отфильтровав в Яндекс. Директ кампании по городам.

Шли месяцы, городов становилось больше и отчет о расходах собирался все дольше и дольше. Городов ведь прибавлялось каждый месяц.

В итоге были вынуждены искать новые способы сбора расходов из Яндекс. Директ и других источников лидогенерации. В один прекрасный день я наткнулся на статью от ADF Media, где пошагово говорилось, как собирать расходы из Яндекс. Директ через API. Ваш подход очень помог и мы адаптировали его под себя.

В статье все хорошо описано и показано как собирать таблицу. Не буду повторяться, ведь цель этой статьи в другом.

Сначала должен быть стандарт

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

У нас например стандарт такой, что название кампании должно содержать:

  1. [Название города]
  2. [Сокращенное название услуги]
  3. [Поиск или РСЯ]
  4. [Внутренний тип кампании основанный на данных]

Каждая кампания называется именно так и никак иначе. Если назовем по другому, смысл сразу теряется и не понятно что внутри кампании.

Приведу пример из но не из нашей сферы:

Москва | КП | Поиск | ТОП15

Город: Москва
Название услуги: Керамическая Плитка
Поиск: Поисковая кампания
ТОП15: ТОП15 ключей которые приносят договора

Формулы для Google Sheets

Использовали множество формул для сбора, но остановились в итоге на таких.

Формула для вытягивания города из названии кампании:

=ARRAY_CONSTRAIN(ARRAYFORMULA(ЕСЛИОШИБКА(REGEXEXTRACT(D2:D;"(.*) \| КП");));СЧЁТЗ(D2:D);1)

Формула для сбора вытянутых названий городов и просуммировать расходы каждого города:

=QUERY(Данные;" select J, SUM(I) where not J contains 'Область' and not J contains 'область' and not J contains 'Край' and not J contains 'край' and not J contains 'Республика' and not J contains 'республика' and not D contains 'автономный округ' and not D contains 'Малые города' group by J label SUM(I) 'Расход' ")

Используется формула QUERY, которая помогает из большого массива данных соединять все в одну небольшую таблицу.

Конкретно в этой формуле:

  1. Собран диапазон данных в именованный диапазон под названием «Данные».
  2. Собери все данные из столбца J и просуммируй числа у одинаковых значений столбца I.
  3. Кроме кампаний, где в названии упоминается: область, край, республика, автономный округ и малые города.
  4. Все сгруппируем по совпадениям в названии города
  5. Назовем этот столбец — Расход

Формул на самом деле таких много, так как у нас специфические названия кампаний и нужно из каждой кампании вытянуть свои данные и на основе этих данных сгруппировать как нам надо, но я показал 2 основные формулы. После всех обработок строк, получается примерно такая таблица:

Города с распределенным расходом
Города с распределенным расходом

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

Начать дискуссию