Своя аналитика на Python и ClickHouse
Интерфейс Метрики — это окно в большую таблицу. Если научиться работать с самой таблицей, понимание атрибуции и пути пользователя расширяется в разы. Сейчас для этого не обязательно быть инженером данных — многое помогают сделать нейросети.
Специалисту полезно быть T-shaped: глубоко в одном (SEO) и широко в соседнем (аналитика, реклама, контент). Схема: Logs API Метрики → ежедневная инкрементальная выгрузка за вчера (у рекламных данных — с запасом, их пересчитывают) → ClickHouse с таблицей, которая сама убирает дубли → SQL и дашборды (например, сравнение год к году). Для совпадения с интерфейсом считайте пользователей по склеенному идентификатору Метрики. Учить: pandas, SQL, git, основы Linux. При десятках лидов в год — не сложная аналитика, а ручное расследование пути каждого клиента.
Слои аналитики
| Слой | Что входит |
|---|---|
| Веб-аналитика | Метрика, цели, атрибуция |
| Инженерия данных | Выгрузка, хранение, расписание |
| Анализ | Очистка, SQL, статистика |
| Визуализация | Дашборды, отчёты |
Конвейер
- Скрипт выгружает визиты из Logs API за вчера.
- Оркестратор запускает его каждый день.
- Данные грузятся пачками (большие объёмы — частями, чтобы не рвалось соединение).
- Сырой слой → слой с датой вставки и хешем визита → витрины.
- SQL-запросы и дашборды поверх витрин.
Подводные камни
- Данные рекламных систем пересчитываются задним числом — забирайте с запасом.
- Пользователей в интерфейсе Метрика считает по склеенному идентификатору — используйте его, иначе цифры не сойдутся.
- Одинаковые цвета разных показателей на графиках путают — договоритесь о стиле.
С чего начать
- Python и pandas — по курсам и книгам.
- Git и командная строка.
- Нейросеть как помощник при развёртывании: она проведёт по шагам, но иногда зацикливается — разбивайте задачу.
Ниже 10 готовых витрин по этому конвейеру: вопрос бизнеса → что взять из Logs API → какой SQL-срез и дашборд построить.
Выберите вопрос, который интерфейс Метрики не закрывает, и соберите под него одну витрину поверх сырых визитов. Пользователей считайте по склеенному идентификатору, рекламные данные перезабирайте с запасом.
- 1Интернет-магазинвладелец и маркетологВопрос: сколько визитов до первой покупки по каналам. Поля: склеенный ID, источник, дата, цель «Заказ». Витрина: путь клиента до заказа. Дашборд: среднее число касаний по первому источнику.Почему работает. Интерфейс показывает последний клик, а витрина — весь путь. Видно, какие каналы запускают покупку, а не только закрывают её.
- 2SEO-проект с сезонностьюSEO-специалистВопрос: растёт ли органика с учётом сезона. Поля: источник, посадочная, дата. Витрина: визиты по месяцам с органики. Дашборд: год к году по группам страниц.Почему работает. Сравнение с тем же месяцем прошлого года отделяет рост от сезонных колебаний без семплирования.
- 3Услуги с длинной сделкойруководитель отдела продажВопрос: какие лиды доходят до оплаты. Поля: ClientID из формы, источник, визиты до заявки. Витрина: заявки + статусы из CRM по ClientID. Дашборд: оплаты по рекламным кампаниям.Почему работает. Цена заявки обманывает, если половина лидов — мусор. Связка с CRM показывает цену оплаты по каналу.
- 4Медиа и блогредактор и SEOВопрос: какие статьи приводят подписчиков. Поля: посадочная, глубина, цель «Подписка». Витрина: статьи × подписки за 90 дней. Дашборд: топ-20 статей по подпискам на 1000 визитов.Почему работает. Трафик и польза расходятся. Метрика на 1000 визитов показывает, какие темы стоит развивать.
- 5Контекстная реклама агентствадиректологВопрос: где тратится бюджет без заявок. Поля: UTM, ключевая фраза, цели. Витрина: фразы с визитами и без целей за 30 дней. Дашборд: список фраз на минусацию.Почему работает. Сырые визиты дают срез по фразам без лимитов отчётов — минус-слова собираются из данных, а не на глаз.
- 6Локальный сервис с филиаламивладелец сетиВопрос: какой филиал недополучает заявки. Поля: город, страница филиала, цель «Звонок». Витрина: заявки по филиалам по неделям. Дашборд: отклонение от среднего за 4 недели.Почему работает. Падение одного филиала тонет в общей сумме. Отклонение по неделям ловит проблему за 1–2 недели, а не за квартал.
- 7Онлайн-школапродюсер курсаВопрос: через сколько дней после вебинара покупают. Поля: склеенный ID, цель «Регистрация», цель «Оплата». Витрина: дни между регистрацией и оплатой. Дашборд: распределение по дням и каналам.Почему работает. Зная окно покупки, вы ставите дожимы в нужные дни и правильно выбираете окно атрибуции.
- 8Проект с десятками лидов в годсобственник B2B-компанииВопрос: откуда пришёл каждый клиент. Поля: все визиты по склеенному ID клиента. Витрина: хронология визитов каждого лида. Дашборд: карточка лида с полным путём для ручного разбора.Почему работает. Статистика на единицах не работает. Ручное расследование пути каждого клиента даёт больше, чем средние цифры.
- 9Маркетплейс-продавец со своим сайтомe-commerce менеджерВопрос: какие товары смотрят, но не покупают. Поля: просмотры карточек, корзина, заказ. Витрина: воронка по товарам за 30 дней. Дашборд: товары с высоким просмотром и низкой конверсией.Почему работает. Такие товары — кандидаты на правку цены, фото или описания. Это быстрые деньги без роста трафика.
- 10Сайт после редизайнамаркетолог и разработчикВопрос: что изменилось после релиза. Поля: устройство, браузер, посадочная, отказы, цели. Витрина: метрики за 4 недели до и после. Дашборд: сравнение по устройствам и шаблонам страниц.Почему работает. Средняя конверсия может не измениться, а мобильная — просесть. Срез по устройствам находит поломку сразу.
Частые вопросы
Как строить аналитику, если лидов десятки в год?
Максимально отслеживать путь пользователя, связать с CRM и расследовать каждого клиента вручную — статистика на таких объёмах не работает.
Можно ли сделать базу знаний на своих данных?
Да: загрузить материалы в проект нейросети и использовать как быстрые экспертные ответы.
Интерфейс отвечает на вопросы, которые придумал разработчик. Свои данные — на ваши.