3. Основные изменения в v201309 (1/3)
● Новая функциональность
○ Импорт офлайн конверсий
○ Новые отчеты
○ Контроль видимости бюджетов
AdWords API Workshops – All rights reserved
4. Основные изменения в v201309 (2/3)
● Другие важные изменения:
○ Имена кампании и группы -- обязательные поля
○ Ограничение по переключению настроек сети кампании
○ Статистика доступна только в отчетах
AdWords API Workshops – All rights reserved
5. Основные изменения в v201309 (3/3)
● Возможости, выведенные из Beta
○ Display criteria bid modifiers
○ Динамические поисковые объявления
○ AdGroup-level feeds (site links)
○ Flexible bidding strategies
○ Location bid modifiers
AdWords API Workshops – All rights reserved
7. Импорт офлайн конверсий (1/3)
● Позволяет вручную зарегистрировать конверсии
● конверсии, отслеживаемые вручную
● данные от других систем слежения за конверсиями
● До 90 дней между кликом и конверсией
● и значение можно менять
● Данные по конверсиям можно использовать для:
● Flexible bidding
● Отчеты по конверсиям (search funnels)
AdWords API Workshops – All rights reserved
8. Импорт офлайн конверсий (2/3)
1. Включите автоматическое добавление тэгов
2. Сохраняйте данные о переходах в БД
3. При конверсии, ставьте отметку в БД
4. Регулярно загружайте конверсии в AdWords
AdWords API Workshops – All rights reserved
9. Импорт офлайн конверсий (3/3)
● Для загрузки конверсии:
a. Создайте тип конверсии
■
через UI или ConversionTrackerService
b. Загружайте конверсии
■
OfflineConversionFeedService
AdWords API Workshops – All rights reserved
10. Создание типа конверсии (код)
UploadConversion uc = new UploadConversion();
uc.setCategory(ConversionTrackerCategory.SIGNUP);
uc.setName("Freemium signup");
uc.setViewthroughLookbackWindow(30);
uc.setCtcLookbackWindow(90);
ConversionTrackerService.mutate(ADD, uc);
// NOTE: wait 6 hours after creating before uploading.
AdWords API Workshops – All rights reserved
11. Загрузка данных конверсии (код)
OfflineConversionFeed feed = new OfflineConversionFeed();
feed.setConversionName("Freemium signup");
feed.setConversionTime(conversionTime);
feed.setGoogleClickId(gClid);
feed.setConversionValue(3.50);
// optional, > 0
OfflineConversionFeedService.mutate(ADD, feed);
// conversion can take up to 3 hours to be processed fully
AdWords API Workshops – All rights reserved
13. Имена кампаний и групп объявлений
● Обязательные поля
● Должны быть уникальны
● (всё)
AdWords API Workshops – All rights reserved
14. Переключение настроек сети кампаний
● Display кампании значительно изменились
● Больше нельзя переключать targetSearchNetwork
● Ошибка: TargetError.TARGET_ERROR
● Другие настройки не затронуты
● Нельзя отключать все сети одновременно
AdWords API Workshops – All rights reserved
15. Статистика доступна только в отчетах
● Многие cервисы (7) содержали объекты типа Stats
● AdGroupService, CampaignService, MutateJobService...
● Больше нет
● Используйте отчеты для получания статистики
● API отчетов очень прост
● Все(*) уже используют отчеты
AdWords API Workshops – All rights reserved
16. Контроль видимости бюджетов
● С версии v201309 возможно создать
“индивидуальные” бюджеты
● Для обозначение типа есть булевое поле в объекте
Budget: isExplicitlyShared
● Для создания индивидуального бюджета:
isExplicitlyShared = false
● По-умолчанию, разделяемый бюджет:
isExplicitlyShared = true
AdWords API Workshops – All rights reserved
17. Зачем нужны индивидуальные бюджеты?
● Индивидуальные бюджеты не видно в UI
● Могут быть использованы только в одной кампании
● Удаляются вместе с кампанией, не нужно
дополнительной операции BudgetService.mutate
(REMOVE op)
● Для кампаний с experiments или budget optimizer
● Индивидуальный >->-> Разделяемый
AdWords API Workshops – All rights reserved
19. 1. Display Criteria Bid Modifiers
● BiddableAdGroupCriterion.bidModifier
● Для корректировки ставок для сегментов Display Network
● Remarketing Lists for Search Ads
● Не работает для критериев поисковой сети
AdWords API Workshops – All rights reserved
20. 2. Динамические поисковые объявления
(1/6)
● Автоматические объявления на основе вашего сайта
● Не нужно создавать заголовок, ключевые слова или URL
● Нужно задать описание и отображаемый URL
● Участвуют в общем аукционе объявлений
● Можно добавлять в обычные кампании
● Например, использовать как fallback ads
● Можно использовать минус-слова, получать
статистику, использовать расширения
AdWords API Workshops – All rights reserved
21. 2. Динамические поисковые объявления
(2/6)
● Создайте кампанию и группу объявлений
● Если необходимо, добавьте таргетинг
● Для DSA, необходимы:
● DomainInfoExtension
● один или несколько Webpage Criteria
● DynamicSearchAds
AdWords API Workshops – All rights reserved
22. 2. Динамические поисковые объявления
(3/6)
● Создание DynamicSearchAd:
● укажите description1, description2, displayUrl
● Можно указать и URL (с параметрами)
● {unescapedlpurl} — в самом начале, заменяет URL
● {unescapedlpurl}?lang=en
● {escapedlpurl} — URL-кодированная версия (для трекеров)
● http://www.3rdpartytracker.com/?lp={escapedlpurl}
● {lpurlpath} — только путь и параметры URL
● http://www.mygoodbusiness.com/tracking/{lpurlpath}
●
По-умолчанию, используется {unescapedlpurl}
AdWords API Workshops – All rights reserved
23. 2. Динамические поисковые объявления
(4/6)
DynamicSearchAd dsa = new DynamicSearchAd();
dsa.url = "{unescapedlpurl}?source=dsa";
dsa.displayUrl = "amazingcarrepairs.com";
dsa.description1 = "We'll take good care of your car";
dsa.description2 = "Wash and wax service included.";
AdGroupAd aga = new AdGroupAd(_adgroupid);
aga.ad = dsa;
AdGroupService.mutate(ADD, aga);
AdWords API Workshops – All rights reserved
24. 2. Динамические поисковые объявления
(5/6)
WebpageCondition cond = new WebpageCondition();
cond.operand = URL; // filter on URLs, equal to "CONTAINS"
cond.argument = "/grandcherokee";
WebpageParameter param = new WebpageParameter();
param.criterionName = "Jeep Grand Cherokee";
param.conditions = [ cond ];
Webpage wp = new Webpage(); // the criterion
wp.parameter = param;
// can now put in AdGroupCriterion object and ADD!
AdWords API Workshops – All rights reserved
25. 2. Динамические поисковые объявления
(6/6)
● Ограничение:
● Необходимо создать DomainInfoExtension (для
кампании)
● Данное расширение не поддерживается в API
●
нужно использовать UI
● Можно создавать объявления для существующих
DomainInfoExtensions
● Можно обновлять настройки, получать статистику
AdWords API Workshops – All rights reserved
26. 3. AdGroup Level Feeds
● Доступен сервис AdGroupFeedService
● Создание дополнительных ссылок на
уровне групп объявлений
AdWords API Workshops – All rights reserved
27. 4. Flexible Bidding Strategies (1/6)
● Стратегии ставок задаются для каждой кампании
● Параметры стратегии -- часть объекта кампании
● В некоторых случаях стратегии можно использовать
повторно
● Возможно с использованием Flexible Bidding strategies
● Flexible == Shared
AdWords API Workshops – All rights reserved
28. 4. Flexible Bidding Strategies (2/6)
AdWords API Workshops – All rights reserved
29. 4. Flexible Bidding Strategies (3/6)
AdWords API Workshops – All rights reserved
30. 4. Flexible Bidding Strategies (4/6)
● BiddingStrategyService -- пул конфигураций
● Позволяет создать объект SharedBiddingStrategy
● Содержит обычный biddingScheme
●
TargetSpendBiddingScheme...
● При создании кампании, используется ID стратегии
● как обычно для разделяемых объектов
AdWords API Workshops – All rights reserved
31. 4. Flexible Bidding Strategies (5/6)
// 1. create the shared bidding
TargetSpendBiddingScheme tsbs =
tsbs.spendTarget = 250000000;
tsbs.bidCeiling = 2500000;
strategy.
new TargetSpendBiddingScheme();
// $250 a month
// max 2.50$ bid
SharedBiddingStrategy sbs = new SharedBiddingStrategy();
sbs.name = "Monthly targeted spend";
sbs.type = TARGET_SPEND;
sbs.biddingScheme = tsbs;
BiddingStrategyService.mutate(ADD, sbs); // extract result
AdWords API Workshops – All rights reserved
32. 4. Flexible Bidding Strategies (6/6)
// 2. add it to the campaign.
Campaign c = new Campaign();
// set up stuff on c
BiddingStrategyConfiguration bsc = new
BiddingStrategyConfiguration();
bsc.biddingStrategyId = sbs.id;
c.biddingStrategyConfiguration = bsc;
CampaignService.mutate(ADD, c);
AdWords API Workshops – All rights reserved
33. 5. Location Bid Modifiers
● Корректировка ставок по
георгафическому
положению
● Позволяет задать разные
ставки для разных мест в
рамках одной кампании
AdWords API Workshops – All rights reserved
34. Location Bid Modifiers (cont’d)
// 1. normal location criterion.
LocationCriterion lc = new Location();
lc.id = 1002451; // Toronto, Ontario, Canada
lc.bidModifier = 1.0;
CampaignCriterion cc = new CampaignCriterion();
cc.campaignId = _campaignId;
cc.criterion = lc;
CampaignCriterionService.mutate(ADD, cc);
AdWords API Workshops – All rights reserved
35. Location Bid Modifiers (cont’d)
// 2. let's bid more for successful suburb
LocationCriterion lc = new Location();
lc.id = 1002350;
// Mississauga, Ont, Can
lc.bidModifier = 1.5;
// bid 50% more for here
CampaignCriterion cc = new CampaignCriterion();
cc.campaignId = _campaignId;
cc.criterion = lc;
CampaignCriterionService.mutate(ADD, cc);
AdWords API Workshops – All rights reserved
37. Редко используемые функции
● Минус-слова (negative keywords)
● Дополнительные ссылки (Site Links / Feeds)
Использование данных функций часто улучшает результативность кампаний
AdWords API Workshops – All rights reserved
38. Минус-слова / Negative Keywords
// Create keyword. We're creating ads for “Westminster dentist”.
Keyword keyword = new Keyword();
keyword.setText("reviews");
keyword.setMatchType(KeywordMatchType.BROAD);
// Create negative campaign criterion.
NegativeCampaignCriterion ncc = new NegativeCampaignCriterion();
ncc.setCampaignId(_campaignId);
ncc.setCriterion(keyword);
CampaignCriterionService.mutate(ADD, ncc);
AdWords API Workshops – All rights reserved
39. Дополнительные ссылка / Site Links
● Реализуются сервисами Feeds
● Обсуждаем на отдельной сессии позже
AdWords API Workshops – All rights reserved
40. Полезные ссылки
Google Ads v201309 Blog Post - http://goo.gl/TvNQDx
v201309 Migration Guide - http://goo.gl/e4O7YZ
AdWords API Workshops – All rights reserved