Es gibt zwei Arten von Budgets: durchschnittliche Tagesbudgets und Gesamtbudgets von Kampagnen. Sie können beide Typen mit CampaignBudgetService erstellen.
Durchschnittliches Tagesbudget erstellen
Das ist der durchschnittliche Betrag, den Sie pro Tag für eine Kampagne auszugeben bereit sind.
Sie können ein durchschnittliches Tagesbudget im Feld amount_micros von CampaignBudget festlegen. Das Budget period ist standardmäßig auf DAILY festgelegt.
Da explicitly_shared standardmäßig auf true festgelegt wird, wenn es in einem create-Vorgang weggelassen wird, müssen Sie explicitly_shared explizit auf false festlegen, um ein nicht gemeinsames Budget für eine einzelne Kampagne zu erstellen. Das folgende Beispiel zeigt, wie das geht:
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.V25.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::V25::Resources::CampaignBudget->new({ name => "Interplanetary budget #" . uniqid(), deliveryMethod => STANDARD, amountMicros => 500000 }); # Create a campaign budget operation. my $campaign_budget_operation = Google::Ads::GoogleAds::V25::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]});
curl
Gesamtbudget der Kampagne festlegen
Das ist der Gesamtbetrag, den Sie während der gesamten Laufzeit der Kampagne ausgeben möchten. Wenn Sie ein Gesamtbudget für die Kampagne erstellen möchten, legen Sie das Budget period auf CUSTOM_PERIOD und total_amount_micros fest.
Gesamtbudgets für Kampagnen können nicht für mehrere Kampagnen verwendet werden. Daher müssen Sie explicitly_shared auf false festlegen, wenn Sie ein Budget mit einem period von CUSTOM_PERIOD erstellen.
Bei der Programmierung sind die Felder dieselben wie für ein durchschnittliches Tagesbudget, mit Ausnahme von period und total_amount_micros.
Empfehlungen zum Kampagnenbudget
Die Google Ads API bietet verschiedene Empfehlungstypen, mit denen Sie Ihre Kampagnenbudgets optimieren können:
CAMPAIGN_BUDGETschlägt einen neuen Budgetbetrag für Kampagnen mit beschränktem Budget vor.MOVE_UNUSED_BUDGETbietet Möglichkeiten, überschüssiges Budget von einer Kampagne in eine andere Kampagne mit beschränktem Budget umzuverteilen.MARGINAL_ROI_CAMPAIGN_BUDGETschlägt einen neuen Budgetbetrag für Kampagnen vor, deren ROI sich voraussichtlich durch eine Budgetanpassung steigern lässt.FORECASTING_CAMPAIGN_BUDGETschlägt ein neues Budget für Kampagnen vor, die in Zukunft voraussichtlich ein beschränktes Budget haben werden.
Weitere Empfehlungstypen und Informationen zum Arbeiten mit Empfehlungen in der Google Ads API finden Sie im Leitfaden Optimierungsfaktor und Empfehlungen.