Кейс BI-дашборды · Отчёт для рекламного агентства

Отчёт рекламного агентства: все кабинеты клиентов в одном контуре

#API#BI#BigQuery#Looker#агентствам#дашборд
Все кабинеты
Директ + Google в одном контуре
0 ч
ручной выгрузки
Google Sheets
панель управления аккаунтами
Авто
сбор по расписанию

Задача

У рекламного агентства — десятки клиентов, и у каждого свои рекламные кабинеты в Яндекс Директе и Google Ads. Чтобы агентство видело общую картину по всем клиентам, данные нужно собрать из всех кабинетов сразу. Но каждый кабинет Директа требует собственный токен доступа, аккаунты Google Ads разрознены, а подключение и отключение кабинетов — ручная возня. В итоге данные фрагментированы, а сведение отчёта по агентству съедает дни.

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

Что мы построили

Автоматизированный конвейер данных для агентства — от подключения кабинетов клиентов до сводного дашборда. Четыре слоя:

01

Подключение кабинетов — панель управления в Google Sheets

Все аккаунты клиентов заводятся и управляются в Google Sheets — это простая панель, с которой работает агентство. Для Яндекс Директа получаем OAuth-токен на каждый аккаунт и храним его в таблице. Для Google Ads используем управляющий аккаунт (MCC): кабинет клиента централизованно добавляется в управляющий аккаунт или удаляется из него — без отдельной авторизации по каждому. Подключить нового клиента = строка в таблице (Директ) или привязка кабинета к MCC (Google).

02

Выгрузка по расписанию — Python + API рекламных систем

Python-скрипты по токенам из таблицы и по управляющему аккаунту обращаются к API Яндекс Директа и Google Ads и выгружают статистику по каждому кабинету. Запуск — автоматически по расписанию: свежие данные подтягиваются сами, без ручного старта и без своих серверов.

03

Объединение данных — Google BigQuery + SQL

Все выгрузки складываются в единое хранилище Google BigQuery, где кастомные SQL-запросы приводят разные кабинеты к общей модели: единые названия площадок, валют и кампаний. Данные размечены по клиентам — видно и один проект, и всё агентство целиком. Сразу считаются производные показатели (CPC, CPA, CR, CTR, ДРР) и сравнения периодов.

04

Сводный дашборд агентства — Looker Studio

Поверх BigQuery — дашборд в Looker Studio: все клиенты агентства в одном окне, с фильтрами по клиенту, датам и площадкам. Состав показателей и дизайн собираются индивидуально под задачи агентства — это уже вопрос оформления. Главная ценность — рабочий конвейер данных под ним.

Python
Яндекс Директ API
Google Ads API
Управляющий аккаунт (MCC)
Google Sheets
Сбор по расписанию
Google BigQuery
SQL
Looker Studio

Как устроен контур

Google Sheets
аккаунты + токены Директа
Google Ads MCC
+ / − кабинеты клиентов

Python-скрипты
API Директа и Google Ads · по расписанию

BigQuery + SQL
единая модель, разметка по клиентам

Looker Studio
сводный дашборд агентства

Новый клиент = строка в таблице (Директ) или привязка кабинета к MCC (Google). Дальше конвейер делает всё сам.

Пример: сводим кабинеты в одну витрину (SQL)

-- Единая витрина расходов по всем кабинетам клиентов агентства
SELECT client, 'Яндекс Директ' AS source, date, campaign,
       cost, clicks, impressions, conversions
FROM   `ads.yandex_direct`
UNION ALL
SELECT client, 'Google Ads', date, campaign,
       cost, clicks, impressions, conversions
FROM   `ads.google_ads`;

-- Производные показатели поверх витрины
SELECT client, source,
       SUM(cost)                                  AS cost,
       SUM(clicks)                                AS clicks,
       SUM(conversions)                           AS leads,
       SAFE_DIVIDE(SUM(cost),  SUM(clicks))       AS cpc,
       SAFE_DIVIDE(SUM(cost),  SUM(conversions))  AS cpa,
       SAFE_DIVIDE(SUM(conversions), SUM(clicks)) AS cr
FROM   ads_unified
GROUP  BY client, source;

Пример дашборда

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

Посмотреть пример дашборда ↗

Что получает агентство

  • Все кабинеты Директа и Google Ads всех клиентов — в одном контуре, без ручной выгрузки и сведения таблиц.
  • Простой регламент подключения: аккаунт Директа — токен в Google Sheets; Google Ads — привязка кабинета к управляющему аккаунту (MCC).
  • Данные собираются сами по расписанию и объединяются в BigQuery — единая модель, разметка по клиентам, производные показатели и сравнения периодов.
  • Сводный дашборд по всем клиентам — состав и дизайн под задачи агентства.
  • Команда занимается рекламой и ростом, а не выгрузками; агентство масштабируется без найма людей «на отчёты».

«Агентство видит все кабинеты всех клиентов в одном месте: новый клиент подключается за минуты, а данные собираются сами — команда занимается рекламой, а не выгрузками.»

— команда SAS Digital
← Все кейсы