Kampagnenbudgets erstellen

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 diese Kampagne ausgeben möchten. Sie können ein durchschnittliches Tagesbudget von CampaignBudget mit amount_micros festlegen. Das Budget period ist standardmäßig auf DAILY festgelegt.

Im folgenden Beispiel wird ein neues durchschnittliches Tagesbudget für eine Kampagne erstellt.

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]});
      

Gesamtbudget für die Kampagne erstellen

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. Sie müssen also explicitly_shared auf false festlegen, wenn Sie ein Budget mit dem period 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 einige Empfehlungstypen, mit denen Sie Ihre Kampagnenbudgets optimieren können:

  • CAMPAIGN_BUDGET schlägt einen neuen Budgetbetrag für Kampagnen mit beschränktem Budget vor.

  • MOVE_UNUSED_BUDGET Hier werden Möglichkeiten aufgezeigt, überschüssiges Budget von einer Kampagne auf eine andere Kampagne mit beschränktem Budget zu übertragen.

  • MARGINAL_ROI_CAMPAIGN_BUDGET schlägt einen neuen Budgetbetrag für Kampagnen vor, deren ROI sich voraussichtlich durch eine Budgetanpassung steigern lässt.

  • FORECASTING_CAMPAIGN_BUDGET schlägt einen neuen Budgetbetrag für Kampagnen vor, die in Zukunft voraussichtlich durch das Budget eingeschränkt werden.

Weitere Empfehlungstypen und Anleitungen zum Arbeiten mit Empfehlungen in der Google Ads API finden Sie im Leitfaden Optimierungsfaktor und Empfehlungen.