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.
While we recommend using our client libraries, you can also modify campaigns with the REST endpoint.
Campaign types
In Google Ads, think of these concepts in a hierarchy:
- Campaign Type: Your primary choice. The blueprint for your entire campaign.
- Advertising Networks: The places where your ads can run, largely determined by your Campaign Type.
- Network/Channel Controls: The specific settings you can use to fine-tune where your ads appear within those networks. This is where it gets more complex, as the tool you use depends on the campaign type.
Start with the campaign type (the "what" and "how")
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, 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, known in the API as the
AdvertisingChannelType
field. This field is on the Campaign
object.
The API supports the following campaign types:
- Display Network only
- Search Network only
- Display Expansion on Search
- App campaigns
- Call-only
- Demand Gen
- Performance Max
- Shopping campaigns
- Local Services
Understand the networks (the "where")
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 (the complex part)
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 NetworkSettings |
This is the "classic" model. You can use the NetworkSettings field to explicitly include or exclude the 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 newer campaign type uses its own system. Instead of broad "network" settings, you get more specific "channel" controls that let you opt in or out of specific part of networks. |
In summary: an analogy
Think of it like choosing a vehicle:
- Campaign Type = The vehicle you buy. (for example, a city car, an off-road truck, or a high-tech 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/Channel Controls = The specific features you can adjust.
- A Search campaign (city car) lets you use
NetworkSettings
to choose whether you also want to drive on the "suburban roads" (Search Partners). - A Performance Max campaign (self-driving shuttle) handles all the navigation automatically to get to the destination. You don't touch the steering wheel.
- A Demand Gen campaign (off-road truck) has special controls like
"4-wheel drive" or "hill descent" (
ChannelControls
) for handling specific types of terrain within its off-road 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 assumes you want full control. You achieve your objective by assembling the right building blocks yourself.
For example, to create a "Sales" campaign with the API, there is no field to set
an objective = 'SALES'
. Instead, you build it by combining the right settings:
Choose a Campaign Type: Set
advertising_channel_type
= "SEARCH" or "PERFORMANCE_MAX".Choose a Bidding Strategy: Set
campaign_bidding_strategy
= "MAXIMIZE_CONVERSION_VALUE" with atarget_roas
field set.Set Conversion Goals: Tell the campaign to specifically optimize for your "Purchase" conversion actions.
Another common inquiry is how to represent Campaign types in the API. Campaign
types are represented in the API by the
AdvertisingChannelType
field. Set the AdvertisingChannelType
for every campaign. Then, check the
onboarding guides for the specific campaign you're building
(like "PMax for Travel" or "Demand Gen") to see if it also requires you to set
the
AdvertisingChannelSubType
.
A helpful table:
If you want to create this campaign... | Set AdvertisingChannelType to... | And set AdvertisingChannelSubType 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
corresponding attribute in the API's Campaign
object.
This UI column is similar to the
AdvertisingChannelType
and
AdvertisingChannelSubType
fields in the API, but there is not a one-to-one mapping between these fields
and Campaign subtype in the UI.
For example, a Search-only campaign created using the API will always be an All features campaign from the UI perspective.
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
CampaignBudget
object with a daily spending limit (in micros) and then attach its resource name to your campaign. A single budget can 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 is the strategic "brain" of your campaign. It tells Google what your
primary goal is. You choose a bidding strategy based on what you want to
achieve:
- For traffic: Use
MaximizeClicks
. - For leads/sign-ups: Use
MaximizeConversions
with aTargetCpa
. - For ecommerce sales: Use
MaximizeConversionValue
with aTargetRoas
.
- For traffic: Use
- This is the strategic "brain" of your campaign. It tells Google what your
primary 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
CampaignCriterion
orAdGroupCriterion
objects 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, etc.
- 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 type of 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 Ad Groups. Each Ad Group contains a set of finished ads and a set of targeting criteria (for example, keywords, 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 Asset Groups. Each Asset Group contains a pool of raw creative assets (headlines, images, etc.) and audience signals. | You provide the creative components, and Google's AI assembles the final ads in real-time to optimize them across different channels. |
Hybrid Structure | DEMAND_GEN , DISPLAY |
This involves a standard Ad Group structure with modern Assets (formerly extensions like Sitelinks or Callouts) linked at the campaign or ad group level. | The core ad is manually created, but you provide extra, interchangeable assets for Google to show alongside it to enhance performance. |