Google Ads: create campaign
create_campaignCreates a new Google Ads campaign with a budget.
SEARCH campaigns are created with Google search on, Search partners off,
the Display Network off, and location targeting set to PRESENCE (people
in the targeted locations). Pass search_partners, display_network or
geo_target_type to choose other values. On a campaign of any other
channel type, each of these three settings is set only when its argument
is passed.
Search campaigns have no language setting: Google Ads removed it in late
September 2026 and matches Search ads to searchers by the language the
ads are written in, so write the ads in the language customers search
in. Searches in another language that cost money are stopped with
add_negative_keywords. A DISPLAY or VIDEO campaign is created with no
language setting (people who use any language); update_campaign with
languages sets one.
The budget and the campaign are created together in one request, so if
Google refuses the campaign no budget is left behind. The budget belongs
to this campaign alone (it is not a shared budget). A channel type or
bidding strategy outside the lists below, or a target missing or given
to the wrong strategy, is refused before anything is sent.
Args:
customer_id: The Google Ads customer ID (numbers only, no hyphens).
name: The name for the new campaign.
budget_amount_micros: Daily budget in micros of the account's currency (10000000 = 10.00: ₹10 on an INR account, $10 on a USD one).
advertising_channel_type: Channel type. One of: SEARCH, DISPLAY, SHOPPING, VIDEO, MULTI_CHANNEL. Default: SEARCH. For Performance Max use create_performance_max_campaign.
status: Initial campaign status: PAUSED, the only status a build takes. Every campaign is built paused, and the user switches it on in Google Ads; ENABLED is refused, and nothing in that call runs. Default: PAUSED.
bidding_strategy_type: Bidding strategy. One of: MANUAL_CPC, MAXIMIZE_CONVERSIONS, MAXIMIZE_CONVERSION_VALUE, TARGET_CPA, TARGET_ROAS, TARGET_SPEND. Default: MANUAL_CPC.
target_cpa_micros: Target CPA in micros of the account's currency. Required with TARGET_CPA, refused with any other strategy.
target_roas: Target ROAS (e.g., 2.0 for 200%). Required with TARGET_ROAS, refused with any other strategy.
cpc_bid_ceiling_micros: Maximize Clicks' max CPC cap — the most
Google may bid for one click — in micros of the account's currency
(10000000 = 10.00: ₹10 on an INR account, $10 on a USD one). Only
with bidding_strategy_type TARGET_SPEND. Optional.
start_date: Campaign start date in YYYY-MM-DD format. Optional.
end_date: Campaign end date in YYYY-MM-DD format. Optional.
search_partners: Whether ads may serve on the Google Search Partners
network. SEARCH default: False. Optional.
display_network: Whether ads may serve on the Google Display Network.
SEARCH default: False. Optional.
geo_target_type: Positive location targeting. One of: PRESENCE (only
people in the targeted locations), PRESENCE_OR_INTEREST (also
people elsewhere who show interest in them), SEARCH_INTEREST.
SEARCH default: PRESENCE. Optional.
over_comfort_ack: The user's own words or reason when they asked for
a budget above their saved comfort (e.g. "user asked for 6,000/day
on 2026-09-23"). Recorded with the change by the hosted connector;
never sent to Google. Optional.
Returns:
Dictionary with created campaign and budget resource names.Tools revision: 5c9bea8f.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| status | No | PAUSED | |
| end_date | No | ||
| start_date | No | ||
| customer_id | Yes | ||
| target_roas | No | ||
| display_network | No | ||
| geo_target_type | No | ||
| search_partners | No | ||
| over_comfort_ack | No | ||
| target_cpa_micros | No | ||
| budget_amount_micros | Yes | ||
| bidding_strategy_type | No | MANUAL_CPC | |
| cpc_bid_ceiling_micros | No | ||
| advertising_channel_type | No | SEARCH |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |