Assign or Update a Bidding Strategy

For Hotel ads, a bidding strategy can be assigned for an individual campaign.

Details about choosing bidding strategies for Hotel ads can be found in Bidding overview for Hotel ads . After becoming familiar with bidding strategies, you can use the Google Ads API to assign and update Hotel campaign bidding strategies.

Assign a bidding strategy

To assign a strategy as part of creating a new Hotel campaign, follow these steps:

  1. Choose a campaign_bidding_strategy . The following strategies can be used for Hotel ads:

  2. Determine the field name-value pair that you want to use for the chosen strategy.

  3. Set the strategy when creating the new campaign. For example, in Java, call the setter method for the campaign_bidding_strategy field (the method name convention is set campaign_bidding_strategy ) from within a builder of a Campaign instance.

    For a commission strategy, when creating the new campaign remember to add an additional statement that sets the PaymentMode .

This example demonstrates how to set a percent_cpc bidding strategy when creating a new campaign:

Java

 // Creates the campaign. 
 Campaign 
  
 campaign 
  
 = 
  
 Campaign 
 . 
 newBuilder 
 () 
  
 . 
 setName 
 ( 
 "Interplanetary Cruise #" 
  
 + 
  
 getPrintableDateTime 
 ()) 
  
 // Configures settings related to hotel campaigns including advertising channel type 
  
 // and hotel setting info. 
  
 . 
 setAdvertisingChannelType 
 ( 
 AdvertisingChannelType 
 . 
 HOTEL 
 ) 
  
 . 
 setHotelSetting 
 ( 
 hotelSettingInfo 
 ) 
  
 // Recommendation: Sets the campaign to PAUSED when creating it to prevent 
  
 // the ads from immediately serving. Set to ENABLED once you've added 
  
 // targeting and the ads are ready to serve 
  
 . 
 setStatus 
 ( 
 CampaignStatus 
 . 
 PAUSED 
 ) 
  
 // Sets the bidding strategy to Percent CPC. Only Manual CPC and Percent CPC can be used 
  
 // for hotel campaigns. 
  
 . 
 setPercentCpc 
 ( 
  
 PercentCpc 
 . 
 newBuilder 
 (). 
 setCpcBidCeilingMicros 
 ( 
 cpcBidCeilingMicroAmount 
 ). 
 build 
 ()) 
  
 // Sets the budget. 
  
 . 
 setCampaignBudget 
 ( 
 budgetResourceName 
 ) 
  
 // Adds the networkSettings configured above. 
  
 . 
 setNetworkSettings 
 ( 
 networkSettings 
 ) 
  
 // Declares whether this campaign serves political ads targeting the EU. 
  
 . 
 setContainsEuPoliticalAdvertising 
 ( 
 DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING 
 ) 
  
 . 
 build 
 (); 
  
  

C#

 // Create a campaign. 
 Campaign 
  
 campaign 
  
 = 
  
 new 
  
 Campaign 
 () 
 { 
  
 Name 
  
 = 
  
 "Interplanetary Cruise Campaign #" 
  
 + 
  
 ExampleUtilities 
 . 
 GetRandomString 
 (), 
  
 // Configure settings related to hotel campaigns including advertising channel type 
  
 // and hotel setting info. 
  
 AdvertisingChannelType 
  
 = 
  
 AdvertisingChannelType 
 . 
 Hotel 
 , 
  
 HotelSetting 
  
 = 
  
 new 
  
 HotelSettingInfo 
 () 
  
 { 
  
 HotelCenterId 
  
 = 
  
 hotelCenterAccountId 
  
 }, 
  
 // Recommendation: Set the campaign to PAUSED when creating it to prevent 
  
 // the ads from immediately serving. Set to ENABLED once you've added 
  
 // targeting and the ads are ready to serve. 
  
 Status 
  
 = 
  
 CampaignStatus 
 . 
 Paused 
 , 
  
 // Sets the bidding strategy to PercentCpc. Only Manual CPC and Percent CPC can 
  
 // be used for hotel campaigns. 
  
 PercentCpc 
  
 = 
  
 new 
  
 PercentCpc 
 () 
  
 { 
  
 CpcBidCeilingMicros 
  
 = 
  
 cpcBidCeilingMicroAmount 
  
 }, 
  
 // Set the budget. 
  
 CampaignBudget 
  
 = 
  
 budgetResourceName 
 , 
  
 // Configure the campaign network options. Only Google Search is allowed for 
  
 // hotel campaigns. 
  
 NetworkSettings 
  
 = 
  
 new 
  
 NetworkSettings 
 () 
  
 { 
  
 TargetGoogleSearch 
  
 = 
  
 true 
  
 }, 
  
 // Declare whether or not this campaign contains political ads targeting the EU. 
  
 ContainsEuPoliticalAdvertising 
  
 = 
  
 EuPoliticalAdvertisingStatus 
 . 
 DoesNotContainEuPoliticalAdvertising 
 , 
 }; 
  
  

PHP

 // Creates a campaign. 
 $campaign = new Campaign([ 
 'name' => 'Interplanetary Cruise Campaign #' . Helper::getPrintableDatetime(), 
 // Configures settings related to hotel campaigns including advertising channel type 
 // and hotel setting info. 
 'advertising_channel_type' => AdvertisingChannelType::HOTEL, 
 'hotel_setting' => new HotelSettingInfo(['hotel_center_id' => $hotelCenterAccountId]), 
 // Recommendation: Set the campaign to PAUSED when creating it to prevent 
 // the ads from immediately serving. Set to ENABLED once you've added 
 // targeting and the ads are ready to serve. 
 'status' => CampaignStatus::PAUSED, 
 // Sets the bidding strategy to PercentCpc. Only Manual CPC and Percent CPC can be used 
 // for hotel campaigns. 
 'percent_cpc' => new PercentCpc([ 
 'cpc_bid_ceiling_micros' => $cpcBidCeilingMicroAmount 
 ]), 
 // Sets the budget. 
 'campaign_budget' => $budgetResourceName, 
 // Configures the campaign network options. Only Google Search is allowed for 
 // hotel campaigns. 
 'network_settings' => new NetworkSettings([ 
 'target_google_search' => true, 
 ]), 
 // Declare whether or not this campaign serves political ads targeting the EU. 
 'contains_eu_political_advertising' = 
> EuPoliticalAdvertisingStatus::DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING 
 ]);  
 

Python

 # Create campaign. 
 campaign_operation 
 : 
 CampaignOperation 
 = 
 client 
 . 
 get_type 
 ( 
 "CampaignOperation" 
 ) 
 campaign 
 : 
 Campaign 
 = 
 campaign_operation 
 . 
 create 
 campaign 
 . 
 name 
 = 
 f 
 "Interplanetary Cruise Campaign 
 { 
 uuid 
 . 
 uuid4 
 () 
 } 
 " 
 # Configures settings related to hotel campaigns including advertising 
 # channel type and hotel setting info. 
 campaign 
 . 
 advertising_channel_type 
 = 
 ( 
 client 
 . 
 enums 
 . 
 AdvertisingChannelTypeEnum 
 . 
 HOTEL 
 ) 
 campaign 
 . 
 hotel_setting 
 . 
 hotel_center_id 
 = 
 hotel_center_account_id 
 # Recommendation: Set the campaign to PAUSED when creating it to prevent the 
 # ads from immediately serving. Set to ENABLED once you've added targeting 
 # and the ads are ready to serve. 
 campaign 
 . 
 status 
 = 
 client 
 . 
 enums 
 . 
 CampaignStatusEnum 
 . 
 PAUSED 
 # Set the bidding strategy to PercentCpc. Only Manual CPC and Percent CPC 
 # can be used for hotel campaigns. 
 campaign 
 . 
 percent_cpc 
 . 
 cpc_bid_ceiling_micros 
 = 
 cpc_bid_ceiling_micro_amount 
 # Sets the budget. 
 campaign 
 . 
 campaign_budget 
 = 
 budget_resource_name 
 # Set the campaign network options. Only Google Search is allowed for hotel 
 # campaigns. 
 campaign 
 . 
 network_settings 
 . 
 target_google_search 
 = 
 True 
 # Declare whether or not this campaign serves political ads targeting the 
 # EU. Valid values are: 
 #   CONTAINS_EU_POLITICAL_ADVERTISING 
 #   DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING 
 campaign 
 . 
 contains_eu_political_advertising 
 = 
 ( 
 client 
 . 
 enums 
 . 
 EuPoliticalAdvertisingStatusEnum 
 . 
 DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING 
 ) 
  

Ruby

 # Create a campaign. 
 campaign_operation 
  
 = 
  
 client 
 . 
 operation 
 . 
 create_resource 
 . 
 campaign 
  
 do 
  
 | 
 c 
 | 
  
 c 
 . 
 name 
  
 = 
  
 generate_random_name_field 
 ( 
 "Interplanetary Cruise Campaign" 
 ) 
  
 # Configure settings related to hotel campaigns. 
  
 c 
 . 
 advertising_channel_type 
  
 = 
  
 :HOTEL 
  
 c 
 . 
 hotel_setting 
  
 = 
  
 client 
 . 
 resource 
 . 
 hotel_setting_info 
  
 do 
  
 | 
 hsi 
 | 
  
 hsi 
 . 
 hotel_center_id 
  
 = 
  
 hotel_center_account_id 
  
 end 
  
 # Recommendation: Set the campaign to PAUSED when creating it to prevent the 
  
 # ads from immediately serving. Set to ENABLED once you've added targeting and 
  
 # the ads are ready to serve. 
  
 c 
 . 
 status 
  
 = 
  
 :PAUSED 
  
 # Set the bidding strategy to PercentCpc. Only Manual CPC and Percent CPC can 
  
 # be used for hotel campaigns. 
  
 c 
 . 
 percent_cpc 
  
 = 
  
 client 
 . 
 resource 
 . 
 percent_cpc 
  
 do 
  
 | 
 pcpc 
 | 
  
 pcpc 
 . 
 cpc_bid_ceiling_micros 
  
 = 
  
 cpc_bid_ceiling_micro_amount 
  
 end 
  
 # Set the budget. 
  
 c 
 . 
 campaign_budget 
  
 = 
  
 budget_resource 
  
 # Configures the campaign network options. Only Google Search is allowed for 
  
 # hotel campaigns. 
  
 c 
 . 
 network_settings 
  
 = 
  
 client 
 . 
 resource 
 . 
 network_settings 
  
 do 
  
 | 
 ns 
 | 
  
 ns 
 . 
 target_google_search 
  
 = 
  
 true 
  
 end 
  
 # Declare whether or not this campaign serves political ads targeting the EU. 
  
 # Valid values are CONTAINS_EU_POLITICAL_ADVERTISING and 
  
 # DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING. 
  
 c 
 . 
 contains_eu_political_advertising 
  
 = 
  
 :DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING 
 end  
 
 . 
 rb 
  

Perl

 # Create a hotel campaign. 
 my 
  
 $campaign 
  
 = 
  
 Google::Ads::GoogleAds::V21::Resources:: 
 Campaign 
 - 
> new 
 ({ 
  
 name 
  
 = 
>  
 "Interplanetary Cruise Campaign #" 
  
 . 
  
 uniqid 
 (), 
  
 # Configure settings related to hotel campaigns including advertising 
  
 # channel type and hotel setting info. 
  
 advertisingChannelType 
  
 = 
>  
 HOTEL 
 , 
  
 hotelSetting 
  
 = 
>  
 Google::Ads::GoogleAds::V21::Resources:: 
 HotelSettingInfo 
 - 
> new 
 ({ 
  
 hotelCenterId 
  
 = 
>  
 $hotel_center_account_id 
  
 } 
  
 ), 
  
 # Recommendation: Set the campaign to PAUSED when creating it to prevent 
  
 # the ads from immediately serving. Set to ENABLED once you've added 
  
 # targeting and the ads are ready to serve. 
  
 status 
  
 = 
>  
 Google::Ads::GoogleAds::V21::Enums::CampaignStatusEnum:: 
 PAUSED 
 , 
  
 # Set the bidding strategy to PercentCpc. Only Manual CPC and Percent CPC 
  
 # can be used for hotel campaigns. 
  
 percentCpc 
  
 = 
>  
 Google::Ads::GoogleAds::V21::Common:: 
 PercentCpc 
 - 
> new 
 ( 
  
 { 
 cpcBidCeilingMicros 
  
 = 
>  
 $cpc_bid_ceiling_micro_amount 
 } 
  
 ), 
  
 # Declare whether or not this campaign serves political ads targeting the EU. 
  
 # Valid values are CONTAINS_EU_POLITICAL_ADVERTISING and 
  
 # DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING. 
  
 containsEuPoliticalAdvertising 
  
 = 
>  
 DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING 
 , 
  
 # Set the budget. 
  
 campaignBudget 
  
 = 
>  
 $budget_resource_name 
 , 
  
 # Configure the campaign network options. Only Google Search is allowed for 
  
 # hotel campaigns. 
  
 networkSettings 
  
 = 
>  
 Google::Ads::GoogleAds::V21::Resources:: 
 NetworkSettings 
 - 
> new 
 ({ 
  
 targetGoogleSearch 
  
 = 
>  
 "true" 
  
 })}); 
  
  

Update a bidding strategy

To update a campaign's bidding strategy, in a CampaignOperation.update , set the fields of the Campaign as described in Assign a bidding strategy .

Design a Mobile Site
View Site in Mobile | Classic
Share by: