A Demand Gen ad group offers precise bidding and serving control for the ads
under it. This is configured in AdGroup resources through the bid
strategy, inventory settings, and targeting.
Ad groups have child resources called ads which are the configured creatives served after an auction is won.
Choose configurations
Before creating a Demand Gen ad group, consider these optional settings to enable further control of ad serving:
bidStrategycan be configured with aDemandGenBiddingStrategyto set a different target value for the ad group compared to the parent line item when using a target CPA, target CPC, or target ROAS bidding strategy.adGroupInventoryControlcan be set to select the inventories on which the ad group will bid on and the ads will serve.targetingExpansionlets you turn on optimized targeting for the ad group that are using audience targeting. Optimized targeting expands serving beyond your set demographic targeting. You can restrict this by excluding demographic expansion.
When creating a Demand Gen ad group, you must also set the
adGroupFormat field to AD_GROUP_FORMAT_DEMAND_GEN.
Create an ad group
Here's how to create a Demand Gen ad group with the following settings:
- A bid strategy that optimizes towards an average cost of $12 per conversion, inheriting a target CPA bid strategy from its parent line item.
- Will only bid on YouTube in-stream and shorts inventory.
Python
# Provide the ID of the parent advertiser. advertiser_id = advertiser-id # Provide the ID of the parent line item. line_item_id = line-item-id # Provide the display name of the ad group. display_name = display-name # Create an ad group object with example values. ad_group_obj = { "lineItemId": line_item_id, "displayName": display_name, "entityStatus": "ENTITY_STATUS_PAUSED", "adGroupFormat": "AD_GROUP_FORMAT_DEMAND_GEN", "bidStrategy": { "demandGenBid": { "value": "12000000" } }, "adGroupInventoryControl": { "selectedInventories": { "allowYoutubeStream": True, "allowYoutubeShorts": True, }, }, } # Build and execute request. response = ( service.advertisers() .adGroups() .create(advertiserId=advertiser_id, body=ad_group_obj) .execute() ) # Display the new ad group. print(f"Demand Gen ad group {response['name']} was created.")