Разбор
Яндекс.Метрика в Telegram: ИИ-агент который объясняет цифры, а не просто показывает
Трафик упал на 23% — агент напишет почему и что делать. Кейс как собрать еженедельный отчёт из Яндекс.Метрика API через Python + Claude API с доставкой в Telegram каждый понедельник в 9:00.
В понедельник утром маркетолог открывает Метрику. Видит: 1 847 визитов за неделю. Что это — хорошо или плохо? На 12% больше, чем прошлая неделя, или меньше? Откуда трафик упал? Почему конверсия просела? Он смотрит на цифры пять минут, закрывает вкладку и идёт пить кофе. Потому что число без контекста — это просто число.
Именно поэтому существуют BI-дашборды. Именно поэтому нанимают аналитиков. Именно поэтому в каждой второй компании отчётность существует ради отчётности: файл есть, выводов нет.
Я сделал другое. Агент, который каждый понедельник в 9:00 сам забирает данные из Метрики, прогоняет их через Claude и присылает в Telegram не таблицу — а текст. «Органический трафик упал на 23% по сравнению с прошлой неделей — вероятная причина: изменение выдачи Яндекса в четверг-пятницу, пострадали коммерческие запросы. Рекомендую проверить позиции по топ-10 запросам». Вот это уже можно читать за завтраком.
Что не так с обычными отчётами
Обычный еженедельный отчёт из Метрики выглядит примерно так:
Разница — в одном слове: почему. Цифры говорят «что». Агент объясняет «почему» и добавляет «что делать».
Как работает схема
Четыре компонента, ничего сложного.
Cron запускает Python-скрипт раз в неделю. Скрипт обращается к Яндекс.Метрика API и забирает данные за последние 2 недели — текущую и предыдущую, чтобы Claude мог сравнивать. Подготовленные данные уходят в Claude с системным промптом про сайт. Готовый анализ отправляется в Telegram через бота.
Весь цикл занимает 15–30 секунд.
Какие метрики включать и почему
Не все цифры из Метрики одинаково полезны для еженедельного среза.
| Метрика | Что показывает | Зачем в отчёт | Приоритет |
|---|---|---|---|
| Визиты (sessions) | Общий объём трафика | Базовый пульс сайта. Резкий скачок или падение — первый сигнал | обязательно |
| Органика (organic) | Трафик из поиска Яндекс/Google | Падение органики — SEO-проблема или изменение алгоритма | обязательно |
| Прямые заходы (direct) | Люди, которые знают адрес сайта | Падение — снизилась лояльность аудитории | обязательно |
| Отказы (bounce_rate) | % тех, кто ушёл с первой страницы | Рост отказов → проблема с контентом или скоростью | обязательно |
| Конверсии (goals) | Выполненные целевые действия | Главный бизнес-показатель недели | обязательно |
| Топ-5 страниц | Страницы с наибольшим трафиком | Неожиданный рост = возможность, неожиданное падение = проблема | обязательно |
| Реклама (ad) | Трафик из Яндекс.Директ и других сетей | Нужно для баланса с органикой — чтобы не путать рост | по ситуации |
| Глубина просмотра | Среднее число страниц за сессию | Падение — люди не находят нужное или контент стал хуже | по ситуации |
| Мобайл vs Desktop | Разбивка по устройствам | Рост отказов только на мобильных = технический баг | если есть проблемы |
Всё это запрашивается одним блоком из API — один токен аутентификации, один счётчик.
Код: как это выглядит на практике
Вот рабочий скрипт. Он не идеальный — это производственная версия, которую можно взять и запустить. Все токены читаются из переменных окружения.
Запуск через cron — строчка в crontab:
0 9 * * 1 cd /opt/metrika-bot && python metrika_report.py
Каждый понедельник в 9:00 скрипт стартует, собирает данные, генерирует отчёт, отправляет в Telegram. Всё.
Промпт: как научить Claude понимать именно ваш сайт
Системный промпт — это то, где большинство теряет качество. Если написать «ты аналитик, анализируй данные», Claude даст ответ в стиле консультанта McKinsey: точный, но абстрактный. Без контекста он не знает, что для вашего сайта нормальный отказ — 55%, потому что у вас блог с длинными статьями.
Заполните этот шаблон под свой сайт — и качество анализа вырастет в два раза. Промпт нужно обновлять раз в квартал: меняются нормы, запускается новая реклама, меняется аудитория.
Есть вопрос по теме?
Пришлю чеклист аудита рекламных кампаний и разберу ваш кейс
Пример реального вывода агента
Вот как выглядит отчёт в Telegram — на реальных данных с тестового счётчика:
Обратите внимание: агент не просто зафиксировал рост отказов — он локализовал проблему до конкретной страницы и устройства. Это то, что аналитик делал бы 20 минут, а Claude — 3 секунды.
Насколько полезны твои текущие отчёты
Диагностика маркетинговой аналитики
5 вопросов — честный диагноз вашей текущей системе отчётов
Получить токены: пошаговый порядок
Три сервиса — три токена. Разберём по порядку.
Яндекс.Метрика OAuth-токен. Зайдите на oauth.yandex.ru, создайте приложение с правами на Метрику (metrika:read). Получите CLIENT_ID, потом обменяйте его на OAuth-токен через браузерный флоу. Токен живёт 1 год, потом надо обновлять.
Anthropic API key. console.anthropic.com → API Keys → Create Key. Положите на счёт $5–10 для начала. При нашем объёме ($0.01–0.03 за отчёт) этого хватит на несколько лет.
Telegram Bot. Напишите @BotFather команду /newbot, получите токен. Потом напишите боту что-нибудь и через https://api.telegram.org/bot{TOKEN}/getUpdates найдите свой chat_id.
Все три переменные пишутся в .env файл или в crontab-окружение — в код не попадают.
Что добавить, если схема заработала
Базовый скрипт можно расширить четырьмя способами — по одному, не все сразу.
Первое — алерты вне расписания. Если трафик за сутки падает больше чем на 30% относительно прошлых 7 дней — присылать уведомление прямо в момент. Это дают данные из Метрики с date1=today плюс cron каждые 6 часов.
Второе — сравнение с прошлым годом. К двум неделям добавить третий блок: аналогичная неделя год назад. Claude начнёт видеть сезонность и не будет паниковать из-за «традиционного январского спада».
Третье — несколько счётчиков в одном отчёте. Для агентств: передаём список counter_id, Claude получает сводку по всем клиентам в одном сообщении. Удобно когда ведёшь 5–10 проектов.
Четвёртое — история отчётов. Сохранять каждый отчёт в базу данных. Раз в месяц просить Claude сравнить последние 4 недельных отчёта и написать месячный дайджест тенденций.
Один раз настраивается — дальше работает само. В понедельник утром, пока вы пьёте кофе, агент уже забрал данные, понял что изменилось за неделю и написал вам три конкретных действия. Это лучше, чем ещё один дашборд с красивыми графиками, которые никто не читает.
Есть вопрос по теме?
Пришлю чеклист аудита рекламных кампаний и разберу ваш кейс
Похожие кейсы
Источники
AI-агенты · Персональная карта
4 часа потратил — не работает?
Покажу где ты пошёл не туда и как сделать правильно за 2 недели
Получить разбор бесплатно →AI-агенты · 10 мест
Ты работаешь до полуночи — AI-агент будет работать вместо тебя
Покажу какой агент закроет твою главную операционную боль
Узнать свой маршрут →Есть вопрос по теме?
Пришлю чеклист аудита рекламных кампаний и разберу ваш кейс
Источники
Читайте также
Часто задаваемые вопросы
- Как автоматически получать отчёт из Яндекс.Метрики в Telegram?
- Нужен Python-скрипт, который раз в неделю запрашивает данные через Яндекс.Метрика API v1, передаёт их в Claude API для анализа и отправляет готовый текст через Telegram Bot API. Запуск автоматизируется через cron — например, каждый понедельник в 9:00. Время на настройку с нуля — около 3–4 часов, включая получение всех токенов.
- Какие метрики включать в еженедельный отчёт из Метрики?
- Минимальный набор: сессии (общий трафик), визиты из органики, прямые заходы, переходы из рекламы, показатель отказов, глубина просмотра, целевые конверсии. Дополнительно — топ-5 страниц по трафику и источники с наибольшим ростом или падением. Claude сам выделит аномалии, если дать ему данные за 2 недели для сравнения.
- Сколько стоит использование Claude API для еженедельных отчётов?
- При объёме данных на одну неделю (примерно 2000–3000 токенов запроса + 1000 токенов ответа) с claude-sonnet-4-6 это около $0.01–0.03 за один отчёт. То есть 52 отчёта в год обойдутся примерно в $1–1.5. Это меньше, чем один кофе в месяц.
- Можно ли подключить несколько счётчиков Метрики к одному боту?
- Да. В скрипте нужно передавать список counter_id и делать запросы к API по каждому. Claude получает данные по всем счётчикам разом и может сравнивать их в одном отчёте. Удобно для агентств, которые ведут несколько клиентов.
- Как научить Claude правильно интерпретировать данные Метрики?
- Через системный промпт: указать сайт и его тематику, нормальные диапазоны метрик, сезонность, текущие рекламные активности. Чем больше контекста — тем точнее интерпретация. Например: 'Падение трафика в пятницу вечером — норма, не считай аномалией'. Промпт нужно обновлять раз в квартал.
- Что делать если Яндекс.Метрика API возвращает ошибку?
- Самые частые причины: истёк токен OAuth (нужно обновлять раз в год), счётчик не добавлен в права приложения, превышен лимит запросов (200 в день на токен). В скрипте нужно обрабатывать ошибки и присылать в Telegram уведомление с кодом ошибки, а не просто молчать.
Канал «Лёха Маркетолог»
Практика без воды: кейсы, инсайты, разборы. 1–2 поста в неделю.
Пока без комментариев. Будьте первым.