Из этого руководства вы узнаете, что такое геотаргетинг, а также как добавлять, получать и изменять его настройки с помощью Google Реклама API.
Подробнее об ограничениях, связанных с таргетингом, для аккаунтов Google Рекламы…
Почему важен геотаргетинг
Геотаргетинг позволяет показывать объявления пользователям из определенного региона. Предположим, вы рекламируете сеть супермаркетов. Без геотаргетинга ваши объявления будут показываться во всех регионах мира, и по ним могут кликать пользователи из регионов, где нет ваших супермаркетов. Иначе говоря, вы будете нести расходы, которые не окупятся. Благодаря геотаргетингу объявления показываются только в тех регионах, где есть ваши супермаркеты. Такой подход также позволяет напрямую обращаться к клиентам, которые ищут супермаркеты поблизости.
Google Ads API позволяет настраивать таргетинг объявлений на страну, регион или область в радиусе вокруг определенной географической точки.
Как настроить геотаргетинг кампаний на регион
Вы можете настроить таргетинг кампаний на любой географический регион, поддерживаемый Google Рекламой, например страну, область, город или почтовый индекс. Каждому местоположению, на которое можно настроить таргетинг, присваивается уникальный идентификатор критерия. Идентификатор критерия можно найти с помощью GeoTargetConstantService.SuggestGeoTargetConstants.
resource_name каждого GeoTargetConstant имеет вид geoTargetConstants/{Criterion ID}. Например, значение resource_name для штата Нью-Йорк – geoTargetConstants/21167.
Вы можете добавить в кампании геотаргетинг с помощью CampaignCriterionService (или на уровне группы объявлений с помощью AdGroupCriterion для поддерживаемых типов кампаний, например кампаний для создания спроса с включенным upgraded_targeting). В приведенном ниже фрагменте кода показано, как настроить таргетинг кампании с помощью идентификатора критерия.
Java
private static CampaignCriterion buildLocationIdCriterion( long locationId, String campaignResourceName) { Builder criterionBuilder = CampaignCriterion.newBuilder().setCampaign(campaignResourceName); criterionBuilder .getLocationBuilder() .setGeoTargetConstant(ResourceNames.geoTargetConstant(locationId)); return criterionBuilder.build(); }
C#
private CampaignCriterion buildLocationCriterion(long locationId, string campaignResourceName) { GeoTargetConstantName location = new GeoTargetConstantName(locationId.ToString()); return new CampaignCriterion() { Campaign = campaignResourceName, Location = new LocationInfo() { GeoTargetConstant = location.ToString() } }; }
PHP
private static function createLocationCampaignCriterionOperation( int $locationId, string $campaignResourceName ) { // Constructs a campaign criterion for the specified campaign ID using the specified // location ID. $campaignCriterion = new CampaignCriterion([ // Creates a location using the specified location ID. 'location' => new LocationInfo([ // Besides using location ID, you can also search by location names using // GeoTargetConstantServiceClient::suggestGeoTargetConstants() and directly // apply GeoTargetConstant::$resourceName here. An example can be found // in GetGeoTargetConstantByNames.php. 'geo_target_constant' => ResourceNames::forGeoTargetConstant($locationId) ]), 'campaign' => $campaignResourceName ]); return new CampaignCriterionOperation(['create' => $campaignCriterion]); }
Python
def create_location_op( client: GoogleAdsClient, customer_id: str, campaign_id: str, location_id: str, ) -> CampaignCriterionOperation: campaign_service: CampaignServiceClient = client.get_service( "CampaignService" ) geo_target_constant_service: GeoTargetConstantServiceClient = ( client.get_service("GeoTargetConstantService") ) # Create the campaign criterion. campaign_criterion_operation: CampaignCriterionOperation = client.get_type( "CampaignCriterionOperation" ) campaign_criterion: CampaignCriterion = campaign_criterion_operation.create campaign_criterion.campaign = campaign_service.campaign_path( customer_id, campaign_id ) # Besides using location_id, you can also search by location names from # GeoTargetConstantService.suggest_geo_target_constants() and directly # apply GeoTargetConstant.resource_name here. An example can be found # in get_geo_target_constant_by_names.py. campaign_criterion.location.geo_target_constant = ( geo_target_constant_service.geo_target_constant_path(location_id) ) return campaign_criterion_operation
Ruby
def create_location(client, customer_id, campaign_id, location_id) client.operation.create_resource.campaign_criterion do |criterion| criterion.campaign = client.path.campaign(customer_id, campaign_id) criterion.location = client.resource.location_info do |li| # Besides using location_id, you can also search by location names from # GeoTargetConstantService.suggest_geo_target_constants() and directly # apply GeoTargetConstant.resource_name here. An example can be found # in get_geo_target_constant_by_names.rb. li.geo_target_constant = client.path.geo_target_constant(location_id) end end end
Perl
sub create_location_campaign_criterion_operation { my ($location_id, $campaign_resource_name) = @_; # Construct a campaign criterion for the specified campaign using the # specified location ID. my $campaign_criterion = Google::Ads::GoogleAds::V26::Resources::CampaignCriterion->new({ # Create a location using the specified location ID. location => Google::Ads::GoogleAds::V26::Common::LocationInfo->new({ # Besides using location ID, you can also search by location names # using GeoTargetConstantService::suggest() and directly apply # GeoTargetConstant->{resourceName} here. An example can be found # in get_geo_target_constants_by_names.pl. geoTargetConstant => Google::Ads::GoogleAds::V26::Utils::ResourceNames::geo_target_constant( $location_id)} ), campaign => $campaign_resource_name }); return Google::Ads::GoogleAds::V26::Services::CampaignCriterionService::CampaignCriterionOperation ->new({ create => $campaign_criterion }); }
curl
Иногда Google может прекращать поддержку некоторых критериев местоположения по разным причинам, например из-за изменения границ регионов, геополитических изменений и т. д. Чтобы узнать, является ли адрес ENABLED или REMOVAL_PLANNED, проверьте поле status объекта GeoTargetConstant.
Поиск по названию местоположения
Вы также можете найти идентификатор критерия по названию местоположения с помощью GeoTargetConstantService.SuggestGeoTargetConstants.
В примере кода ниже показано, как найти идентификатор критерия местоположения по названию местоположения.
Java
private void runExample(GoogleAdsClient googleAdsClient) { try (GeoTargetConstantServiceClient geoTargetClient = googleAdsClient.getLatestVersion().createGeoTargetConstantServiceClient()) { SuggestGeoTargetConstantsRequest.Builder requestBuilder = SuggestGeoTargetConstantsRequest.newBuilder(); // Locale is using ISO 639-1 format. If an invalid locale is given, 'en' is used by default. requestBuilder.setLocale("en"); // A list of country codes can be referenced here: // https://developers.google.com/google-ads/api/reference/data/geotargets requestBuilder.setCountryCode("FR"); requestBuilder .getLocationNamesBuilder() .addAllNames(ImmutableList.of("Paris", "Quebec", "Spain", "Deutschland")); SuggestGeoTargetConstantsResponse response = geoTargetClient.suggestGeoTargetConstants(requestBuilder.build()); for (GeoTargetConstantSuggestion suggestion : response.getGeoTargetConstantSuggestionsList()) { System.out.printf( "%s (%s,%s,%s,%s) is found in locale (%s) with reach (%d) for search term (%s).%n", suggestion.getGeoTargetConstant().getResourceName(), suggestion.getGeoTargetConstant().getName(), suggestion.getGeoTargetConstant().getCountryCode(), suggestion.getGeoTargetConstant().getTargetType(), suggestion.getGeoTargetConstant().getStatus().name(), suggestion.getLocale(), suggestion.getReach(), suggestion.getSearchTerm()); } } }
C#
public void Run(GoogleAdsClient client) { // Get the GeoTargetConstantServiceClient. GeoTargetConstantServiceClient geoService = client.GetService(Services.V26.GeoTargetConstantService); // Locale is using ISO 639-1 format. If an invalid locale is given, // 'en' is used by default. string locale = "en"; // A list of country codes can be referenced here: // https://developers.google.com/google-ads/api/reference/data/geotargets string countryCode = "FR"; string[] locations = { "Paris", "Quebec", "Spain", "Deutschland" }; SuggestGeoTargetConstantsRequest request = new SuggestGeoTargetConstantsRequest() { Locale = locale, CountryCode = countryCode, LocationNames = new SuggestGeoTargetConstantsRequest.Types.LocationNames() }; request.LocationNames.Names.AddRange(locations); try { SuggestGeoTargetConstantsResponse response = geoService.SuggestGeoTargetConstants(request); foreach (GeoTargetConstantSuggestion suggestion in response.GeoTargetConstantSuggestions) { Console.WriteLine( $"{suggestion.GeoTargetConstant.ResourceName} " + $"({suggestion.GeoTargetConstant.Name}, " + $"{suggestion.GeoTargetConstant.CountryCode}, " + $"{suggestion.GeoTargetConstant.TargetType}, " + $"{suggestion.GeoTargetConstant.Status}) is found in locale " + $"({suggestion.Locale}) with reach ({suggestion.Reach}) " + $"for search term ({suggestion.SearchTerm})."); } } catch (GoogleAdsException e) { Console.WriteLine("Failure:"); Console.WriteLine($"Message: {e.Message}"); Console.WriteLine($"Failure: {e.Failure}"); Console.WriteLine($"Request ID: {e.RequestId}"); throw; } }
PHP
public static function runExample( GoogleAdsClient $googleAdsClient, array $locationNames, string $locale, string $countryCode ) { $geoTargetConstantServiceClient = $googleAdsClient->getGeoTargetConstantServiceClient(); $response = $geoTargetConstantServiceClient->suggestGeoTargetConstants( new SuggestGeoTargetConstantsRequest([ 'locale' => $locale, 'country_code' => $countryCode, 'location_names' => new LocationNames(['names' => $locationNames]) ]) ); // Iterates over all geo target constant suggestion objects and prints the requested field // values for each one. foreach ($response->getGeoTargetConstantSuggestions() as $geoTargetConstantSuggestion) { /** @var GeoTargetConstantSuggestion $geoTargetConstantSuggestion */ printf( "Found '%s' ('%s','%s','%s',%s) in locale '%s' with reach %d" . " for the search term '%s'.%s", $geoTargetConstantSuggestion->getGeoTargetConstant()->getResourceName(), $geoTargetConstantSuggestion->getGeoTargetConstant()->getName(), $geoTargetConstantSuggestion->getGeoTargetConstant()->getCountryCode(), $geoTargetConstantSuggestion->getGeoTargetConstant()->getTargetType(), GeoTargetConstantStatus::name( $geoTargetConstantSuggestion->getGeoTargetConstant()->getStatus() ), $geoTargetConstantSuggestion->getLocale(), $geoTargetConstantSuggestion->getReach(), $geoTargetConstantSuggestion->getSearchTerm(), PHP_EOL ); } }
Python
def main(client: GoogleAdsClient) -> None: gtc_service: GeoTargetConstantServiceClient = client.get_service( "GeoTargetConstantService" ) gtc_request: SuggestGeoTargetConstantsRequest = client.get_type( "SuggestGeoTargetConstantsRequest" ) gtc_request.locale = LOCALE gtc_request.country_code = COUNTRY_CODE # The location names to get suggested geo target constants. # Type hint for gtc_request.location_names.names is not straightforward # as it's part of a complex protobuf object. gtc_request.location_names.names.extend( ["Paris", "Quebec", "Spain", "Deutschland"] ) results: SuggestGeoTargetConstantsResponse = ( gtc_service.suggest_geo_target_constants(gtc_request) ) suggestion: GeoTargetConstantSuggestion for suggestion in results.geo_target_constant_suggestions: geo_target_constant: GeoTargetConstant = suggestion.geo_target_constant print( f"{geo_target_constant.resource_name} " f"({geo_target_constant.name}, " f"{geo_target_constant.country_code}, " f"{geo_target_constant.target_type}, " f"{geo_target_constant.status.name}) " f"is found in locale ({suggestion.locale}) " f"with reach ({suggestion.reach}) " f"from search term ({suggestion.search_term})." )
Ruby
def get_geo_target_constants_by_names # GoogleAdsClient will read a config file from # ENV['HOME']/google_ads_config.rb when called without parameters client = Google::Ads::GoogleAds::GoogleAdsClient.new gtc_service = client.service.geo_target_constant location_names = client.resource.location_names do |ln| ['Paris', 'Quebec', 'Spain', 'Deutschland'].each do |name| ln.names << name end end # Locale is using ISO 639-1 format. If an invalid locale is given, # 'en' is used by default. locale = 'en' # A list of country codes can be referenced here: # https://developers.google.com/google-ads/api/reference/data/geotargets country_code = 'FR' response = gtc_service.suggest_geo_target_constants( locale: locale, country_code: country_code, location_names: location_names ) response.geo_target_constant_suggestions.each do |suggestion| puts sprintf("%s (%s,%s,%s,%s) is found in locale (%s) with reach (%d)" \ " from search term (%s).", suggestion.geo_target_constant.resource_name, suggestion.geo_target_constant.name, suggestion.geo_target_constant.country_code, suggestion.geo_target_constant.target_type, suggestion.geo_target_constant.status, suggestion.locale, suggestion.reach, suggestion.search_term) end end
Perl
sub get_geo_target_constants_by_names { my ($api_client, $location_names, $locale, $country_code) = @_; my $suggest_response = $api_client->GeoTargetConstantService()->suggest({ locale => $locale, countryCode => $country_code, locationNames => Google::Ads::GoogleAds::V26::Services::GeoTargetConstantService::LocationNames ->new({ names => $location_names })}); # Iterate over all geo target constant suggestion objects and print the requested # field values for each one. foreach my $geo_target_constant_suggestion ( @{$suggest_response->{geoTargetConstantSuggestions}}) { printf "Found '%s' ('%s','%s','%s',%s) in locale '%s' with reach %d" . " for the search term '%s'.\n", $geo_target_constant_suggestion->{geoTargetConstant}{resourceName}, $geo_target_constant_suggestion->{geoTargetConstant}{name}, $geo_target_constant_suggestion->{geoTargetConstant}{countryCode}, $geo_target_constant_suggestion->{geoTargetConstant}{targetType}, $geo_target_constant_suggestion->{geoTargetConstant}{status}, $geo_target_constant_suggestion->{locale}, $geo_target_constant_suggestion->{reach}, $geo_target_constant_suggestion->{searchTerm}; } return 1; }
curl
Как настроить таргетинг кампаний на область в радиусе от местоположения
Иногда вам может потребоваться более точный таргетинг, чем по городу или стране. Например, вы можете рекламировать свои супермаркеты в радиусе 10 километров от их местоположения. В таких случаях можно использовать таргетинг в радиусе. Код для создания целевого местоположения в радиусе похож на код для добавления целевого местоположения, но вместо объекта LocationInfo нужно создать объект ProximityInfo.
Java
private static CampaignCriterion buildProximityLocation(String campaignResourceName) { Builder builder = CampaignCriterion.newBuilder().setCampaign(campaignResourceName); ProximityInfo.Builder proximityBuilder = builder.getProximityBuilder(); proximityBuilder.setRadius(10.0).setRadiusUnits(ProximityRadiusUnits.MILES); AddressInfo.Builder addressBuilder = proximityBuilder.getAddressBuilder(); addressBuilder .setStreetAddress("38 avenue de l'Opéra") .setCityName("Paris") .setPostalCode("75002") .setCountryCode("FR"); return builder.build(); }
C#
private CampaignCriterion buildProximityCriterion(string campaignResourceName) { ProximityInfo proximity = new ProximityInfo() { Address = new AddressInfo() { StreetAddress = "38 avenue de l'Opéra", CityName = "Paris", PostalCode = "75002", CountryCode = "FR" }, Radius = 10d, // Default is kilometers. RadiusUnits = ProximityRadiusUnits.Miles }; return new CampaignCriterion() { Campaign = campaignResourceName, Proximity = proximity }; }
PHP
private static function createProximityCampaignCriterionOperation(string $campaignResourceName) { // Constructs a campaign criterion as a proximity. $campaignCriterion = new CampaignCriterion([ 'proximity' => new ProximityInfo([ 'address' => new AddressInfo([ 'street_address' => '38 avenue de l\'Opéra', 'city_name' => 'Paris', 'postal_code' => '75002', 'country_code' => 'FR', ]), 'radius' => 10.0, // Default is kilometers. 'radius_units' => ProximityRadiusUnits::MILES ]), 'campaign' => $campaignResourceName ]); return new CampaignCriterionOperation(['create' => $campaignCriterion]); }
Python
def create_proximity_op( client: GoogleAdsClient, customer_id: str, campaign_id: str ) -> CampaignCriterionOperation: campaign_service: CampaignServiceClient = client.get_service( "CampaignService" ) # Create the campaign criterion. campaign_criterion_operation: CampaignCriterionOperation = client.get_type( "CampaignCriterionOperation" ) campaign_criterion: CampaignCriterion = campaign_criterion_operation.create campaign_criterion.campaign = campaign_service.campaign_path( customer_id, campaign_id ) campaign_criterion.proximity.address.street_address = "38 avenue de l'Opera" campaign_criterion.proximity.address.city_name = "Paris" campaign_criterion.proximity.address.postal_code = "75002" campaign_criterion.proximity.address.country_code = "FR" campaign_criterion.proximity.radius = 10 # Default is kilometers. campaign_criterion.proximity.radius_units = ( client.enums.ProximityRadiusUnitsEnum.MILES ) return campaign_criterion_operation
Ruby
def create_proximity(client, customer_id, campaign_id) client.operation.create_resource.campaign_criterion do |criterion| criterion.campaign = client.path.campaign(customer_id, campaign_id) criterion.proximity = client.resource.proximity_info do |proximity| proximity.address = client.resource.address_info do |address| address.street_address = "38 avenue de l'Opéra" address.city_name = "Paris" address.postal_code = "75002" address.country_code = "FR" end proximity.radius = 10 proximity.radius_units = :MILES end end end
Perl
sub create_proximity_campaign_criterion_operation { my ($campaign_resource_name) = @_; # Construct a campaign criterion as a proximity. my $campaign_criterion = Google::Ads::GoogleAds::V26::Resources::CampaignCriterion->new({ proximity => Google::Ads::GoogleAds::V26::Common::ProximityInfo->new({ address => Google::Ads::GoogleAds::V26::Common::AddressInfo->new({ streetAddress => "38 avenue de l'Opéra", cityName => "cityName", postalCode => "75002", countryCode => "FR" } ), radius => 10.0, # Default is kilometers. radiusUnits => MILES } ), campaign => $campaign_resource_name }); return Google::Ads::GoogleAds::V26::Services::CampaignCriterionService::CampaignCriterionOperation ->new({ create => $campaign_criterion }); }
curl
Получение данных о геотаргетинге
Получить области геотаргетинга для кампании можно с помощью GoogleAdsService.SearchStream. Если включить campaign_criterion.type и campaign_criterion.resource_name в предложение SELECT, вы сможете различать критерии LOCATION и PROXIMITY и записывать названия ресурсов для последующих обновлений или удалений.
SELECT
campaign_criterion.resource_name,
campaign_criterion.campaign,
campaign_criterion.type,
campaign_criterion.location.geo_target_constant,
campaign_criterion.proximity.geo_point.longitude_in_micro_degrees,
campaign_criterion.proximity.geo_point.latitude_in_micro_degrees,
campaign_criterion.proximity.radius,
campaign_criterion.proximity.radius_units,
campaign_criterion.proximity.address.street_address,
campaign_criterion.proximity.address.city_name,
campaign_criterion.proximity.address.postal_code,
campaign_criterion.proximity.address.country_code,
campaign_criterion.negative
FROM campaign_criterion
WHERE
campaign_criterion.campaign = 'customers/{customer_id}/campaigns/{campaign_id}'
AND campaign_criterion.type IN ('LOCATION', 'PROXIMITY')
Обновить геотаргетинг
Критерии местоположения в кампании нельзя изменить после ее создания, поэтому для обновления геотаргетинга кампании необходимо заменить устаревшие цели новыми в одном атомарном запросе CampaignCriterionService.MutateCampaignCriteria:
- Запросите существующие критерии
LOCATIONиPROXIMITYкампании, используя запрос GAQL в разделе Получение геотаргетинга. - Сравните существующие критерии с целевым списком.
- Для каждого устаревшего критерия создайте объект
CampaignCriterionOperation, в котором для поляremoveзадано значениеresource_nameсуществующего критерия. - Для каждого нового местоположения или области в радиусе создайте объект
CampaignCriterionOperation, в котором полеcreateзаполнено новым критериемLocationInfoилиProximityInfo. - Передайте операции
removeиcreateв одном вызовеMutateCampaignCriteria, чтобы переход произошел атомарно.
Как исключить местоположения
Вы также можете исключить LocationInfo, но не ProximityInfo. Эта функция наиболее полезна, если вы хотите настроить таргетинг на регион, но исключить субрегион (например, настроить таргетинг на всю Россию, за исключением Москвы). Чтобы исключить регион, задайте для поля negative в CampaignCriterion значение true.
Как настроить таргетинг на несколько регионов
Если вы используете LocationGroupInfo, то можете настроить таргетинг кампании на несколько географических регионов, в центре которых находятся местоположения, заданные объектами адресов или отфильтрованные по географическому региону:
- Наборы объектов адресов. Укажите
enable_customer_level_location_asset_set = true(для таргетинга на набор объектов адресов клиента) илиlocation_group_asset_sets(для таргетинга на определенные названия ресурсовAssetSet). Эти два поля нельзя задавать вместе, и ни одно из них нельзя сочетать с полемgeo_target_constants. - Радиус и единицы измерения. Радиус в
LocationGroupInfoопределяет круговую область вокруг каждого местоположения. Требуется указать какradius, так иradius_units(LocationGroupRadiusUnitsEnum):- При использовании наборов объектов адресов (
enable_customer_level_location_asset_setилиlocation_group_asset_sets) поддерживаются следующие значенияradius_units:MILLI_MILESиMETERS. - При фильтрации по
geo_target_constants(когда разрешен максимум один идентификатор критерия, а поляAssetSetне заданы) поддерживаются следующие значенияradius_units:MILESиMETERS.
- При использовании наборов объектов адресов (
Расширенные настройки геотаргетинга с помощью GeoTargetTypeSetting
Вы можете не только указать целевые и исключенные местоположения, но и уточнить, как Google Реклама сопоставляет пользователей с этими местоположениями, используя расширенные настройки. Эти настройки задаются в Campaign.GeoTargetTypeSetting.
Эта настройка состоит из двух полей:
positive_geo_target_type– определяет, как пользователи сопоставляются с местоположениями, на которые вы настраиваете таргетинг.negative_geo_target_type– определяет, как пользователи сопоставляются с исключенными местоположениями.
Настройки таргетинга (positive_geo_target_type)
Для целевых местоположений можно выбрать один из следующих вариантов, используя значения из PositiveGeoTargetTypeEnum:
PRESENCE_OR_INTEREST(рекомендуется по умолчанию)- Охватывает людей, которые, скорее всего, находятся в целевых местоположениях или регулярно их посещают, а также тех, кто проявляет интерес к этим местоположениям.
- Об интересе пользователей к месту можно судить по содержанию поисковых запросов, посещениям и контенту просматриваемых ими сайтов и страниц.
- Этот вариант обеспечивает максимальный охват.
PRESENCE:- Объявления показываются только тем, кто, скорее всего, находится в целевых местоположениях или регулярно посещает их.
- Это более строгий вариант, который подходит, если ваши товары или услуги предназначены только для тех, кто физически находится в определенном регионе.
Настройки минус-таргетинга (negative_geo_target_type)
Для местоположений, которые вы хотите исключить, используйте NegativeGeoTargetTypeEnum:
PRESENCE(рекомендуется по умолчанию)- Исключаются пользователи, которые с высокой вероятностью находятся в исключенных местоположениях.
- Пользователи, находящиеся за пределами исключенных областей, могут видеть ваши объявления, даже если они интересуются этими областями, при условии, что они соответствуют вашему положительному таргетингу.
Как управлять расширенными настройками геотаргетинга
Вы можете управлять этими настройками, обновляя объект Campaign.geo_target_type_setting. В примере ниже показана структура обновления CampaignOperation, которое задает для positive_geo_target_type значение PRESENCE:
// Conceptual structure for a Campaign update operation
operations {
update {
resource_name: "customers/{customer_id}/campaigns/{campaign_id}"
geo_target_type_setting {
positive_geo_target_type: PRESENCE
// negative_geo_target_type remains at its default PRESENCE
}
}
update_mask {
paths: "geo_target_type_setting.positive_geo_target_type"
}
}
Чтобы получить текущие настройки, включите campaign.geo_target_type_setting.positive_geo_target_type и campaign.geo_target_type_setting.negative_geo_target_type в поисковый запрос GoogleAdsService.
Настроив эти параметры, вы сможете точнее контролировать, кто видит вашу рекламу, в зависимости от того, как пользователи связаны с указанными вами географическими местоположениями. Это позволит вам лучше достигать своих бизнес-целей.
Рекомендации
- Выберите
PRESENCE, если ваши товары или услуги предназначены только для тех, кто физически находится в определенном местоположении. Например, если вы требуете, чтобы пользователи находились в магазине или заказывали местную доставку. - Выберите
PRESENCE_OR_INTEREST, если ваш товар или услуга могут быть полезны людям, которые интересуются определенным местоположением, даже если они не находятся там физически. Например, пользователь, планирующий отпуск, может интересоваться отелями в городе назначения. - Используйте исключение местоположений, чтобы уточнить охват. Если вы настраиваете таргетинг на США с помощью атрибута
PRESENCE_OR_INTEREST, но не доставляете товары в определенный штат, вы можете исключить этот штат, используя атрибутnegative=trueс критериемLocationInfo. Если в качестве значения параметраnegative_geo_target_typeзаданоPRESENCE, то объявления не будут показываться пользователям из этого штата, но будут показываться пользователям за его пределами, которые интересуются местами в США.
Дальнейшие действия
- Корректировка ставок по критериям в Руководстве по модификаторам ставок.