Скрипты Google Ads (Adwords)

|
Автор: Евгений Холостенко
Просмотров: 231
5 1 1 1 1 1 1 1 1 1 1 Оценка 5.00 (2 голосов)

Никто не задумывается об автоматизации, пока нет системного количества повторяющихся операций. Точно так же и в контекстной рекламе. В этом случае приходят на помощь скрипты Google Ads (Adwords).

Скрипты Google Реклама – программные решения, которые позволяют с помощью Java Script управлять системными функциями рекламного кабинета Google Ads (Adwords) независимо от пользователя.

Важное уточнение! «Независимо от пользователя» - значит, что Вы можете задать режим выполнения частотой от 1 часа до 1 раза в месяц и не посещать аккаунт для выполнения конкретной задачи. Скрипт все сделает за Вас.

В аккаунте Google Реклама, скрипты достаточно легко найти:

Инструменты → Массовые операции → Скрипты

Далее перед Вами откроется открытый Java Script код с которым Вы можете вести работу.

скрипты Google Ads (Adwords)Увеличить изображение

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

В интернете Вы найдете множество бесплатных скриптов, но они будут достаточно типичными. Мы столкнулись с тем, что нам из тысячи бесплатных скриптов пригодились только 2-3:


1
Скрипт уведомления граничной суммы остатка баланса.

Механизм достаточно простой: если сумма остатка аккаунта меньше заданной – Вам приходит email уведомление. Выглядит этот скрипт так:


    function main() {
  //Настройки скрипта 
  var days = 7; // Минимальное число дней для отправки уведомления
  var alertLimit = 30000; // Минимальный остаток для отправки уведомления
  var email = [' Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.']; //Добавляются адреса всех, кому должно прийти письмо с уведомлением
  var alertType = true; // true - уведомление при малом остатке, при значении false - при количестве дней
  var includeVAT = true;
  var budgetOrder = AdWordsApp.budgetOrders().get().next();
  var SpendingLimit = budgetOrder.getSpendingLimit(); // Общий лимит аккаунта
  var adjustments = budgetOrder.getTotalAdjustments(); // Возвращенные средства на аккаунт
  var Spent = AdWordsApp.currentAccount().getStatsFor('ALL_TIME').getCost(); // Расход за все время
  var lastWeekSpent = AdWordsApp.currentAccount().getStatsFor('LAST_7_DAYS').getCost(); // Расход за последние 7 дней
  var thisMonthSpent = AdWordsApp.currentAccount().getStatsFor('THIS_MONTH').getCost();
  var vat = thisMonthSpent * 0.2;
  var limit = budgetOrder.getSpendingLimit();
  var spent = AdWordsApp.currentAccount().getStatsFor('ALL_TIME').getCost();
  var amountOfBudget = limit - spent+388;  
  Logger.log("Остаток аккаунта - " + amountOfBudget);
  if (alertType) {
    if (amountOfBudget < alertLimit) {
      sendSimpleTextEmail(email);
    }
  }

  function sendSimpleTextEmail(mail) {
    MailApp.sendEmail( mail,
                      'Минимальный остаток бюджета! ' + AdWordsApp.currentAccount().getName(),
                      'В аккаунте Holostenko & Partners заканчиваются средства. Внесите оплату!');    
  }
} 
    

Этот скрипт поможет в случаях, когда у Вас происходят либо частые пополнения баланса, либо когда Вы редко заглядываете в Google Ads.


2
Скрипт приостановки объявлений по которым нет показов:

    var TO_NOTIFY = "Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.";
function main() {
  var kwIter = AdWordsApp.keywords()
    .withCondition("Impressions = 0") // could be "Clicks = 0" also
    .forDateRange("ALL_TIME")
    .withCondition("Status = ENABLED")
    .withCondition("CampaignStatus = ENABLED")
    .withCondition("AdGroupStatus = ENABLED")
    .get();
  var toPause = [];
  while (kwIter.hasNext()) {
    var kw = kwIter.next();
    toPause.push(kw);
    if(AdWordsApp.getExecutionInfo().isPreview() &&
       AdWordsApp.getExecutionInfo().getRemainingTime() < 10) {
      break;
    }
  }
  for(var i in toPause) {
    toPause[i].pause();
    //Или можете использовать toPause[i].remove(); чтобы удалить объявление
  }
  // Отправка уведомления на почту
  MailApp.sendEmail(TO_NOTIFY, 
                    "AdWords Script Paused "+toPause.length+" Keywords.", 
                    "Your AdWords Script paused "+toPause.length+" keywords.");
}
  

Этот скрипт позволяет почистить объявления, которых тысячи и вручную это сделать будет не совсем просто.


3
Скрипт удержания позиции на уровне ключевого слова:

  function main() {
var TARGET_IMPRESSION_SHARE = 0.5;
var TOLERANCE = 0.05;
var BID_ADJUSTMENT_COEFFICIENT = 1.05;

function main() {
  raiseKeywordBids();
  lowerKeywordBids();
}
function raiseKeywordBids() {
  var keywordsToRaise = getKeywordsToRaise();

  while (keywordsToRaise.hasNext()) {
    var keyword = keywordsToRaise.next();
    keyword.bidding().setCpc(getIncreasedCpc(keyword.bidding().getCpc()));
  }
}
function lowerKeywordBids() {
  var keywordsToLower = getKeywordsToLower();

while (keywordsToLower.hasNext()) {
    var keyword = keywordsToLower.next();
    keyword.bidding().setCpc(getDecreasedCpc(keyword.bidding().getCpc()));
  }
}
function getIncreasedCpc(cpc) {
  return cpc * BID_ADJUSTMENT_COEFFICIENT;
}

function getDecreasedCpc(cpc) {
  return cpc / BID_ADJUSTMENT_COEFFICIENT;
}

function getKeywordsToRaise() {
 
  return AdsApp.keywords()
      .withCondition('Status = ENABLED')
      .withCondition(
          'SearchImpressionShare < ' + (TARGET_IMPRESSION_SHARE - TOLERANCE))
      .orderBy('SearchImpressionShare ASC')
      .forDateRange('LAST_7_DAYS')
      .get();
}

function getKeywordsToLower() { 
  return AdsApp.keywords()
      .withCondition('Ctr > 0.01')
      .withCondition(
          'SearchImpressionShare > ' + (TARGET_IMPRESSION_SHARE + TOLERANCE))
      .withCondition('Status = ENABLED')
      .orderBy('SearchImpressionShare DESC')
      .forDateRange('LAST_7_DAYS')
      .get();
}
}
  

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

Больше бесплатных решений вы можете найти на сайте www.freeadwordsscripts.com.

Но это все стандартные бесплатные решения, которые не всегда в точку. Именно поэтому, мы занялись собственными разработками.

Как агентство, мы открыли для себя возможности, которые повышают комфорт работы с контекстной рекламой:

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

Скрипты Google открывают новые возможности автоматизации, которые не дают возможность сделать автоматизированные правила. Именно поэтому мы и начали работать со скриптами, что позволяет быть более гибким и динамичным.

Кастомные скрипты под заказ

Кастомные скрипты Google Ads

Для интернет-магазинов, проектов с крупными аккаунтами, либо просто для среднего и малого бизнеса, мы предоставляем услуги написания скриптов Google Ads по требованиям заказчика. От Вас – логическая задача, от нас – исполнение. Более подробно отправляйте заявку либо обращайтесь по контактным телефонам агентства.

* Для клиентов пакетов Ultra, доступны кастомные скрипты нашей разработки для контроллинга контекстной рекламы и используются по умолчанию.