Create a Campaign Budget

The following example creates a new average daily budget for a campaign.

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 
 . 
 V21 
 . 
 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::V21::Resources:: 
 CampaignBudget 
 - 
> new 
 ({ 
  
 name 
  
 = 
>  
 "Interplanetary budget #" 
  
 . 
  
 uniqid 
 (), 
  
 deliveryMethod 
  
 = 
>  
 STANDARD 
 , 
  
 amountMicros 
  
 = 
>  
 500000 
  
 }); 
 # Create a campaign budget operation. 
 my 
  
 $campaign_budget_operation 
  
 = 
  
 Google::Ads::GoogleAds::V21::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 
 ]}); 
  
  

Campaign budget recommendations

The Google Ads API provides some recommendation types to help you optimize your campaign budgets:

For additional recommendation types and guidance on working with recommendations in the Google Ads API, visit the Optimization score and recommendations guide.

Create a Mobile Website
View Site in Mobile | Classic
Share by: