Upgrade to the latest version

Periodically, you might want to upgrade from an older major version of the Google Ads API to a newer major version. It could be because a version is sunsetting, or it could be because you want to use a new feature. We recommend that you always upgrade to the newest version.

Check out our deprecation schedule to plan your upgrades. See our versioning guide to learn how versioning works.

Here's a checklist to help you get started with the process of upgrading:

  1. Your endpoint will change when you change major versions. Update your client libraries to use the newest endpoint.
  2. Go through the release notes to see changes that were introduced in each release.
  3. Check out the tables below for specific areas to focus on for the version you're upgrading to.

For a comprehensive overview of changes based on a diff between the protos from the two versions, look at the diff table. The release notes provide details on features that changed during versions.

v20 to v21

Changes to services and their components
ConversionUploadService The `debug_enabled` field was removed from `UploadClickConversionsRequest`. Refer to our [announcement](//ads-developers.googleblog.com/2025/06/upcoming-removal-of-debugenabled-in.html) for more details.

v19 to v20

Changes to services and their components
ContentCreatorInsightsService, AudienceInsightsService Added AudienceInsightsDimension.YOUTUBE_LINEUP to replace AudienceInsightsDimension.YOUTUBE_DYNAMIC_LINEUP. This change also affects related types such as AudienceInsightsAttributeMetadata and AudienceInsightsDimension. Refer to the diff table for more details.

v18 to v19

Changes to services and their components
API-wide

All feed-related entities are removed from the API. Feeds have been deprecated for some time, replaced with assets.

Removed entities and their associated services:

  • AdGroupExtensionSetting
  • AdGroupFeed
  • CampaignExtensionSetting
  • CampaignFeed
  • CustomerExtensionSetting
  • CustomerFeed
  • ExtensionFeedItem
  • Feed
  • FeedItem
  • FeedItemSet
  • FeedItemSetLink
  • FeedItemTarget
  • FeedMapping

Removed enums:

  • FeedOrigin
  • PlaceholderType

Removed fields:

  • ChangeEvent.{feed,feed_item,feed_origin}
  • ChangeEvent.ChangedResource.{feed,feed_item,campaign_feed,ad_group_feed}
  • ChangeStatus.{feed,feed_item,ad_group_feed,campaign_feed,feed_origin}
  • Campaign.DynamicSearchAdsSetting.feeds
  • LocationGroupInfo.feed
  • Segments.placeholder_type

Removed views:

  • FeedPlaceholderView
AudienceInsightsService Submessage types AudienceInsightsAttribute, AudienceInsightsTopic, AudienceInsightsEntity, AudienceInsightsCategory, AudienceInsightsDynamicLineup, AudienceInsightsAttributeMetadata, YouTubeChannelAttributeMetadata, DynamicLineupAttributeMetadata, LocationAttributeMetadata, and UserInterestAttributeMetadata have been migrated out of the "resources" folder into the "common" folder so that they can be reused with the ContentCreatorInsightsService. These types work the same way, but you may need to import them from a different location, depending on your implementation.
AdGroupType, AdType, and AdvertisingChannelSubType The VIDEO_OUTSTREAM ad type has been removed.
DemandGenVideoResponsiveAdInfo When specifying the Campaign.asset_automation_settings or AdGroupAd.ad_group_ad_asset_automation_settings, omitting a setting for AssetAutomationType.GENERATE_SHORTER_YOUTUBE_VIDEOS for the DemandGenVideoResponsiveAdInfo ad type will result in being opted in for this feature. Previously, when omitting this setting, they were opted out.