Page Summary
-
A Google Ads campaign is the top-level organizational tool for ads, keywords, and bids, sharing settings like budget and location targeting.
-
Setting up a Google Ads campaign starts with choosing a Campaign Type, which determines ad types, features, and available bidding strategies.
-
Google Ads campaigns serve ads on Advertising Networks like the Google Search Network, Google Display Network, and YouTube Network, depending on the Campaign Type.
-
Controlling ad placements varies by Campaign Type, ranging from manual network settings in Search campaigns to automated placement across all networks in Performance Max.
-
Managing a Google Ads campaign involves defining a budget, selecting a bidding strategy to achieve specific goals, and applying targeting criteria to reach the desired audience.
A Google Ads campaign is a set of one or more ad groups (ads, keywords, and bids) that share a budget, location targeting, and other settings. Campaigns are typically used to organize categories of products or services offered by an advertiser. Campaigns are the top-level organizational tool within your Google Ads account.
Items that can be set at the campaign level include bids, budget, language, location, distribution for the Google Network, and more. Large advertisers typically create separate ad campaigns to run ads in different locations or using different budgets.
When creating a Campaign, you must specify key fields
such as name, status (ENABLED or PAUSED), advertising_channel_type,
campaign_budget, and a bidding strategy. While we recommend using our
client libraries, you can also
modify campaigns using CampaignService.MutateCampaigns.
Campaign types
In Google Ads, think of these concepts in a hierarchy:
- Campaign type: Your primary choice and the blueprint for your entire campaign.
- Advertising networks: The places where your ads can run, largely determined by your campaign type.
- Network and channel controls: The specific settings you can use to fine-tune where your ads appear within those networks. The controls you use depend on the campaign type.
Start with the campaign type
The campaign type is the foundation of your advertising efforts. It's the first decision you make and it dictates everything else, including:
- What kind of ads you can create (for example, text ads, image banners, or video ads).
- What features and bidding strategies are available.
Examples of campaign types include Search, Display, Performance Max, and Demand Gen.
Each campaign targets one campaign type, specified in the Google Ads API by the
advertising_channel_type field on the
Campaign object.
The Google Ads API supports the following campaign types:
- Display Network only
- Search Network only
- Display Expansion on Search
- App campaigns
- Call-only (deprecated; creation of new call-only ads is no longer supported, and existing call-only ads are supported only until February 2027—use responsive search ads with call assets instead)
- Demand Gen
- Performance Max
- Shopping campaigns
- Local Services
Understand the networks
The advertising networks are the collections of websites, apps, and properties where your ads can be shown. The main ones are:
- Google Search Network: Google Search, Google Maps, and Search Partner sites.
- Google Display Network: Millions of third-party websites, news sites, blogs, and Google properties like Gmail and YouTube that show visual ads.
- YouTube Network: YouTube itself, including the home feed, search results, videos, and Shorts.
Each campaign type is designed to serve ads on specific networks. For example, a Search campaign is built primarily for the Search Network.
Control placements
How you control which networks your campaign uses varies significantly by the campaign type you chose. Here's a breakdown:
| Example campaign type | How you control where ads show | Explanation |
|---|---|---|
| Search | Uses network_settings |
This is the standard model. You can use the network_settings field to explicitly include or exclude Google Search Partners and the Google Display Network from your Search campaign. |
| Performance Max (PMax) | No manual control | PMax is designed for maximum reach and automation. It automatically serves your ads across all of Google's networks (for example, Search, Display, and YouTube) to find conversions. You cannot opt out of specific networks. |
| Demand Gen | Uses channel controls | This campaign type uses DemandGenChannelControls instead of broad network settings, letting you opt in or out of specific inventory channels (including Google Maps through selected_channels.maps starting in v24). |
In summary: an analogy
Think of campaign configuration like choosing a vehicle:
- Campaign type = The vehicle you buy (for example, a city car, an off-road truck, or a self-driving shuttle).
- Networks = The terrain the vehicle is designed for (for example, paved city roads, rugged mountain trails, or all of the above).
- Network and channel controls = The specific features you can adjust:
- A Search campaign (city car) lets you use
network_settingsto choose whether you also want to drive on suburban roads (Search Partners). - A Performance Max campaign (self-driving shuttle) handles navigation automatically across all networks to reach your goal.
- A Demand Gen campaign (off-road truck) provides dedicated
DemandGenChannelControlsfor selecting specific surfaces within its environment.
- A Search campaign (city car) lets you use
Differences from the Google Ads UI
The Google Ads API has limitations for managing legacy and video campaigns.
For video campaigns, you can use the Google Ads API to read data. You can pull performance reports (clicks, views, cost) for all video campaigns using the Google Ads API.
For some specific video campaign types, you cannot write changes with the Google Ads API. You can't use the API to make changes like pausing, enabling, changing targeting, or adding new ads. These campaigns must be edited in the Google Ads web interface.
Best Practice: To fully create and manage video ads on YouTube using the API, you should use Performance Max or Demand Gen campaigns. These are fully supported for both reporting and management.
The Google Ads UI Objective ("Sales", "Leads") is a setup wizard. It asks for your goal and then automatically suggests and pre-fills the best settings for you, such as the campaign type, bidding strategy, and more.
The Google Ads API gives you the raw building blocks for campaigns. There is no single "objective" field because the API gives you direct control over each setting. You achieve your objective by assembling the right building blocks:
- Choose a campaign type: Set
advertising_channel_typetoSEARCHorPERFORMANCE_MAX. - Choose a bidding strategy: Set the
maximize_conversion_valuefield in thecampaign_bidding_strategyunion (or attach a portfoliobidding_strategy) with atarget_roasvalue. - Set conversion goals: Configure the campaign to optimize for your
PURCHASEconversion actions.
Campaign types are represented in the Google Ads API by the
advertising_channel_type field. Set
advertising_channel_type for every campaign. Then, check the onboarding
guides for the specific campaign you're building (such as Performance Max for
Travel Goals or Demand Gen) to see if it also requires setting
advertising_channel_sub_type.
| If you want to create this campaign... | Set advertising_channel_type to... |
And set advertising_channel_sub_type to... |
|---|---|---|
| A standard Search campaign | SEARCH |
(Do not set / Leave empty) |
| A standard Display campaign | DISPLAY |
(Do not set / Leave empty) |
| A standard Performance Max campaign | PERFORMANCE_MAX |
(Do not set / Leave empty) |
| A Performance Max for Travel Goals campaign | PERFORMANCE_MAX |
TRAVEL_GOALS |
| A Demand Gen campaign | DEMAND_GEN |
(Do not set / Leave empty) |
Campaign subtypes
Campaign subtypes in the Google Ads UI, such as Standard and
All features, help UI users find relevant campaign options, but there is no
direct one-to-one mapping between the UI Campaign subtype column and the
advertising_channel_type and
advertising_channel_sub_type fields on the
Campaign object. For example, a Search campaign created
using the Google Ads API is always treated as an All features campaign in the UI.
Campaign budget, bidding strategies, and targeting
In the Google Ads API, managing a campaign means answering three fundamental questions that control how and where your ads appear:
How much can I spend? (Campaign budget)
- This is your campaign's financial boundary. In the API, you create a
separate
CampaignBudgetobject with a spending limit (in micros) and then attach its resource name to your campaign. An average daily budget can also be shared across multiple campaigns.
- This is your campaign's financial boundary. In the API, you create a
separate
How should Google spend my money? (Bidding strategy)
- This tells Google what your primary optimization goal is. You choose a
bidding strategy based on what you want to achieve:
- For traffic: Use
TargetSpend(Maximize clicks). - For leads or sign-ups: Use
MaximizeConversionswith an optionaltarget_cpa_micros. - For ecommerce sales: Use
MaximizeConversionValuewith an optionaltarget_roas.
- For traffic: Use
- This tells Google what your primary optimization goal is. You choose a
bidding strategy based on what you want to achieve:
Who should see my ads? (Target audience)
- This is where you define your market. You add
CampaignCriterionorAdGroupCriterionobjects to narrow your reach to the right people. Targeting can be based on:- Keywords: What users are searching for.
- Locations: Where users are located.
- Demographics: Their age, gender, household income, or parental status.
- Audiences: Their past behavior (for example, website visitors) or interests.
- This is where you define your market. You add
How to think about campaigns
When you manage or build campaigns with the Google Ads API, it's
helpful to understand the underlying structure and models that govern how
campaigns, ads, and assets are organized and served. There are three primary
models to be aware of: the Ad Group and Ad model, the Asset Group and Asset
model, and a hybrid model of Ad Groups and Ads alongside Assets. These models
depend on the AdvertisingChannelType you choose.
Google Ads API campaign structures
| Structure | Example use (AdvertisingChannelType) |
How it works | Key concept |
|---|---|---|---|
| Ad group structure | SEARCH, standard DISPLAY |
The campaign is organized into AdGroup resources. Each ad group contains a set of finished ads and a set of targeting criteria (for example, keywords and audiences). |
The link between manually created ads and their targeting is tightly controlled within the ad group. |
| Asset group structure | PERFORMANCE_MAX |
Instead of ad groups, you create AssetGroup resources. Each asset group contains a pool of raw creative assets (headlines, images, videos) and audience signals. |
You provide the creative components, and Google's AI assembles the final ads in real time to optimize them across channels. |
| Hybrid structure | DEMAND_GEN, DISPLAY |
This involves a standard ad group structure with modern Assets (such as sitelinks or callouts) linked at the campaign or ad group level. | The core ad is structured at the ad group level, and you provide extra interchangeable assets to show alongside it. |