Отчёт рекламного агентства: все кабинеты клиентов в одном контуре
Задача
У рекламного агентства — десятки клиентов, и у каждого свои рекламные кабинеты в Яндекс Директе и Google Ads. Чтобы агентство видело общую картину по всем клиентам, данные нужно собрать из всех кабинетов сразу. Но каждый кабинет Директа требует собственный токен доступа, аккаунты Google Ads разрознены, а подключение и отключение кабинетов — ручная возня. В итоге данные фрагментированы, а сведение отчёта по агентству съедает дни.
Нужен был единый контур: чтобы кабинеты всех клиентов подключались по простому регламенту, данные выгружались сами и объединялись в одном месте — а агентство смотрело сводный дашборд по всем проектам без ручной сборки.
Что мы построили
Автоматизированный конвейер данных для агентства — от подключения кабинетов клиентов до сводного дашборда. Четыре слоя:
Все аккаунты клиентов заводятся и управляются в Google Sheets — это простая панель, с которой работает агентство. Для Яндекс Директа получаем OAuth-токен на каждый аккаунт и храним его в таблице. Для Google Ads используем управляющий аккаунт (MCC): кабинет клиента централизованно добавляется в управляющий аккаунт или удаляется из него — без отдельной авторизации по каждому. Подключить нового клиента = строка в таблице (Директ) или привязка кабинета к MCC (Google).
Python-скрипты по токенам из таблицы и по управляющему аккаунту обращаются к API Яндекс Директа и Google Ads и выгружают статистику по каждому кабинету. Запуск — автоматически по расписанию: свежие данные подтягиваются сами, без ручного старта и без своих серверов.
Все выгрузки складываются в единое хранилище Google BigQuery, где кастомные SQL-запросы приводят разные кабинеты к общей модели: единые названия площадок, валют и кампаний. Данные размечены по клиентам — видно и один проект, и всё агентство целиком. Сразу считаются производные показатели (CPC, CPA, CR, CTR, ДРР) и сравнения периодов.
Поверх BigQuery — дашборд в Looker Studio: все клиенты агентства в одном окне, с фильтрами по клиенту, датам и площадкам. Состав показателей и дизайн собираются индивидуально под задачи агентства — это уже вопрос оформления. Главная ценность — рабочий конвейер данных под ним.
Яндекс Директ API
Google Ads API
Управляющий аккаунт (MCC)
Google Sheets
Сбор по расписанию
Google BigQuery
SQL
Looker Studio
Как устроен контур
аккаунты + токены Директа
+ / − кабинеты клиентов
→
API Директа и Google Ads · по расписанию
→
единая модель, разметка по клиентам
→
сводный дашборд агентства
Новый клиент = строка в таблице (Директ) или привязка кабинета к 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 — единая модель, разметка по клиентам, производные показатели и сравнения периодов.
- → Сводный дашборд по всем клиентам — состав и дизайн под задачи агентства.
- → Команда занимается рекламой и ростом, а не выгрузками; агентство масштабируется без найма людей «на отчёты».
«Агентство видит все кабинеты всех клиентов в одном месте: новый клиент подключается за минуты, а данные собираются сами — команда занимается рекламой, а не выгрузками.»