Налаштовуємо автоматизовану email розсилку про стан бюджету в рекламному кабінеті Google Ads

Невеликий вступ

Тим, хто веде кілька проєктів одночасно, використовуючи єдиний рекламний МСС кабінет Google Ads, знайома проблема вчасно відстежити залишок бюджету та встигнути його поповнити, щоб не було простою, не злетіли автоматично налаштовані стратегії, не стопнулись випадково на вихідних рекламні оголошення (а так само і конверсії з них). Загалом це таке рутинне завдання, яке доводиться постійно тримати на контролі. Але проєкти різні, десь оплачують карткою і гроші відразу потрапляють на рахунок, десь переказом за кілька днів, десь раз на місяць великою сумою, тож і тут потрібно всі ці моменти враховувати.

У спеціалізованих чатах гуляє непоганий скрипт, який дає змогу надсилати повідомлення в бот телеграма, але він із часом починає давати неточні відомості – підозра від колег, що там або якось ПДВ невірно рахують, або недійсні кліки, але факт залишається фактом, на старті він працюватиме чудово, але що далі, то більшою в нього буде похибка, і за кілька місяців ви отримуватимете повідомлення про нульовий баланс за цілком собі повного рахунку. Ну і незрозуміло де шукати причину, оскільки ми не бачимо, що “під капотом”, на якому саме кроці не збігається цифра з бота з тією, що в рекламному кабінеті. Ще один мінус цього методу – всі повідомлення падають в 1 бот, а звідти фахівець уже має звернути увагу і відписатися клієнту з проханням поповнити залишок. Не знаю кого як, а мене трохи напружує щоразу просити клієнта поповнити кабінет, начебто я для себе прошу і виправдовуюся при цьому – іМХО зручніше налаштувати сповіщення відразу на пошту клієнта і забути про цю справу.

Тому, завдання.

Налаштувати сповіщення з рекламного кабінету відразу на пошту клієнта, за кілька днів до того моменту, як закінчаться гроші. При цьому мати можливість регулювати періоди за який беруться цифри, за скільки днів потрібно попереджати, і загалом мати доступ до даних зі звіту, щоб перевірити, якщо реальність не буде відповідати отриманому повідомленню.

Для її вирішення я використав кілька статей і кілька відео, кожен з вивчених матеріалів вирішував трохи іншу задачу і для того, щоб вирішити свою, мені довелося трохи їх змішати і перехрестити: ))) Вийшло не ідеально по виконанню (я вкажу по ходу на деякі “милиці”), але загалом проблему вирішено, а це найважливіше. Одразу невеличке попередження – місцями буде непросто розібратися і десь потрібно просто мою логіку даних замінити своєю, але головне вловити суть методу + трохи терпіння і наполегливості, і у вас має вийти.

Отже, все по порядку.
Тут 2 великих етапи – перший це налаштувати передачу даних з їхнього рекламного кабінету в гугл таблиці і там їх трохи підготувати, другий – налаштувати сповіщення з гугл таблиці на пошту в той момент (і тільки на зазначені email), коли грошей вистачить, наприклад, на 3 дні.

 

1 ЕТАП
Створюємо нову гугл-таблицю на своєму гугл-диску, після чого переходимо в доповнення – встановити доповнення і знаходимо там розширення для передавання даних із рекламного кабінету до гугл-таблиці

 

після встановлення воно має у вас з’явиться в розширеннях – спускаємося трохи нижче і створюємо новий звіт

З’явиться діалогове вікно, в якому вам потрібно буде вибрати 2 різних типи звіту (оскільки потрібні нам дані знаходяться нібито в різних кімнатах, і ми потім їх будемо зводити) – Budget і Performance. Але першими кроками вам буде запропоновано залогінитися, зробити це важливо під МСС поштою і вибрати ті акаунти, бюджети яких ви хочете відслідковувати, і період звіту, нехай буде 30 днів, але цю цифру треба запам’ятати – вона нам ще знадобиться.
Далі тип звіту і дані, які ми хочемо забрати. Вибираємо Budget, даємо зрозумілу назву і ставимо галочку на Remaining account budget – після чого обов’язково галочку на Shedule Reports (daily) і сміливо можна тиснути Create Report.

У вас має з’явитися нова вкладка з назвою budget.
Повертаємося на крок назад і проробляємо таку саму процедуру, тільки тепер тип звіту вибираємо Performance, а показник Costs – також звіт за розкладом і так само його формуємо.
На виході ми отримуємо 3 аркуші – перший там, де наші вступні дані (їх, до речі, тут можна звірити очима за необхідності), другий і третій – це ті самі сформовані нами звіти. Тут же створюємо новий аркуш для зведення отриманих даних.

і переходимо в нього.
Ось тут і буде якраз та невеличка милиця, але я швидко не знайшов іншого методу, оскільки під час оновлення звітів рядки постійно злітають і приймають іншу черговість, тому в нижній частині аркуша я формулою тягну дані з попередніх двох аркушів, а у верхній частині вже зводжу всі дані в потрібний мені незмінний порядок + додаю email, на які мають іти сповіщення. Виглядає це приблизно так

Вам доведеться трохи погратися з даними, щоб зрозуміти, наскільки інформація коректно збирається і передається до своїх проектів, інакше немає сенсу далі продовжувати.
І, напевно, заощаджу ваш час і поділюся фінальною формулою, оскільки вона і закругляє до цілого числа, і прибирає відразу помилки

=IFERROR(ROUND(E2/F2;0);”undefined”)

де E2/F2 це залишок поділений на середню витрату на день.
Таким чином ми отримали потрібну нам кількість днів, на скільки вистачить поточного залишку бюджету – водночас нагадую, що дані в нас оновлюються щодня (можна і щогодини, але мені здається, що це вже перебір).
Думаю, це був найзаплутаніший шматок завдання – далі простіше вже.

2 ЕТАП
На цьому етапі ми створимо скрипт і вкажемо в ньому, які дані і куди потрібно надіслати.
Просто опишу процедуру покроково.
Переходимо в гугл таблиці в розширення – Apps Script.
Відкриється нова вкладка браузера, в ній буде новий проєкт – даємо йому зрозумілу назву – наприклад send_buget_email, після чого переходимо у вікно з кодом і вставляємо туди наступний скрипт

function sendEmail() {

 

    var list = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(‚інфа для розсилки‘)

    var kolstr = 4;

 

    for (var i = 2; i <= kolstr; i++)

        if (list.getRange(i, 7).getValue() < 7)

 

    {

        var abon_email = list.getRange(i, 3).getValue();

        var abon_name = list.getRange(i, 1).getValue();

        var abon_summ = list.getRange(i, 5).getValue();

        var abon_days = list.getRange(i, 7).getValue();

      

        MailApp.sendEmail(abon_email,abon_name + ' - Увага! Незабаром закінчиться бюджет на Google Ads', 'Зараз на рахунку ' + abon_summ + '. Цієї суми вистачить приблизно на ' + abon_days + ' дня. Поповніть будь ласка рахунок, якщо коштів не вистачає на 7 днів.');

    }

}

де в деяких місцях потрібно вказати свої дані, а саме:

Гадаю, ви помітили, що наприкінці скрипта вказано текст повідомлення, що надсилається, із сумою залишку і на скільки приблизно днів його вистачить – його можна змінити під свої вимоги, наприклад замість назви проєктів вказати імена відповідальних менеджерів або бухгалтерів.
Даємо дозвіл, логінимося і зберігаємо скрипт. Можете для перевірки запустити його руками, натиснувши на кнопку виконання, і переконатися, що повідомлення приходять, вони мають потрібний вам текст і (що важливо) з правильними даними. Повідомлення виглядатиме приблизно ось так

Коротко й інформативно – сума і днів – як на мене, цього більш ніж достатньо, та й слово “Увага!” у заголовку має привернути цю саму увагу клієнта.
Усе, що нам залишається, це встановити розклад для спрацьовування коду, для цього повертаємося у вікно скрипта, зліва в меню переходимо в тригери – правий нижній кут – додати тригер

Далі обираємо по черзі – функція: sendEmail, заголовок, тригер за часом, за днями, вказуємо час, коли має спрацьовувати тригер, налаштовуємо сповіщення про помилки (хоча б на перших порах) і тиснемо зберегти.

Тепер щоразу, коли поріг днів, на який вистачає грошей на рахунку, падатиме нижче 3х – ваш клієнт отримуватиме на пошту повідомлення про необхідність поповнити бюджет. І вам не потрібно щоразу картати себе за те, що ви знову забули перевірити цей звіт.

Так, і звісно ж потрібні вам на контролі акаунти можна змінювати, терміни розрахунку брати не 30, а 14 або 7 днів, попереджати не за 3, а за 5 днів, і.т.д. і.т.п. – адже тепер ви знаєте, де це все лежить. На жаль, був змушений навмисно опустити деякі вже зовсім явні моменти, інакше це і так простирадло було б рази в 3 більшим, але сподіваюся, що послідовність дій вам зрозуміла, і ви зможете без зусиль самі розібратися вже по дрібницях.

Дерзайте.
Усім поменше рутини і побільше цікавих завдань!

=====================================

Ось така легка інструкція) Це все) 

 

Автор – Сергій Урсу
Переклад на українську –  Таня Михальченко.
І вирішила додати від себе останню картинку)

Працюю з Google Ads з травня 2010 року. Партнер Google. Люблю конкретику (без води). Працюю чесно, по-людськи.
Залиште коментар