AI-generated Key Takeaways
- 
          Google Ads API v22 introduces the AssetGenerationService for generating text and image assets using generative AI. 
- 
          New bidding goals without a target CPA or ROAS are added for App campaigns to optimize for installs or total value. 
- 
          Demand Gen campaigns now support the TargetCPC bidding strategy and asset automation for generating design variations and videos from existing assets. 
- 
          Performance Max campaigns gain new AssetAutomationType values for image enhancement and extraction, along with new segments for reporting. 
- 
          Planning services include updates for user lists, partner audiences, YouTube metrics, trend insights, and support for parental status and income ranges in AudienceInsightsService. 
v22 (2025-10-15)
The following new features and updates were added in v22.
See Upgrade to the latest version for guidance.
Assets
- Added
LANDING_PAGE_PREVIEWas a new image asset field type.
- Introduced the AssetGenerationService(Beta):- This service allows generating text and image assets using generative AI. This service is initially available only to a limited set of closed beta participants.
- GenerateText: Generates text based on inputs like final URL, freeform prompts, keywords, and existing campaign context.
- GenerateImages: Generates images based on inputs like final URL, freeform prompts, existing campaign context, or by recontextualizing existing product images.
- Errors during asset generation are returned with codes from
AssetGenerationErrorEnum.
 
Campaigns
- Added new bidding goals for App campaigns for installs (ACi) to optimize
without specifying a target, useful for rapid scaling or when determining
the right target is challenging. In
AppCampaignBiddingStrategyGoalType:- OPTIMIZE_IN_APP_CONVERSIONS_WITHOUT_TARGET_CPA: Use with standard Maximize Conversions.
- OPTIMIZE_TOTAL_VALUE_WITHOUT_TARGET_ROAS: Use with standard Maximize Conversion Value.
 
- Added support for the fixed share of voice bidding strategy type.
- Added Campaign.feed_types, showing the types of feeds attached to a campaign. For Performance Max campaigns, this can indicate the business vertical, such asMERCHANT_CENTER_FEEDfor retail.
- Allowed attaching
NEGATIVE_KEYWORDSshared sets toMULTI_CHANNEL(for App campaigns) andLOCALcampaigns.
Demand Gen
- Added the TargetCPC bidding strategy for Demand Gen campaigns. This strategy
sets bids to maximize clicks at the configured target cost-per-click (CPC).
- Set the campaign-level target CPC using Campaign.target_cpc.
- Override at the ad group level using AdGroup.target_cpc_micros.
 
- Set the campaign-level target CPC using 
- Added a new AssetAutomationType:- GENERATE_DESIGN_VERSIONS_FOR_IMAGES: Available for- DemandGenMultiAssetAds. If enabled, this adds design elements and embeds text assets into image assets to create new image assets with different aspect ratios. New- DemandGenMultiAssetAdsare opted in by default.
 
- Added a new AssetAutomationType:- GENERATE_VIDEOS_FROM_OTHER_ASSETS: Available for- DemandGenMultiAssetAds. If enabled, it generates videos using other assets like images and text. These videos can then be used to create new- DemandGenVideoResponsiveAds. New- DemandGenMultiAssetAdsare opted in by default.
 
- Renamed the field
BudgetPerDayMinimumErrorDetails.minimum_bugdet_amount_microstominimum_budget_amount_micros.
General
- Added a limit of 10,000 operations per
AddBatchJobOperationsrequest.
- Updated handling for the page_sizefield inListBatchJobResultsRequest:- If page_sizeis not set or is 0, it now defaults to the maximum of 1,000 (previously returnedINVALID_PAGE_SIZE).
- If page_sizeexceeds 1,000, the API now returns anINVALID_PAGE_SIZEerror (previously silently capped at 1,000).
 
- If 
- Added a new error code:
QuotaError.PAYMENTS_PROFILE_ACTIVATION_RATE_LIMIT_EXCEEDEDto indicate when the payment profile activation rates limit has been exceeded.
Performance Max
- Added new
AssetAutomationTypevalues for Performance Max campaigns:- GENERATE_IMAGE_ENHANCEMENT: Enables automatic creation of enhanced images such as auto-cropping. Enabled by default.
- GENERATE_IMAGE_EXTRACTION: Enables automatically sourcing images from final URLs. Defaults to the account-level Dynamic Image Extension setting.
 
- Removed AssetPerformanceLabelfor Performance Max campaigns.
- The functionality of the removed
Campaign.url_expansion_opt_outis now managed by setting theAssetAutomationTypeFINAL_URL_EXPANSION_TEXT_ASSET_AUTOMATIONinAssetAutomationSetting.
- Added new segments for Performance Max campaigns. Each of these segments is
only available for Performance Max campaigns and won't return data when
any other campaign type is selected.
- ad_using_product_data: Indicates if an ad uses product data from a Google Merchant Center feed.
- ad_using_video: Indicates if an ad uses a video asset.
 
Planning
- In UserListCrmDataSourceType, added the valueTHIRD_PARTY_PARTNER_DATA.
- Added new error codes related to partner audiences:
- PARTNER_AUDIENCE_SOURCE_NOT_SUPPORTED_FOR_USER_LIST_TYPE
- PARTNER_AUDIENCE_TYPE_NOT_SUPPORTED_FOR_USER_LIST_TYPE
- COMMERCE_PARTNER_NOT_ALLOWED
- PARTNER_AUDIENCE_INFO_NOT_SUPPORTED_FOR_USER_LIST_TYPE
- PARTNER_MANAGER_ACCOUNT_DISALLOWED
- PARTNER_NOT_ALLOWLISTED_FOR_THIRD_PARTY_PARTNER_DATA
- ADVERTISER_TOS_NOT_ACCEPTED
- ADVERTISER_PARTNER_LINK_MISSING
- ADVERTISER_NOT_ALLOWLISTED_FOR_THIRD_PARTY_PARTNER_DATA
- ACCOUNT_SETTING_TYPE_NOT_ALLOWED_FOR_USER_LIST_TYPE
- INVALID_CAMPAIGN_TYPE_FOR_THIRD_PARTY_PARTNER_DATA_LIST
 
- Added is_active_live_stream_creatortoYouTubeMetrics. This is returned byContentCreatorInsightsService.GenerateCreatorInsightsand indicates if a creator published a livestream in the past 90 days.
- Added a new - PlannableUserListMetadatamessage that contains- UserListCrmDataSourceTypein- PlannableUserList. This message is returned by 'ReachPlanService.ListPlannableUserLists' to show if a CRM user list data source is either- FIRST_PARTYor- THIRD_PARTY_PARTNER_DATA.
- In - ReachPlanService, added the field- trueview_views, which replaces the- viewsfield.
- In - TrendInsight, added support for- related_videosand- related_creators. Also added video properties metadata and publish dates in- YouTubeVideoAttributeMetadata.video_propertiesand- YouTubeVideoAttributeMetadata.publish_date.
- AudienceInsightsService.GenerateInsightsFinderReportnow supports- parental_statusand- income_ranges, and more complex AND/OR combinations of topics and audiences.
Reports
- Added two new click types: CLICK_TO_MESSAGE_THIRD_PARTY_CLICKandCLICK_TO_MESSAGE_LANDING_PAGE_CLICK.
- AssetGroupAssetis now segmentable by- device,- conversion_action,- conversion_action_name, and- conversion_action_category.
- AdGroupAdAssetViewand- AdGroupAdAssetCombinationViewnow fully support performance and conversion metrics for- RESPONSIVE_SEARCH_AD. Previously, only impressions were returned for this ad type in these views.
- To facilitate Smart Bidding Exploration, the following metrics are now
segmentable by date fields
(date,month,quarter,week,year):
- Added a new resource: TargetingExpansionView, which reports metrics for expansions over manual targeting, such as keywordless expansion for AI Max for Search Campaigns.
- Added new segments for PMax campaigns. See Performance Max updates. - Shopping
- Fixed the campaign and ad group scoping of metrics in the - ShoppingProductresource.
Unified Goals
- Added support for customer retention goals to optimize for re-engaging
existing customers.
- Configure targeting using
CampaignRetentionGoalSettings.target_option:- TARGET_SPECIFIC: Only uses users from user lists associated with the campaign. (Currently allowlist only).
- TARGET_ALL(Default): Targets all users for re-engagement.
 
 
- Configure targeting using
Video
- Renamed several video-views related metrics:
- average_cpvis now- trueview_average_cpv
- video_view_rateis now- video_trueview_view_rate
- video_viewsis now- video_trueview_views
- video_view_rate_in_feedis now- video_trueview_view_rate_in_feed
- video_view_rate_in_streamis now- video_trueview_view_rate_in_stream
- video_view_rate_shortsis now- video_trueview_view_rate_shorts
 
- Added metrics for video ad watch time:
- video_watch_time_duration_millis: Total watch time.
- average_video_watch_time_duration_millis: Average watch time per impression.
 
v21 (2025-08-06)
See Upgrade to the latest version for guidance.
AI Max for Search campaigns
- You can now use the - ai_max_setting.enable_ai_maxfield of the- Campaignto enable AI Max for Search campaigns. AI Max for Search campaigns expands a Search campaign's reach through search term matching and allows controlling whether targeting and creative controls serve when set. Text asset automation and brand list controls that were set in previous version requests will still be respected until AI Max for Search campaigns is explicitly toggled and turned off.- Campaign.ai_max_setting.bundling_requiredcan be used to determine if AI Max for Search campaigns must be enabled to respect or modify text asset automation and brand list controls.- AdGroup.ai_max_ad_group_setting.disable_search_term_matchingcan be used to disable search term matching when a parent campaign has enabled AI Max for Search campaigns. See our blog post Unlock next-level performance with AI Max for Search campaigns.
- Added - CampaignError.AI_MAX_MUST_BE_ENABLED, which is thrown for Search campaigns when you opt in to- FINAL_URL_EXPANSION_TEXT_ASSET_AUTOMATIONwithout enabling AI Max for Search campaigns on the campaign.
- Added support for applying targeting controls at the ad group level in AI Max for Search campaigns. You can now add the following criteria to ad groups: - Brand lists
- Locations
- Webpages (URL rules)
 
- Added the - ai_max_search_term_ad_combination_viewto report on performance for combinations of search terms, headlines, and landing pages. This view shows which search queries triggered your ads and how those specific combinations performed. A future release will include an additional view that also includes Performance Max data. If you want to avoid migrating your implementation to get Performance Max data, consider waiting for that release.
- Added - AI_MAXas a new value for the- search_term_match_typesegment.
Assets
- Added the fields - terms_and_conditions_text,- terms_and_conditions_uri,- promotion_barcode_info, and- promotion_qr_code_infoin- PromotionAsset. Barcode and QR code fields are located within the- promotion_triggeroneof. See the Help Center article About promotion assets.
- Added - FINAL_URL_EXPANSION_TEXT_ASSET_AUTOMATIONto- AssetAutomationTypeEnum. With this setting, you can control the automatic generation of text assets and landing pages from the final URL in Search campaigns.
- Added a new service - AutomaticallyCreatedAssetRemovalService.RemoveCampaignAutomaticallyCreatedAssetto remove automatically created assets from- Campaign. This service supports removal of the final URL expansion asset only.
- Added - DESCRIPTION_PREFIXto the- ServedAssetFieldTypeenum. This corrects an issue where the- served_asset_field_typein- ad_group_ad_asset_combination_viewwas- UNKNOWNfor assets serving as a description prefix.
Campaigns
- Added a new enum value - MISSING_LOCATION_TARGETINGto- CampaignPrimaryStatusReason. This new status reason will be returned only for location-restricted campaigns which don't specify location targeting. For location-restricted campaigns, any attempt to add location targeting outside the allowed area will result in the criterion error- LOCATION_TARGETING_NOT_ELIGIBLE_FOR_RESTRICTED_CAMPAIGN.
- Added support for third-party integration partners on the - VideoCustomer.third_party_integration_partnersand Campaign.third_party_integration_partners levels. See the Help Center article Track app conversions with third-party app analytics.
- You can now set the - advertising_partner_idsfield for an existing- Campaign. Previously, this field could only be set for a new campaign during its creation. The field is still immutable after being set.
- By using a shared list of type - TYPE_PLACEMENT_LISTdefined at the manager account level, advertisers can now use- CustomerNegativeCriterioncriteria to exclude a list of placements in individual advertiser customer accounts.
- Added - DESCRIPTION_PREFIXto the- ServedAssetFieldTypeenum. This corrects an issue where the- served_asset_field_typein the- ad_group_ad_asset_combination_viewwas- UNKNOWNfor assets serving as a description prefix.
- Added support for the field - target_roas_tolerance_percent_millisin the- MaximizeConversionValueand- TargetRoasbidding strategies.- TargetRoas.target_roas_tolerance_percent_millisis only available for portfolio strategies, which is only available for Search campaigns.
- Changed a - ProductGrouperror code. For requests with a partial failure enabled,- LISTING_GROUP_ERROR_IN_ANOTHER_OPERATIONwill be returned instead of- INVALID_LISTING_GROUP_HIERARCHY.
- Added a new resource - LocationInterestViewthat summarizes the performance of adgroup location interest criteria.
Conversions
- Added - ENGAGED_VIEWas a new value for the- conversion_attribution_event_typesegment.
- Customers will no longer have access to - debug_enabledmode in- ConversionUploadService. This field, if set to- TRUE, was earlier used to distinguish the- CLICK_NOT_FOUNDerror from- SUCCESSfor enhanced conversions for leads imports.
Demand Gen
- Added an error code
CampaignBudgetError.BUDGET_BELOW_DAILY_MINIMUM. In the future, this error will be returned when attempting to set a very low budget amount for a Demand Gen campaign. Details about the required minimum budget can be found in the new error details fieldbudgetDailyMinimumErrorDetails.
EU political advertising changes
These EU political advertising changes have also been made in the v19.2 and v20.1 releases.
- Added - Campaign.contains_eu_political_advertising. This field indicates whether your campaign contains political advertising content targeted towards the European Union. If this field is set to- CONTAINS_EU_POLITICAL_ADVERTISING, the campaign will no longer serve in the EU starting September 22, 2025. API calls to create a new campaign will fail with a- FieldError.REQUIREDerror if this field is not set.- For any existing campaigns, you should set the - contains_eu_political_advertisingfield before attempting to change proximity, location, or location group targeting either at the campaign or ad group levels. The API calls to create or update these campaign or ad group criteria for existing campaigns will fail with a- CriterionError.MISSING_EU_POLITICAL_ADVERTISING_SELF_DECLARATIONerror if the campaign hasn't completed the self-declaration.- For versions v19.x and 20.x, the requirement to set this field is not yet enforced, but will be in the future. This change will be announced in advance. 
- Trials and Experiments will throw an - ExperimentError.MISSING_EU_POLITICAL_ADVERTISING_SELF_DECLARATIONif the experiment's campaigns haven't self-declared whether they contain political advertising that targets the European Union.
Performance Max
- For new PMax campaigns the default value of - Campaign.brand_guidelines_enabledis now- true.
- Added the - campaign_search_term_viewreport. This view offers search terms metrics aggregated at the campaign level. This view also introduces Performance Max campaign support for search terms.
- Added - PERFORMANCE_MAXas a new value for the- search_term_match_typesegment.
Planning
- Added a new method - ReachPlanService.ListPlannableUserInterests, which allows advertisers to discover the user interests (affinities and in-markets) supported by- ReachPlanService.GenerateReachForecast. The method supports searching for specific user interest types and querying for names and paths.
- Added - AdditionalApplicationInfoto- ReachPlanService.ListPlannableUserListsas an optional input field.
- Added support to - AudienceInsightsService.ListAudienceInsightsAttributesto fetch available 1P user lists for the customer ID making the request.
- Added 1P user lists support to - AudienceInsightsService.GenerateAudienceCompositionInsightsto fetch insights for audiences targeting a user list. Any request that targets a user list will only return the audience index and is only available for the following- AudienceInsightsDimension:- AGE_RANGE,- GENDER,- AFFINITY_USER_INTEREST,- IN_MARKET_USER_INTEREST.
- Updated the audience input type to - InsightsAudiencefor- AudienceInsightsService.GenerateTargetingSuggestionMetrics. The new audience input allows an AND-of-ORs combination of user interests, supporting potential reach metrics for more customized audience definitions.
- Added audience share to - TrendInsightMetricsto get the share of an audience for a trend.
- Added new related categories to - KnowledgeGraphAttributeMetadataso users can filter Knowledge Graph Attributes by category.
Reports
- A variety of new metrics are now available for - AssetGroupAsset,- ChannelAggregateAssetView, and- CampaignAggregateAssetView. Additionally, for- ChannelAggregateAssetViewand- CampaignAggregateAssetView,- impressions, which was previously zeroed out for Performance Max campaigns, will now report its true value.
- Made the - AssetSetresource selectable with- ChangeStatusso users can make get more info about the- AssetSetor- CampaignAssetSettype resource in one query.
- Made the - CampaignAssetSetresource selectable with- ChangeStatusso users can make get more info about the- AssetSetor- CampaignAssetSettype resource in one query.
- Added a new segment - search_term_targeting_statusthat can be selected in campaign search term view.
- Added a new - final_url_expansion_asset_view.
- Added support for metrics - value_adjustmentand- all_value_adjustmentin the- AssetGroupreport.
- Made - AssetGroupAssetsegmentable by- ad_network_type.
- Added a new segment - landing_page_sourcethat can be used with the- landing_page_viewresource.
- Added a new segment - search_term_match_sourcethat can be selected in the search term and campaign search term views.
- Added a new segment - match_typethat can be selected from the keyword view.
- Added support for metrics for unique query intent clusters with: 
- Added a new click type - VEHICLE_ASSETSin the- click_viewsegmentation to track and report clicks related to the ad formats specific to vehicle assets.
Smart Bidding Exploration for Target ROAS bidding strategies on Search
- You can now enable Smart Bidding Exploration on Search campaigns by setting the field - target_roas_tolerance_percent_millisin the- MaximizeConversionValueand- TargetRoasbidding strategies to any value divisible by 1000 between 10000 (10%) and 30000 (30%) inclusive.- MaximizeConversionValuebidding strategies will also need the- target_roasfield set.- TargetRoas.target_roas_tolerance_percent_millisis only available for portfolio strategies. See our blog post on Smart Bidding Exploration and help center article.
- Aggregated diversity reporting is now supported for the following metrics for unique query intent clusters. A time segmented view is available in the Google Ads UI. 
Video
- Added - YouTubeVideoListAsset. Also added- Asset#youtube_video_list_asset, which can be used to create link between a- campaignand a- YouTubeVideoListAssettype. See the Help Center article Use related videos.
- Added new metadata fields to - YouTubeChannelInsightsand- YouTubeVideoAttributeMetadata.
- Exposed new click types: - VIDEO_RELATED_VIDEOS_CLICK,- VIDEO_CHANNEL_CLICK, and- PRODUCT_ASSETS.
- Added the - allow_non_skippable_in_streamfield to- VideoAdInventoryControlto let Video Responsive ads serve as non-skippable in-stream ads. This option is available for campaigns that support mixing the non-skippable format with other formats.
- Added the - Campaign.VideoCampaignSettings.video_ad_sequenceand- AdGroup.VideoAdGroupSettings.VideoAdSequenceStepSettingfields (read-only). See the Help Center article About video ad sequencing.
- Added new metadata fields to - YouTubeChannelInsightsand- YouTubeVideoAttributeMetadata.
- Added the - VIDEO_LINEUPcriterion type and the- video_lineupfield to- CampaignCriterionand- AdGroupCriterion. This feature is available to allowlisted accounts only. Contact your Google business development representative for details.
- Added a Content Suitability report for both the detail and the group level. See the Help Center article About the 'Content suitability' report. 
v20.1 (2025-08-06)
These EU political advertising changes have also been made in the v19.2 and v21 releases.
EU political advertising changes
- Added - Campaign.contains_eu_political_advertising. This field indicates whether your campaign contains political advertising content targeted towards the European Union. If this field is set to- CONTAINS_EU_POLITICAL_ADVERTISING, the campaign will no longer serve in the EU starting September 22, 2025.- For any existing campaigns, you should set the - contains_eu_political_advertisingfield before attempting to change proximity, location, or location group targeting either at the campaign or ad group levels. The API calls to create or update these campaign or ad group criteria for existing campaigns will fail with a- CriterionError.MISSING_EU_POLITICAL_ADVERTISING_SELF_DECLARATIONerror if the campaign hasn't completed the self-declaration.- For versions v19.x and 20.x, the requirement to set this field is not yet enforced, but will be in the future. This change will be announced in advance. 
- Trials and Experiments will throw an - ExperimentError.MISSING_EU_POLITICAL_ADVERTISING_SELF_DECLARATIONif the experiment's campaigns haven't self-declared whether they contain political advertising that targets the European Union.
v20 (2025-06-04)
The following new features and updates were added in v20.
See Upgrade to the latest version for guidance.
Assets
Added several new metrics and segment columns for the
asset_group report.
Metrics columns
- new_customer_lifetime_value
- all_new_customer_lifetime_value
- conversions_by_conversion_date
- all_conversions_by_conversion_date
- conversions_value_by_conversion_date
- all_conversions_value_by_conversion_date
- value_per_conversions_by_conversion_date
- value_per_all_conversions_by_conversion_date
Segment columns
- ad_network_type
- conversion_action
- conversion_action_name
- conversion_action_category
- external_conversion_source
- conversion_attribution_event_type
- conversion_adjustment
- conversion_lag_bucket
- conversion_or_adjustment_lag_bucket
- new_versus_returning_customers
- device
- slot
Campaigns
- Added support for adding and updating campaign-level negative keywords for Performance Max campaigns.
Conversions
- You can now update the - google_ads_conversion_customerfield on an existing customer to opt in to cross-account conversion tracking, or to change its existing conversion tracking parent to a different manager account.
- Added the - ClickConversion.user_ip_addressfield. Google Ads does not support IP address matching for end users in the European Economic Area (EEA), United Kingdom (UK), or Switzerland (CH). Please add logic to conditionally exclude sharing IP addresses from users from these regions. Make sure that you provide users with clear and comprehensive information about the data you collect on your sites, apps, and other properties and get consent where required by law or any applicable Google policies. See the About offline conversion imports page for more details.
Demand Gen
- Added new values to the ad_network_typesegment that allow segmenting Demand Gen campaigns by channel:- MAPS
- GMAIL
- DISCOVER
 
- Added metrics for platform-comparable conversions:
- platform_comparable_conversions_from_interactions_rate
- platform_comparable_conversions
- platform_comparable_conversions_value
- platform_comparable_conversions_value_per_cost
- platform_comparable_conversions_by_conversion_date
- platform_comparable_conversions_value_by_conversion_date
- platform_comparable_conversions_from_interactions_value_per_interaction
- cost_per_platform_comparable_conversion
- value_per_platform_comparable_conversion
- value_per_platform_comparable_conversions_by_conversion_date
- cost_converted_currency_per_platform_comparable_conversion
 
Recommendations
- Added support for ShoppingSettingduring campaign construction when usingGenerateRecommendationsRequest.
- Added the merchant_center_account_idfield toGenerateRecommendationsRequestto indicate when recommendations should be generated for retail, rather than the standard Performance Max campaigns.
Planning
- Added
AudienceInsightsDimension.YOUTUBE_LINEUPto replaceAudienceInsightsDimension.YOUTUBE_DYNAMIC_LINEUPinAudienceInsightsServiceandContentCreatorInsightsService. This new dimension lets you retrieve insights and metadata for YouTube Select (YTS) Lineups. Replaced objects associated withYOUTUBE_DYNAMIC_LINEUPsuch asDynamicLineupAttributeMetadataand theAudienceInsightsDynamicLineupto align with the broader removal of Dynamic Lineups across Google Ads. This feature is only available to accounts on an allowlist.
- Added AdditionalApplicationInfoandApplicationInstancein theAudienceInsightsService,ContentCreatorInsightsService, andReachPlanService. This feature is only available to accounts on an allowlist.
- Updated AudienceInsightsServiceandContentCreatorInsightsServiceto provide more detailed insights. You can now segment content creator data by device using the newAudienceInsightsDimension.DEVICEandAudienceInsightsAttribute.devicein both services. This feature is only available to accounts on an allowlist.
- Added additional aggregated video metrics to
GenerateCreatorInsightsResponsefor more comprehensive content creator analysis:engagement_rate,average_views_per_video,average_likes_per_video,average_shares_per_video,average_comments_per_video,shorts_views_count,shorts_video_count, andis_brand_connect_creator. This feature is only available to accounts on an allowlist.
- Added sub_country_locationstoGenerateCreatorInsightsRequestfor theContentCreatorInsightsService. This allows specifying sub-country geographic locations to refine searches for creator insights. Thesub_country_locationsfield is only supported when using thesearch_attributesoneof in thecriteriafield. Ifsub_country_locationsare provided with other criteria types, the request will be invalid. This enables more granular geographical targeting and analysis for content creator insights. This feature is only available to accounts on an allowlist.
- Added ReachPlanService.ListPlannableUserLists, which returns first-party user lists owned by a customer, and addedUserListInfoto the audience targeting options inGenerateReachForecastRequest. This lets you retrieve plannable user lists for a given customer and then generate reach forecasts for campaigns targeting those specific audiences. These enhancements improve tailored reach planning by incorporating your first-party audience data directly into forecasting. Reach forecasting is available to allowlisted accounts only.
Videos
- Added AdFormatType.PAUSEads served on organic YouTube videos on TV screens, which is included in reporting. These ads are displayed directly next to the static video frame on the pause screen. This does not include Demand Gen video ads displayed on the ad panel below or on top of a paused organic video, which are reported underAdFormatType.INFEED.
v19.2 (2025-08-06)
These EU political advertising changes have also been made in the v20.1 and v21 releases.
EU political advertising changes
- Added - Campaign.contains_eu_political_advertising. This field indicates whether your campaign contains political advertising content targeted towards the European Union. If this field is set to- CONTAINS_EU_POLITICAL_ADVERTISING, the campaign will no longer serve in the EU starting September 22, 2025.- For any existing campaigns, you should set the - contains_eu_political_advertisingfield before attempting to change proximity, location, or location group targeting either at the campaign or ad group levels. The API calls to create or update these campaign or ad group criteria for existing campaigns will fail with a- CriterionError.MISSING_EU_POLITICAL_ADVERTISING_SELF_DECLARATIONerror if the campaign hasn't completed the self-declaration.- For versions v19.x and 20.x, the requirement to set this field is not yet enforced, but will be in the future. Wait for the announcement of this change. 
- Trials and Experiments will throw an - ExperimentError.MISSING_EU_POLITICAL_ADVERTISING_SELF_DECLARATIONif the experiment's campaigns haven't self-declared whether they contain political advertising that targets the European Union.
v19.1 (2025-04-16)
The following features and changes were added in v19.1.
Assets
- Added an asset_coveragefield forAssetGroupthat returns information about gaps in your asset group.- Contains a subfield
ad_strength_action_itemswhich returns a list of actions that an advertiser can take to improve the ad strength of an asset group.
 
- Contains a subfield
Campaigns
- You can now rate or provide feedback for leads in
Local Service Campaigns. As part of
this change, v19.1
- Added a new service named
LocalServicesLeadService. You can use theProvideLeadFeedbackmethod to upload rating and feedback for leads.
- Added a new field named
lead_feedback_submittedtoLocalServicesLeadto help determine if feedback was submitted to a lead.
 
- Added a new service named
- Added a new metric column
biddable_cohort_app_post_install_conversionsfor App campaigns.
Demand Gen
- Additional methods were introduced in the Planning services to support Demand Gen.
- Added support for AdGroup-level Channel Controls for Demand Gen campaigns. You can select a predefined general grouping of channels, or a subset of channels using the - demand_gen_ad_group_settingsfield. The following channels are supported in the current release:- YouTube In-Stream
- YouTube In-Feed
- YouTube Shorts
- Discover
- Gmail
- Display
 
- Exposed a new asset type for - TALL_PORTRAIT_MARKETING_IMAGE. This asset type relates to the- tall_portrait_marketing_imagesfield of the Demand Gen Multi Asset Ad format.
Change History
- Added support for three more resource types into
ChangeStatusResourceType:
- CAMPAIGN_BUDGET
- ASSET_SET
- CAMPAIGN_ASSET_SET
 
- You can retrieve these three finer-grained types from the
change_statusreport.
Conversions
- You can now set the - google_ads_conversion_customerfield while creating a new customer using the Google Ads API. This was previously a read-only field.- NOTE: This feature is behind a closed allowlist. To use it, contact your account manager. 
- You can now specify the type of the customer associated with the conversion when uploading offline conversions. 
- A new - session_attributesfield was introduced for- ClickConversion.
Local Services Ads
- Added a new RPC
ProvideLeadFeedbacktoLocalServicesLeadServiceto provide feedback on the quality ofLocalServicesLead.
- Added a new field lead_feedback_submittedto theLocalServicesLeadresource that confirms if feedback was provided for a specific resource.
Planning services
- Added support for Target frequency monthly forecasts in
ReachPlanService.GenerateReachForecast.- Developers can set
TargetFrequencyTimeUnit.MONTHLYinTargetFrequencySettingswhen using theTARGET_FREQUENCYplannable product code to generate a Target frequency monthly reach forecast.
 
- Developers can set
- Added a new method
ReachPlanService.GenerateConversionRates, which allows advertisers to request suggested conversion rates for supported plannable products.
- Demand Gen forecasting in
ReachPlanService.GenerateReachForecast:- Developers can now request reach forecasts for Demand Gen campaigns.
Developers can use the new DEMAND_GEN_MAX_CONVERSIONSplannable product code to generate Demand Gen reach forecasts.
- Added a new conversion_ratefield that allows developers requesting Demand Gen reach forecasts to provide a conversion rate. Suggested conversion rates can be retrieved using the newReachPlanService.GenerateConversionRatesmethod. This field is required for Demand Gen forecasting requests. It is not supported for other plannable products.
- Added a new conversionsfield to returned forecasts. This field contains the number of conversions at a given point on the reach curve. Conversions are only supported for theDEMAND_GEN_MAX_CONVERSIONSplannable product.
 
- Developers can now request reach forecasts for Demand Gen campaigns.
Developers can use the new 
Recommendations
- The new - ad_strengthfield is available for- ImprovePerformanceMaxAdStrengthRecommendation, which returns the current ad strength score of the asset group associated with the recommendation.- Shopping
- You can now override brand exclusions for Shopping ads in Performance Max campaigns. This is exposed through a new - pmax_campaign_settingsfield at the campaign level, and it works only for PMax campaigns for Retail. A new- CampaignError.BRAND_TARGETING_OVERRIDES_NOT_SUPPORTEDerror will be thrown if you attempt to set this field for an incompatible campaign type.
Videos
- Added read-only support for Audio Ads. See
Google Ads Help Center to
learn about this feature. This change exposes:
- A new AdvertisingChannelSubTypenamedYOUTUBE_AUDIO.
- A new AdGroupTypenamedYOUTUBE_AUDIO.
- A new ad format enumeration named
YOUTUBE_AUDIO_AD, and its correspondingYouTubeAudioAdInfofields.
 
- A new 
- Added new metrics and segments to
query reach metrics
with demo adjustment. As part of these changes,
- Two new metrics columns named
coviewed_impressionsandprimary_impressionswere introduced.
- Two new segments named
adjusted_age_rangeandadjusted_genderwere introduced.
- If either of the two new segments are selected alongside a reach metric
field (coviewed_impressions,primary_impressions,unique_users, oraverage_impression_frequency_per_user), the other segment must be selected as well to retrieve valid stats for these columns.
- This feature is currently available only for allowlisted customers.
 
- Two new metrics columns named
v19 (2025-02-26)
The following features and changes were added in v19.
See Upgrade to the latest version for guidance.
Account Management
- Added the following values to CustomerErrorto account for upcoming changes:- CREATION_DENIED_FOR_POLICY_VIOLATION
- CREATION_DENIED_INELIGIBLE_MCC
 
Ads
- Added
DemandGenMultiAssetAdInfo.tall_portrait_marketing_imagesto support portrait image assets with aspect ratio 9:16 in Demand Gen ads.
Assets
- (For allowlisted accounts only) Added support for
message assets through
Asset.business_message_asset,BusinessMessageAssetand the following enums and errors.- Enums:
 
- Added AssetAutomationType.GENERATE_LANDING_PAGE_PREVIEWto support automatically generating a landing page preview.
- AssetAutomationType.GENERATE_SHORTER_YOUTUBE_VIDEOSis now opted-in by default for Demand Gen video responsive ads.
- (For allowlisted accounts only; allowlist is currently closed) Added
Asset.app_deep_link_assetandAppDeepLinkAsset.
Conversions
- Conversion goals
- LifecycleGoalValueSettings.high_lifetime_valueis out of beta and now mutable.
- Added
CustomerLifecycleGoal.owner_customerto show the resource name of the customer which owns the customer lifecycle goal.
 
- Deprecated ConversionActionType.SALESFORCE.
Feeds
- Removed all feed-related entities, such as Feed,FeedMapping,FeedService,AdGroupFeed,feed_placeholder_view, etc. Users should now useassetsto achieve the same purpose.
Hotel & Travel
- Made min_daysandmax_daysofValueRuleItineraryAdvanceBookingWindowanoptionalfield to allow specifying 0 as a value. This supports targeting for travel searches that happen today.
Performance Max
- (For allowlisted accounts only) Brand guidelines
- Made Campaign.brand_guidelines_enabledmutable only when creating a Performance Max campaign.
- This is incompatible with Performance Max for travel goals.
- To enable brand guidelines for existing Performance Max campaigns, use a
newly added
CampaignService.EnablePMaxBrandGuidelines. Disabling brand guidelines is not supported.
- Added Campaign.brand_guidelinesandBrandGuidelinesto allow setting the brand's colors and font family.
- New error values:
- BatchJobError.CAMPAIGN_AND_CAMPAIGN_ASSET_TRANSACTION_FAILURE
- BrandGuidelinesMigrationError
- BRAND_GUIDELINES_ALREADY_ENABLED
- CANNOT_ENABLE_BRAND_GUIDELINES_FOR_REMOVED_CAMPAIGN
- BRAND_GUIDELINES_LOGO_LIMIT_EXCEEDED
- CANNOT_AUTO_POPULATE_BRAND_ASSETS_WHEN_BRAND_ASSETS_PROVIDED
- AUTO_POPULATE_BRAND_ASSETS_REQUIRED_WHEN_BRAND_ASSETS_OMITTED
- TOO_MANY_ENABLE_OPERATIONS
 
- CampaignError
- BRAND_GUIDELINES_NOT_ENABLED_FOR_CAMPAIGN
- BRAND_GUIDELINES_MAIN_AND_ACCENT_COLORS_REQUIRED
- BRAND_GUIDELINES_COLOR_INVALID_FORMAT
- BRAND_GUIDELINES_UNSUPPORTED_FONT_FAMILY
- BRAND_GUIDELINES_UNSUPPORTED_CHANNEL
- CANNOT_ENABLE_BRAND_GUIDELINES_FOR_TRAVEL_GOALS
- CUSTOMER_NOT_ALLOWLISTED_FOR_BRAND_GUIDELINES
 
- Made 
- Added
AssetAutomationType.GENERATE_ENHANCED_YOUTUBE_VIDEOSto support automatically generating enhanced video assets for Performance Max campaigns.
Planning
- (For allowlisted accounts only) Added
ContentCreatorInsightsService.GenerateTrendingInsightswhich allows users to see trending content topics on YouTube for given audience definitions.
- Added
GenerateCreatorInsightsRequest.country_locations[]to specify countries to search for the given criteria
- Added GenerateCreatorInsightsRequest.search_brandto specify a brand to search for creators
- Added new fields to
YouTubeChannelInsightsto provide additional channel information forsearch_channelsrequests:- channel_url
- channel_description
- top_videos
 
- Added new metadata fields to
AudienceInsightsAttributeMetadata:- youtube_video_metadata
- user_interest_attribute_metadata
- knowledge_graph_attribute_metadata
 
Videos
- Following the release of DataLinkService.CreateDataLink, we added the following methods to allow for mutating previously created data links:- RemoveDataLinkfor removing data links in a Google Ads account
- UpdateDataLinkfor accepting, rejecting and revoking data links in a Google Ads account
 
- Removed support for VIDEO_OUTSTREAMfrom the following enums:
Archived release notes
See Sunsetted versions for archived release notes.