Щоб налаштувати зрозумілу звітність як щоденну, так і в розрізі місяця, отримувати інформацію по витратам на рекламу по кожній рекламній кампанії, формувати звітність по витратам, операційному та чистому прибутку, передача даних з GoogleAds у GoogleSheets стане у нагоді.
Реалізується це простим скриптом, котрий додається безпосередньо у рекламному кабінеті GoogleAds у розділі Інструменти – Масові дії – Скрипти. Створюємо новий й вносимо туди такий код:
function main() {
const sheetUrl = 'https://docs.google.com/spreadsheets/d/ІДЕНТИФІКАТОР_ТАБЛИЦІ/edit'; // URL таблиці
const sheet = SpreadsheetApp.openByUrl(sheetUrl).getSheetByName('НАЗВА_ЛИСТА'); // назва листа
const accountId = AdsApp.currentAccount().getCustomerId();
const timeZone = AdsApp.currentAccount().getTimeZone();
const yesterday = new Date(Date.now() - 86400000);
const formattedDateTable = Utilities.formatDate(yesterday, timeZone, 'dd.MM.yyyy'); // для таблиці
const formattedDateQuery = Utilities.formatDate(yesterday, timeZone, 'yyyy-MM-dd'); // для запиту
const report = AdsApp.report(`
SELECT CampaignName, Cost
FROM CAMPAIGN_PERFORMANCE_REPORT
WHERE Date = '${formattedDateQuery}'
`);
const rows = report.rows();
while (rows.hasNext()) {
const row = rows.next();
const newRow = [];
newRow[0] = formattedDateTable; // A: дата у форматі dd.MM.yyyy
newRow[1] = row['CampaignName']; // B: назва кампанії
// Приводимо вартість до правильного числа
let rawCost = row['Cost'].toString()
.replace(/\s| /g, '') // прибираємо всі пробіли та нерозривні пробіли
.replace(',', '.'); // заміняємо кому на крапку
let cost = parseFloat(rawCost);
// Перевірка: якщо після крапки 3 знаки — треба множити на 1000
if (rawCost.includes('.')) {
const decimalPart = rawCost.split('.')[1];
if (decimalPart.length === 3) {
cost = cost * 1000;
}
}
newRow[2] = cost; // C: витрати
newRow[3] = accountId; // D: ID акаунту (якщо в одну таблицю вносимо витрати по декільком акаунтам)
sheet.appendRow(newRow);
}
}
Далі треба увімкнути щоденне оновлення, щоб дані за вчора вносились у таблицю щоденно:

Результат:

За потреби можна додати більше даних по рекламним кампаніям: покази, кліки, вартість кліку, CTR, тощо.