Istnieją 2 rodzaje budżetów: średnie budżety dzienne i budżety ogólne kampanii. Możesz utworzyć dowolny typ za pomocą narzędzia
CampaignBudgetService.
Tworzenie średniego budżetu dziennego
Jest to średnia kwota, jaką chcesz wydawać dziennie na tę kampanię.
Średni budżet dzienny możesz ustawić na poziomie amount_micros CampaignBudget. Wartość domyślna parametru budget
period to
DAILY.
W przykładzie poniżej tworzymy nowy średni budżet dzienny kampanii.
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.V23.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: CampaignBudgetOperation = client.get_type( "CampaignBudgetOperation" ) campaign_budget: CampaignBudget = 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. campaign_budget_response: MutateCampaignBudgetsResponse try: budget_operations: List[CampaignBudgetOperation] = [ campaign_budget_operation ] campaign_budget_response = ( campaign_budget_service.mutate_campaign_budgets( customer_id=customer_id, operations=budget_operations, ) ) 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::V23::Resources::CampaignBudget->new({ name => "Interplanetary budget #" . uniqid(), deliveryMethod => STANDARD, amountMicros => 500000 }); # Create a campaign budget operation. my $campaign_budget_operation = Google::Ads::GoogleAds::V23::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]});
Tworzenie łącznego budżetu kampanii
Jest to łączna kwota, którą chcesz wydać w okresie trwania kampanii. Aby utworzyć łączny budżet kampanii, ustaw budżet
period na
CUSTOM_PERIOD
i ustaw
total_amount_micros.
Łącznych budżetów kampanii nie można udostępniać innym kampaniom, więc podczas tworzenia budżetu z wartością period równą CUSTOM_PERIOD musisz ustawić parametr
explicitly_shared na false.
Podczas kodowania pola są takie same jak w przypadku średniego budżetu dziennego, z wyjątkiem pól period i total_amount_micros.
Rekomendacje dotyczące budżetu kampanii
Interfejs Google Ads API udostępnia kilka typów rekomendacji, które pomagają optymalizować budżety kampanii:
CAMPAIGN_BUDGETsugeruje nową kwotę budżetu w przypadku kampanii z ograniczonym budżetem.MOVE_UNUSED_BUDGETwskazuje możliwości przesunięcia nadwyżki budżetu z jednej kampanii do innej kampanii z ograniczonym budżetem.MARGINAL_ROI_CAMPAIGN_BUDGETsugeruje nową kwotę budżetu w przypadku kampanii, w których przypadku przewiduje się wzrost ROI po dostosowaniu budżetu.FORECASTING_CAMPAIGN_BUDGETsugeruje nową kwotę budżetu w przypadku kampanii, które w przyszłości mogą być ograniczone z powodu budżetu.
Więcej typów rekomendacji i wskazówki dotyczące pracy z rekomendacjami w interfejsie Google Ads API znajdziesz w przewodniku Wynik optymalizacji i rekomendacje.