쇼핑 광고를 구현하는 첫 번째 단계는 쇼핑 캠페인을 만드는 것입니다. 쇼핑 캠페인을 사용하면 제품명, 가격, 매장 이름 등을 포함하여 제품 이미지가 표시된 광고를 사용자에게 게재할 수 있습니다. 쇼핑 캠페인을 만들 때는 예산, 입찰 전략, 쇼핑 설정을 지정해야 합니다.
쇼핑 캠페인을 만들려면 먼저 Google Ads 계정을 Google 판매자 센터 계정에 연결해야 합니다. 계정을 연결한 후에는 쇼핑 설정을 지정할 때 Google 판매자 센터 계정 ID를 사용할 수 있습니다.
일반 쇼핑 캠페인
제품 쇼핑 광고를 만드는 데 필요한 캠페인입니다. 제품 쇼핑 광고를 사용하면 이미지, 제목, 가격, 매장, 업체 이름을 광고에 넣을 수 있으며, 판매하는 제품별로 고유한 광고를 만들지 않아도 됩니다.
다음은 일반 쇼핑 캠페인을 설정하는 단계입니다.
- 캠페인의
advertising_channel_type
를SHOPPING
로 설정합니다. ShoppingSetting
를 만들고 필드를 설정한 후 캠페인에 추가합니다.- 포트폴리오 입찰 전략을 만들거나 캠페인 수준 입찰 전략을 설정합니다.
- 새 캠페인 예산을 만들거나 또는 기존 공유 예산을 설정합니다.
일반 쇼핑 캠페인의 경우 ShoppingSetting
는 다음 필드를 지원합니다.
필수
merchant_id
- 광고할 제품이 포함된 계정의 판매자 센터 ID입니다.
campaign_priority
- 쇼핑 캠페인의 우선순위입니다. 숫자가 더 높은 우선순위의 캠페인이 우선순위가 더 낮은 캠페인보다 우선 적용됩니다. 허용되는 값은 0과 2 사이(양 끝값 포함)입니다.
선택사항
feed_label
판매자 센터에 정의된 대로 피드 라벨에 사용되는 문자열입니다. 이 필드는 특정 판매자 센터 피드에서 제품을 선택해야 하는 경우에 사용해야 합니다. 지정하지 않으면 캠페인에서 판매자 센터의 사용 가능한 모든 피드를 사용합니다.
이전에 지원 중단된
sales_country
를 두 글자 국가 코드(XX
) 형식으로 사용했다면 대신feed_label
을(를) 사용해야 합니다. 자세한 내용은 피드 라벨 지원 도움말을 참고하세요.feed_label
에 국가 코드를 제출한다고 해서 해당 국가에 광고가 자동으로 게재되는 것은 아닙니다. 먼저 지역 위치 타겟팅을 설정해야 합니다.enable_local
이 캠페인에서 오프라인 매장에서 판매하는 제품에 대한 광고를 사용 설정하는 옵션입니다.
입찰 전략은 다음과 같이 설정할 수 있습니다.
- 포트폴리오 입찰 전략
- 캠페인, 광고그룹, 키워드 간에 공유할 수 있는 자동화된 입찰 전략입니다.
BiddingStrategyService
를 사용하여 생성됩니다. - 캠페인 입찰 전략
- 캠페인에 직접 설정된 입찰 전략입니다. 여기에는 쇼핑 캠페인과 호환되는 자동 입찰 전략이 포함될 수 있습니다.
일반 쇼핑 캠페인의 경우 다음 입찰 전략이 지원됩니다.
포트폴리오 입찰 전략
캠페인 입찰 전략
네트워크 설정
2022년 2월 28일이 포함된 주부터 일반 쇼핑 캠페인에서 network_settings.target_content_network
필드를 더 이상 지원하지 않습니다.
변형 요청에서 일반 쇼핑 캠페인에서 이 필드를 true
로 설정하면 CANNOT_TARGET_CONTENT_NETWORK
오류가 발생합니다.
자세한 내용은 Google Ads 일반 쇼핑 캠페인의 네트워크 설정 변경사항을 참고하세요.
이 코드 예에서는 일반 쇼핑 캠페인을 만드는 방법을 보여줍니다.
자바
private String addStandardShoppingCampaign( GoogleAdsClient googleAdsClient, long customerId, String budgetResourceName, long merchantCenterAccountId) { // Configures the shopping settings. ShoppingSetting shoppingSetting = ShoppingSetting.newBuilder() // Sets the priority of the campaign. Higher numbers take priority over lower numbers. // For Shopping product ad campaigns, allowed values are between 0 and 2, inclusive. .setCampaignPriority(0) .setMerchantId(merchantCenterAccountId) // Enables local inventory ads for this campaign. .setEnableLocal(true) .build(); // Create the standard shopping campaign. Campaign campaign = Campaign.newBuilder() .setName("Interplanetary Cruise #" + getPrintableDateTime()) // Configures settings related to shopping campaigns including advertising channel type // and shopping setting. .setAdvertisingChannelType(AdvertisingChannelType.SHOPPING) .setShoppingSetting(shoppingSetting) // 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 Manual CPC (with eCPC disabled). eCPC for standard // Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the // setting and behaves as if the setting was false. See this blog post for more // information: // https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html // Recommendation: Use one of the automated bidding strategies for Shopping campaigns // to help you optimize your advertising spend. More information can be found here: // https://support.google.com/google-ads/answer/6309029. .setManualCpc(ManualCpc.newBuilder().setEnhancedCpcEnabled(false).build()) // Sets the budget. .setCampaignBudget(budgetResourceName) .build(); // Creates a campaign operation. CampaignOperation operation = CampaignOperation.newBuilder().setCreate(campaign).build(); // Issues a mutate request to add the campaign. try (CampaignServiceClient campaignServiceClient = googleAdsClient.getLatestVersion().createCampaignServiceClient()) { MutateCampaignsResponse response = campaignServiceClient.mutateCampaigns( Long.toString(customerId), Collections.singletonList(operation)); MutateCampaignResult result = response.getResults(0); System.out.printf( "Added a standard shopping campaign with resource name: '%s'%n", result.getResourceName()); return result.getResourceName(); } }
C#
private string AddStandardShoppingCampaign(GoogleAdsClient client, long customerId, string budgetResourceName, long merchantCenterAccountId) { // Get the CampaignService. CampaignServiceClient campaignService = client.GetService(Services.V18.CampaignService); // Configures the shopping settings. ShoppingSetting shoppingSetting = new ShoppingSetting() { // Sets the priority of the campaign. Higher numbers take priority over lower // numbers. For Shopping Product Ad campaigns, allowed values are between 0 and 2, // inclusive. CampaignPriority = 0, MerchantId = merchantCenterAccountId, // Enables local inventory ads for this campaign. EnableLocal = true }; // Create the standard shopping campaign. Campaign campaign = new Campaign() { Name = "Interplanetary Cruise #" + ExampleUtilities.GetRandomString(), // Configures settings related to shopping campaigns including advertising channel // type and shopping setting. AdvertisingChannelType = AdvertisingChannelType.Shopping, ShoppingSetting = shoppingSetting, // 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 Manual CPC (with eCPC disabled). eCPC for standard // Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the // setting and behaves as if the setting was false. See this blog post for more // information: // https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html // Recommendation: Use one of the automated bidding strategies for Shopping // campaigns to help you optimize your advertising spend. More information can be // found here: https://support.google.com/google-ads/answer/6309029 ManualCpc = new ManualCpc() { EnhancedCpcEnabled = false }, // Sets the budget. CampaignBudget = budgetResourceName }; // Creates a campaign operation. CampaignOperation operation = new CampaignOperation() { Create = campaign }; // Issues a mutate request to add the campaign. MutateCampaignsResponse response = campaignService.MutateCampaigns(customerId.ToString(), new CampaignOperation[] { operation }); MutateCampaignResult result = response.Results[0]; Console.WriteLine("Added a standard shopping campaign with resource name: '{0}'.", result.ResourceName); return result.ResourceName; }
PHP
private static function addStandardShoppingCampaign( GoogleAdsClient $googleAdsClient, int $customerId, string $budgetResourceName, int $merchantCenterAccountId ) { // Creates a standard shopping campaign. $campaign = new Campaign([ 'name' => 'Interplanetary Cruise Campaign #' . Helper::getPrintableDatetime(), // Configures settings related to shopping campaigns including advertising channel type // and shopping setting. 'advertising_channel_type' => AdvertisingChannelType::SHOPPING, // Configures the shopping settings. 'shopping_setting' => new ShoppingSetting([ // Sets the priority of the campaign. Higher numbers take priority over lower // numbers. For Shopping product ad campaigns, allowed values are between 0 and 2, // inclusive. 'campaign_priority' => 0, 'merchant_id' => $merchantCenterAccountId, // Enables local inventory ads for this campaign 'enable_local' => true ]), // 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 Manual CPC (with eCPC disabled). eCPC for standard // Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the // setting and behaves as if the setting was false. See this blog post for more // information: // https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html // Recommendation: Use one of the automated bidding strategies for Shopping campaigns // to help you optimize your advertising spend. More information can be found here: // https://support.google.com/google-ads/answer/6309029. 'manual_cpc' => new ManualCpc(['enhanced_cpc_enabled' => false]), // Sets the budget. 'campaign_budget' => $budgetResourceName ]); // Creates a campaign operation. $campaignOperation = new CampaignOperation(); $campaignOperation->setCreate($campaign); // Issues a mutate request to add campaigns. $campaignServiceClient = $googleAdsClient->getCampaignServiceClient(); $response = $campaignServiceClient->mutateCampaigns( MutateCampaignsRequest::build($customerId, [$campaignOperation]) ); /** @var Campaign $addedCampaign */ $addedCampaign = $response->getResults()[0]; printf( "Added a standard shopping campaign with resource name '%s'.%s", $addedCampaign->getResourceName(), PHP_EOL ); return $addedCampaign->getResourceName(); }
Python
def add_standard_shopping_campaign( client, customer_id, budget_resource_name, merchant_center_account_id ): """Creates a new standard shopping campaign in the specified client account.""" campaign_service = client.get_service("CampaignService") # Create standard shopping campaign. campaign_operation = client.get_type("CampaignOperation") campaign = campaign_operation.create campaign.name = f"Interplanetary Cruise Campaign {uuid.uuid4()}" # Configures settings related to shopping campaigns including advertising # channel type and shopping setting. campaign.advertising_channel_type = ( client.enums.AdvertisingChannelTypeEnum.SHOPPING ) campaign.shopping_setting.merchant_id = merchant_center_account_id # Sets the priority of the campaign. Higher numbers take priority over lower # numbers. For standard shopping campaigns, allowed values are between 0 and # 2, inclusive. campaign.shopping_setting.campaign_priority = 0 # Enables local inventory ads for this campaign. campaign.shopping_setting.enable_local = True # 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 # Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for # standard Shopping campaigns is deprecated. If eCPC is set to true, Google # Ads ignores the setting and behaves as if the setting was false. See this # blog post for more information: # https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html # Recommendation: Use one of the automated bidding strategies for Shopping # campaigns to help you optimize your advertising spend. More information # can be found here: https://support.google.com/google-ads/answer/6309029 campaign.manual_cpc.enhanced_cpc_enabled = False # Sets the budget. campaign.campaign_budget = budget_resource_name # Add the campaign. campaign_response = campaign_service.mutate_campaigns( customer_id=customer_id, operations=[campaign_operation] ) campaign_resource_name = campaign_response.results[0].resource_name print( "Added a standard shopping campaign with resource name " f"'{campaign_resource_name}'." ) return campaign_resource_name
Ruby
def add_standard_shopping_campaign( client, customer_id, budget_name, merchant_center_id) operation = client.operation.create_resource.campaign do |campaign| campaign.name = "Interplanetary Cruise Campaign ##{(Time.new.to_f * 1000).to_i}" # Shopping campaign specific settings campaign.advertising_channel_type = :SHOPPING campaign.shopping_setting = client.resource.shopping_setting do |shopping_setting| shopping_setting.merchant_id = merchant_center_id shopping_setting.campaign_priority = 0 shopping_setting.enable_local = true end campaign.status = :PAUSED # Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for standard # Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the # setting and behaves as if the setting was false. See this blog post for more # information: # https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html campaign.manual_cpc = client.resource.manual_cpc do |manual_cpc| manual_cpc.enhanced_cpc_enabled = false end campaign.campaign_budget = budget_name end service = client.service.campaign response = service.mutate_campaigns( customer_id: customer_id, operations: [operation], ) campaign_name = response.results.first.resource_name puts "Added a standard shopping campaign with resource name #{campaign_name}." campaign_name end
Perl
sub add_standard_shopping_campaign { my ($api_client, $customer_id, $budget_resource_name, $merchant_center_account_id) = @_; # Create a standard shopping campaign. my $campaign = Google::Ads::GoogleAds::V18::Resources::Campaign->new({ name => "Interplanetary Cruise Campaign #" . uniqid(), # Configure settings related to shopping campaigns including advertising # channel type and shopping setting. advertisingChannelType => SHOPPING, shoppingSetting => Google::Ads::GoogleAds::V18::Resources::ShoppingSetting->new({ merchantId => $merchant_center_account_id, # Set the priority of the campaign. Higher numbers take priority over # lower numbers. For standard shopping campaigns, allowed values are # between 0 and 2, inclusive. campaignPriority => 0, # Enable local inventory ads for this campaign. enableLocal => "true" } ), # 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::V18::Enums::CampaignStatusEnum::PAUSED, # Set the bidding strategy to Manual CPC (with eCPC disabled). eCPC for # standard Shopping campaigns is deprecated. If eCPC is set to true, # Google Ads ignores the setting and behaves as if the setting was false. # See this blog post for more information: # https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html # Recommendation: Use one of the automated bidding strategies for shopping # campaigns to help you optimize your advertising spend. More information # can be found here: https://support.google.com/google-ads/answer/6309029. manualCpc => Google::Ads::GoogleAds::V18::Common::ManualCpc->new( {enhancedCpcEnabled => "false"} ), # Set the budget. campaignBudget => $budget_resource_name }); # Create a campaign operation. my $campaign_operation = Google::Ads::GoogleAds::V18::Services::CampaignService::CampaignOperation-> new({create => $campaign}); # Add the campaign. my $campaign_resource_name = $api_client->CampaignService()->mutate({ customerId => $customer_id, operations => [$campaign_operation]})->{results}[0]{resourceName}; printf "Added a standard shopping campaign with resource name: '%s'.\n", $campaign_resource_name; return $campaign_resource_name; }