Обновляйте ставки и отслеживайте изменения с помощью скриптов AdWords

Опубликовано: 2021-10-23

Скрипты AdWords - отличный инструмент для управления корректировками ставок. В предыдущих статьях, таких как Автоматизация ставок с помощью таблиц Google и сценариев AdWords, мы рассмотрели различные способы изменения ставок и обработки загрузок. В этой статье эти идеи будут объединены в вашу собственную систему торгов!

В этой статье мы по-прежнему будем придерживаться высокоуровневого подхода, чтобы он был доступен или где бы вы ни были. Если у вас меньше опыта работы со сценариями, вам будет проще следовать им (что вы все равно можете применить самостоятельно). Если у вас больше опыта, вы можете легко внести свои собственные изменения, чтобы улучшить инструмент.

На протяжении всего этого процесса мы будем использовать бесплатные инструменты и надстройки для создания системы, которая извлекает данные, обрабатывает данные и загружает набор изменений ставок. Вместо того, чтобы быть полным сценарием, мы будем использовать листы и функции загрузки, чтобы сделать редактирование более доступным для некодеров.

Что мы будем использовать

Мы будем использовать надстройку Google AdWords для сбора данных, Google Sheets для управления ставками, скрипты AdWords для форматирования и загрузки изменений, и, наконец, мы воспользуемся приложением Google Sheets, чтобы скопировать изменения и сохранить их для справки.

  • Надстройка Google AdWords - сбор данных
  • Таблицы Google - применяйте изменения с помощью формул и возвращайте изменения.
  • Сценарии AdWords - проверьте изменения, создайте файл загрузки, отправьте в AdWords, сохраните журнал изменений на Google Диске.

Получение данных

Во-первых, нам нужно настроить извлечение данных. Вы можете использовать инструмент для извлечения данных, использовать сценарий или вставить данные вручную. Поскольку речь идет об автоматизации, мы пропустим последний вариант. В первом примере будет использоваться надстройка AdWords (если вы хотите пока ограничить доступ к вашему коду), и мы вернемся к ресурсам для написания сценария извлечения данных.

После установки надстройки AdWords перейдите в Таблицы и создайте новый лист. Откройте надстройку и начните настраивать свой лист. Нам нужно получить любые показатели эффективности плюс столбец максимальной цены за клик. Если вы меняете ставки в процентах от последней ставки, вам понадобится текущая ставка. Если вы хотите вести запись, вам также понадобится столбец.

Если хотите, вы также можете использовать такой инструмент, как SuperMetrics. Или вы можете использовать функцию отчетности в скриптах AdWords для импорта изменений. Оба они предлагают немного более автоматизированные решения.

Если вы хотите узнать больше о функциях отчетности, я настоятельно рекомендую следующие статьи,

Google Developers, Reporting - справочник по отчетам по скриптам AdWords

Фред Валлейс, Search Engine Land - этот скрипт автоматизирует добавление любых данных AdWords в электронную таблицу Google

Внесите корректировки ставок

Получив данные об эффективности, мы можем начать расчет новых ставок! В этом примере мы настроим на основе цены за конверсию с помощью базовой формулы в новом столбце.

Затем мы добавим вспомогательный столбец, чтобы определить, какие столбцы изменились.

Теперь мы создадим новый лист для хранения наших изменений, что-то очевидное, например «Изменения ключевых слов для загрузки». Я рекомендую использовать query (), чтобы вернуть все измененные строки на их собственный лист. Это упростит подключение к AdWords и ограничит код, который мы должны написать, чтобы выбрать правильный диапазон.

Форматирование загрузки

Это требует нескольких шагов. Нам нужно,

  1. Получите доступ к электронной таблице.
  2. Вытащите данные.
  3. Отформатируйте его для массовой загрузки и создайте файл
  4. Отправьте файл в AdWords.

Доступ к электронной таблице достаточно прост, мы будем использовать URL-адрес и имя файла для доступа к таблице.

Теперь немного сложная часть. Если вы не знакомы с процессом. Нам нужно создать файл csv для загрузки. У нас уже есть строки, которые мы хотим загрузить. По сути, мы создадим пустой файл, а затем заполним его строками из листа «Изменения ключевых слов для загрузки».

После того, как мы создали загрузку, мы находимся на расстоянии одной линии от загрузки.

Создание журнала резервного копирования

Часто пользователи беспокоятся о возможности отменить изменения или о том, что система выходит из-под контроля. Это маловероятно, но из соображений осторожности мы можем сделать копию и сохранить ее на нашем Google Диске.

Рекомендую заранее создать папку. Копирование идентификатора папки из URL-адреса и вставка его в скрипт. Это предохраняет диск верхнего уровня от переполнения копиями и помогает поддерживать его в чистоте и порядке!

Отправить электронное письмо с изменениями

Обновления по электронной почте помогут вам и вашей команде следить за изменениями и следить за их масштабами. Мы можем использовать приложение emailApp, чтобы отправить электронное письмо членам команды вместе с кратким сообщением со ссылками на таблицы изменений, которые мы создали на последнем шаге. Мы также можем быстро подсчитать строки в загружаемом файле, чтобы подсчитать количество изменений ставок.

Чтобы включить ссылки, мы отформатируем тело сообщения как HTML, добавим несколько разрывов и сделаем его немного лучше.

Заключение

Если вы автоматически обновляете данные о ключевых словах, запланируйте сценарий на автоматическое внесение изменений.

Если вы загружаете данные ключевых слов вручную, вы все равно можете запланировать загрузку, но было бы разумнее запустить сценарий вручную после обновления данных.

Улучшение процесса

Есть два основных пути улучшения. Вы можете полностью написать сценарий всего процесса и удалить часть электронной таблицы. Это упрощает шаги и может упростить управление, если вам не нужен лист.

Второй вариант для обновления вашей таблицы ставок более сложными правилами и решениями. Добавление дополнительных переменных в правило назначения ставок, реализация нескольких типов конверсии или включение сторонних данных может помочь вам создать более эффективную модель назначения ставок.

Полный сценарий

function main () {

// электронная почта для обновлений ставок
var email = [«[email protected]»];

// ID папки, которую вы выделили для хранения копий тендерных листов
// извлекаем с конца URL-адреса вашей папки на Диске
var bidFolderId = ”;

// URL книги изменения ставок
var biddingWorkBookUrl = ”;

// Открыть книгу
var biddingWorkBook = SpreadsheetApp.openByUrl (biddingWorkBookUrl);

// Лист с изменениями ставок
// строка может быть обновлена ​​до имени вашего собственного файла
var keywordBidUpload = brandBook.getSheetByName ('Изменения ключевого слова для загрузки');

// Получаем лист, который хотите скопировать
var keywordBids = brandBook.getSheetByName ('Ставки по ключевым словам');

// Получить последнюю строку для расчета количества изменений ставки.
var bidChangeCount = keywordBids.getLastRow () - 1;

function createCopy (sheetObject) {
var destinationFolder = DriveApp.getFolderById (bidFolderId);
var file = DriveApp.getFileById (sheetObject.getId ()). makeCopy («Копия ставки -» + createDateString (), destinationFolder);
return file.getUrl ();
}

var brandCopy = createCopy (keywordBids);

function uploadBids (sheet) {
// создаем имена столбцов для загрузки
var columns = [«Кампания», «Группа объявлений», «Ключевое слово», «Тип соответствия», «Макс. CPC »];
// создаем загрузку CSV
var upload = AdWordsApp.bulkUploads (). newCsvUpload (столбцы);
// получаем все значения из листа
var values ​​= sheet.getDataRange (). getValues ​​();
// конвертируем строки листа и добавляем в загружаемый файл
for (i = 1; i <values.length; i ++) {
var campaign = values ​​[i] [0];
var ad_group = значения [i] [1];
ключевое слово var = значения [я] [2];
var match_type = значения [i] [3];
var max_cpc = значения [я] [4];

upload.append ({
"Кампания": кампания,
"Группа объявлений": ad_group,
"Ключевое слово": ключевое слово,
"Тип соответствия": match_type,
'Максимум. Цена за клик ': max_cpc});

};
};

uploadBids (keywordBidUpload);

// Создаем текст даты для добавления к имени файла
function createDateString () {
var newDate = новая дата ();
var month = String (newDate.getMonth ());
var day = String (newDate.getDate ());
var year = String (newDate.getFullYear ());
вернуть месяц + «-» + день + «-» + год;

}

var dateString = createDateString ();

var subject = «Изменения ставок аккаунта» + dateString;

var options = {
htmlBody: «Здравствуйте, <br /> <br /> Изменения ставок внесены. <br /> <br /> Было "+"
bidChangeCount + "изменение ставки для ключевого слова. <br /> <br />" +
«Изменения и предыдущие настройки можно найти в, <br /> <br />» +
'<a href = \ ”' + brandCopy +
'”> Изменения бренда </a>';

}

MailApp.sendEmail (электронная почта, тема, », параметры)

}
// Конец скрипта