Kiểm tra để đảm bảo bạn đáp ứng các yêu cầu tối thiểu: Thành phần của chiến dịch Tạo nhu cầu phải đáp ứng các tiêu chuẩn rất cao về chất lượng, vì chúng sẽ được phân phát trên những nền tảng rất trực quan và chuyên về giải trí (như Khám phá và YouTube).
Sau đây là các bước để tạo chiến dịch Tạo nhu cầu:
- Lập ngân sách.
- Tạo chiến dịch Tạo nhu cầu bằng các chiến lược đặt giá thầu phù hợp.
- Tạo nhóm quảng cáo không có loại.
- Tạo đối tượng.
- Tạo thành phần và quảng cáo Tạo nhu cầu.
Tạo ngân sách
Tạo ngân sách. Xin lưu ý rằng chiến dịch Tạo nhu cầu không thể sử dụng ngân sách dùng chung. Bạn nên có ngân sách hằng ngày gấp ít nhất 15 lần giá thầu CPA mục tiêu dự kiến. Tìm hiểu thêm.
Java
private static String addCampaignBudget(GoogleAdsClient googleAdsClient, long customerId) { CampaignBudget budget = CampaignBudget.newBuilder() .setName("Interplanetary Cruise Budget #" + getPrintableDateTime()) .setDeliveryMethod(BudgetDeliveryMethod.STANDARD) .setAmountMicros(500_000) .build(); CampaignBudgetOperation op = CampaignBudgetOperation.newBuilder().setCreate(budget).build(); try (CampaignBudgetServiceClient campaignBudgetServiceClient = googleAdsClient.getLatestVersion().createCampaignBudgetServiceClient()) { MutateCampaignBudgetsResponse response = campaignBudgetServiceClient.mutateCampaignBudgets( Long.toString(customerId), ImmutableList.of(op)); String budgetResourceName = response.getResults(0).getResourceName(); System.out.printf("Added budget: %s%n", budgetResourceName); return budgetResourceName; } }
C#
private static string CreateBudget(GoogleAdsClient client, long customerId) { // Get the BudgetService. CampaignBudgetServiceClient budgetService = client.GetService( Services.V18.CampaignBudgetService); // Create the campaign budget. CampaignBudget budget = new CampaignBudget() { Name = "Interplanetary Cruise Budget #" + ExampleUtilities.GetRandomString(), DeliveryMethod = BudgetDeliveryMethod.Standard, AmountMicros = 500000 }; // Create the operation. CampaignBudgetOperation budgetOperation = new CampaignBudgetOperation() { Create = budget }; // Create the campaign budget. MutateCampaignBudgetsResponse response = budgetService.MutateCampaignBudgets( customerId.ToString(), new CampaignBudgetOperation[] { budgetOperation }); return response.Results[0].ResourceName; }
PHP
private static function addCampaignBudget(GoogleAdsClient $googleAdsClient, int $customerId) { // Creates a campaign budget. $budget = new CampaignBudget([ 'name' => 'Interplanetary Cruise Budget #' . Helper::getPrintableDatetime(), 'delivery_method' => BudgetDeliveryMethod::STANDARD, 'amount_micros' => 500000 ]); // Creates a campaign budget operation. $campaignBudgetOperation = new CampaignBudgetOperation(); $campaignBudgetOperation->setCreate($budget); // Issues a mutate request. $campaignBudgetServiceClient = $googleAdsClient->getCampaignBudgetServiceClient(); $response = $campaignBudgetServiceClient->mutateCampaignBudgets( MutateCampaignBudgetsRequest::build($customerId, [$campaignBudgetOperation]) ); /** @var CampaignBudget $addedBudget */ $addedBudget = $response->getResults()[0]; printf("Added budget named '%s'%s", $addedBudget->getResourceName(), PHP_EOL); return $addedBudget->getResourceName(); }
Python
# Create a budget, which can be shared by multiple campaigns. campaign_budget_operation = client.get_type("CampaignBudgetOperation") campaign_budget = campaign_budget_operation.create campaign_budget.name = f"Interplanetary Budget {uuid.uuid4()}" campaign_budget.delivery_method = ( client.enums.BudgetDeliveryMethodEnum.STANDARD ) campaign_budget.amount_micros = 500000 # Add budget. try: campaign_budget_response = ( campaign_budget_service.mutate_campaign_budgets( customer_id=customer_id, operations=[campaign_budget_operation] ) ) except GoogleAdsException as ex: handle_googleads_exception(ex)
Ruby
# Create a budget, which can be shared by multiple campaigns. campaign_budget = client.resource.campaign_budget do |cb| cb.name = "Interplanetary Budget #{(Time.new.to_f * 1000).to_i}" cb.delivery_method = :STANDARD cb.amount_micros = 500000 end operation = client.operation.create_resource.campaign_budget(campaign_budget) # Add budget. return_budget = client.service.campaign_budget.mutate_campaign_budgets( customer_id: customer_id, operations: [operation], )
Perl
# Create a campaign budget, which can be shared by multiple campaigns. my $campaign_budget = Google::Ads::GoogleAds::V18::Resources::CampaignBudget->new({ name => "Interplanetary budget #" . uniqid(), deliveryMethod => STANDARD, amountMicros => 500000 }); # Create a campaign budget operation. my $campaign_budget_operation = Google::Ads::GoogleAds::V18::Services::CampaignBudgetService::CampaignBudgetOperation ->new({create => $campaign_budget}); # Add the campaign budget. my $campaign_budgets_response = $api_client->CampaignBudgetService()->mutate({ customerId => $customer_id, operations => [$campaign_budget_operation]});
Tạo chiến dịch và chiến lược đặt giá thầu
Sau khi tạo ngân sách, bạn có thể tiếp tục tạo chiến dịch.
Kể từ phiên bản 17 của API Google Ads, chiến dịch Tạo nhu cầu sẽ có AdvertisingChannelType
là DEMAND_GEN
. Không được đặt AdvertisingChannelSubType
.
Thiết lập mục tiêu lượt chuyển đổi cho chiến dịch.
Các chiến lược đặt giá thầu được hỗ trợ là tối đa hoá số lượt nhấp, CPA mục tiêu, tối đa hoá lượt chuyển đổi và lợi tức mục tiêu trên chi tiêu quảng cáo.
Tạo nhóm quảng cáo
Tạo một nhóm quảng cáo không có loại và đính kèm nhóm quảng cáo đó vào chiến dịch Khám phá.
Tạo đối tượng
Tạo và đính kèm đối tượng bằng AdGroupCriterion
.
Tạo thành phần và quảng cáo
Có 3 loại quảng cáo dành cho chiến dịch Tạo nhu cầu:
Trước tiên, hãy tạo thành phần cho các loại quảng cáo này. Hãy xem Hướng dẫn về các phương pháp hay nhất và quy cách về thành phần của chiến dịch Tạo nhu cầu để biết danh sách thành phần có sẵn cho từng loại quảng cáo Tạo nhu cầu. Hướng dẫn này có hướng dẫn về những thành phần bắt buộc và số lượng thành phần được đề xuất. Bạn cũng nên đánh giá hiệu suất của thành phần để tinh chỉnh mẫu quảng cáo: mục báo cáo trình bày cách truy xuất các chỉ số hiệu suất cho chiến dịch Tạo nhu cầu.
DemandGenCarouselAdInfo
có một thành phần chuyên biệt bổ sung có tên là
AdDemandGenCarouselCardAsset
.
Sau khi tạo thành phần và quảng cáo, hãy thêm quảng cáo vào nhóm quảng cáo.