Скрипт контроля расходов в Google Ads: как получать уведомления о перерасходе в Telegram
Скрипт Spending control помогает контролировать изменения трат по аккаунту или по набору кампаний. Речь об автоматическом мониторинге расходов, а также об уведомлениях в случае превышения лимита. Согласитесь, удобно и экономит время. Делюсь собственной наработкой для оптимизации работы специалиста по контекстной рекламе.
Зачем использовать скрипт Spending control
При работе с большим количеством кампаний в нескольких аккаунтах специалист все больше нуждается в уведомлениях о критически важных изменениях. Особенно они актуальны в выходные дни, когда аккаунт остается без присмотра.
Процесс грозит превратиться в рутину, съедающую ваше время. Которое вы могли бы потратить на
Контролировать аккаунты можно с помощью Google Ads Script. Но существующие решения скриптов позволяют контролировать лишь расход месячного бюджета. Если вы хотите мониторить траты ежедневно, они недостаточно оперативны. В отличие от моего скрипта Spending control.
Как это работает
Чтобы держать «руку на пульсе» скрипт получает среднедневной расход в аккаунте за прошлую неделю, расход за вчерашний день и сравнивает эти значения.
Можно задать допустимое процентное отклонение расходов в плюс и в минус.
Дальше, если расходы больше или меньше указанных значений, скрипт отправляет вам в телеграм сообщение об изменении расходов.
В каких случаях полезен скрипт
В моей работе скрипт позволил оперативно скорректировать рекламу в таких ситуациях:
- перерасход средств (в два раза больше установленного дневного бюджета) из-за изменений в рекламных кампаниях, сделанных в пятницу;
- массовое отклонение объявлений в аккаунте, из-за чего расходы резко сократились.
Как подключить скрипт контроля расходов по аккаунту
1. Внутри аккаунта Google Ads в «Инструментах и настройках», в разделе «Массовые действия» выбирайте «Скрипты».
2. Нажимайте на плюс «Новый скрипт» — создать новый скрипт.
Важно. Этот скрипт создан под новый интерфейс Google Ads для работы со скриптами, в старом он работать не будет.
3. Вставьте в рабочую область скрипта следующий код:
function main() {
// Укажите нижний и верхний пределы колебания трат. Выход расходов за указанные пределы активирует отправку уведомления в Telegram
var min = 0.7;
// Нижний предел расходов, ниже которого должно отправляться уведомление. Тут 1 - нормальный уровень расходов, 0.7 - расходы меньше нормы на 30%
var max = 1.3;
// Верхний предел расходов, выше которого должно отправляться уведомление. Тут 1 - нормальный уровень расходов, 1.3 - расходы больше нормы на 30%
var lastWeekSpent = AdsApp.currentAccount().getStatsFor('LAST_WEEK_MON_SUN').getCost();
// Расход за последние 7 дней
Logger.log(lastWeekSpent)
var YesterdaySpent = AdsApp.currentAccount().getStatsFor('YESTERDAY').getCost();
// Расход за вчера
var AvSpendsPerDay = lastWeekSpent/7;
// Средний дневной расход за прошлую неделю
var difference = YesterdaySpent/AvSpendsPerDay;
var DifPercentageHi = Math.round((difference-1)*100);
var DifPercentageLo = Math.round((1-difference)*100)
Logger.log(difference)
if (difference > max ) {
sendTelegramMessage('В аккаунте '+ AdsApp.currentAccount().getName() +' расход за вчера больше среднедневного на ' + DifPercentageHi + '%. Необходимо перепроверить кампании');
}
if (difference < min) {
sendTelegramMessage('В аккаунте '+ AdsApp.currentAccount().getName() +' сократились траты на ' + DifPercentageLo + '%. Необходимо перепроверить кампании');
}
}
function sendTelegramMessage(text) {
var CONFIG = {
// Токен надо получить у BotFather, создав нового бота
TOKEN: 'your_token_from_BotFather’,
// Напишите что-нибудь в чат вашему боту, после чего перейдите по ссылке https://api.telegram.org/bot<ТОКЕН>/getUpdates
// в ответном тексте найдите строку ..."chat":{"id":123456789,"first_name"... Нужно значение id.
CHAT_ID: 'your_chat_id'
};
var telegramUrl = 'https://api.telegram.org/bot' + CONFIG.TOKEN + '/sendMessage?chat_id=' + CONFIG.CHAT_ID + '&text=';
var message = encodeURIComponent(text);
var sendMessageUrl = telegramUrl + message;
var options = {
method: 'POST',
contentType: 'application/json'
};
UrlFetchApp.fetch(sendMessageUrl, options);
}
4. При необходимости корректируйте в коде скрипта верхний и нижний пределы трат. По умолчанию скрипт реагирует на колебания более 30% вверх и вниз.
5. В конце скрипта есть отдельная функция sendTelegramMessage. В ней требуется ваше участие. Нужные действия описаны в коде, но еще раз акцентирую внимание.
Во-первых, нужно получить и прописать токен нового бота. Если у вас уже есть бот для работы с Google Ads, можно использовать его.
Если же токена нет:
- найдите в Telegram @Botfather;
- пропишите команду /newbot;
- следуйте инструкции от Botfather и получите токен вашего бота.
Затем напишите новосозданному боту любое сообщение, после чего в строке браузера укажите URL https://api.telegram.org/bot<ТОКЕН>/getUpdates. Где ТОКЕН — токен вашего бота, полученный у Botfather. В загруженном окне увидите ID чата.
ID чата пропишите в коде. Туда бот должен отправлять сообщения. Это может быть как отдельный чат, так и группа.
В моем случае удобнее получать уведомление в группу. Его видят все члены команды, работающие с проектом, и могут оперативно реагировать на критические изменения в аккаунте.
6. Дальше нужно авторизовать скрипт и сохранить его.
7. На странице скриптов настройте частоту запуска скрипта. Рекомендую запускать его раз в день, в первой половине дня.
В итоге работа скрипта ежедневно проверяет расходы и определяет значимые изменения в аккаунте на основании трат, уведомляет об этом специалистов.
Специалисты, начиная свой рабочий день, уже знают, какие аккаунты требуют их внимания. И самое главное, благодаря скрипту аккаунты находятся под ежедневным контролем.
FAQ
Что такое Google Ads Scripts?
Google Ads Scripts — это специальная программа, написанная на языке Google Script (очень похож на JavaScript), которая добавляется в аккаунт Google Ads и выполняет там определенные полезные действия. Скрипты позволяют автоматизировать рутинную работу. Google Ads Scripts расширяет возможности контекстной рекламы. Программа может:
- останавливать и запускать кампании, объявления, ключевые слова;
- чистить аккаунт от неработающих ключевиков, «плохих» площадок в GDN;
- менять ставки;
- отключать аудитории;
- отправлять, сохранять данные и т. д.
Что такое токен бота Telegram?
Токен бота — это «ключ» к управлению ботом, с помощью которого его можно подключать к сторонним сервисам.
Как найти ID чата Telegram?
ID чата — цифровой код, который присваивается каждому чату при его создании. Этой информации нет в самом мессенджере. Получить ее можно с помощью различных ботов.
Свежее
Обзор изменений в GA4: различие между ключевыми событиями (Key events) и конверсиями (Conversions)
Увидели оповещение в GA4 об изменении в конверсиях? Давайте разбираться что именно изменилось и как это повлияет на вашу аналитику
Как добиться роста органического трафика на 195% за полгода в высококонкурентной нише — кейс BAYADERA
Показываем на практике как повысить видимость сайта и небрендовый органический трафик
Кто такой конечный пользователь, и Почему он важен
Он нужен не только для настройки рекламы, но и при разработке продукта или услуги. Разбираемся, кто он такой и как его найти