The Ad Manager API now supports a read-only OAuth scope. This new scope, https://www.googleapis.com/auth/admanager.readonly, allows developers to request read-only access to their users' Ad Manager data.

This new scope is only available for the Ad Manager API. It is not supported by the legacy Ad Manager SOAP API, which will continue to require the full-access scope.

The read-only scope allows reading data and running reports, but does not grant permission to write or modify data. This provides an enhanced security layer for developers and users of read-only integrations, such as reporting dashboards or alerting tools.

No action is required for existing integrations. If your application does not require write access, we recommend migrating to the new read-only scope. For a refresher on how to configure OAuth, see Using Oauth 2.0 for Web Server Authentication.

As always, Ad Manager access controls, including User roles and Restrictions imposed by teams, are applied to all API requests regardless of the OAuth scope used.

If you have any questions or want to discuss this post, reach out to us on our Google Advertising and Measurement Community Discord server.

Increased Request Limits for BatchJobService Enhance Large Asset Uploads

We're pleased to announce significant increases to the request size limits for the BatchJobService.AddBatchJobOperations method in the Google Ads API. These changes are designed to streamline workflows, particularly for developers uploading multiple large assets like images, by reducing the need to split uploads into numerous smaller requests.

The following limits have been increased:

Request Size Cap on AddBatchJobOperations: Increased from 10,484,488 bytes (approximately 10.48 MB) to 41,937,920 bytes (approximately 41.94 MB).

Single Mutate Operation Size: While the overall request can be larger, the size of a single mutate operation within the batch is capped at 10,484,488 bytes (approximately 10.48 MB).

What This Means for Developers:

This update allows you to include more operations, especially those containing sizable data like image assets, within a single AddBatchJobOperations request. This can simplify your client-side logic and potentially improve throughput by reducing the number of round trips required to add all operations to a batch job.

For example, when uploading multiple images, each of which can be up to 5,242,880 bytes (approximately 5.24 MB), you can now batch more of these into a single request, up to the new 41,937,920 bytes (approximately 41.94 MB) total request limit.

Important Notes:

  • While the request size limit has increased, other limitations such as the maximum number of operations per request (10,000) and per job (1 million) still apply. Please refer to the Best Practices and Limitations guide for full details.

We believe this enhancement to the BatchJobService will offer greater flexibility and efficiency for managing bulk operations in the Google Ads API.

As always, please reach out to us via the forum or our other support channels if you have any questions or feedback.

If you have any questions or want to discuss this post, please reach out to us on our “Google Advertising and Measurement Community” Discord server.

Starting in April, 2026 the Google Ads API will benefit from a series of infrastructure changes designed to improve the Offline Conversion Import experience. These upgrades will not result in any breaking changes to the Google Ads API, however there may be minor fluctuations in attribution rates as the changes are rolled out.

Here is a breakdown of the rollout and the improvements you can expect:

  1. Improved attribution and fallback recovery (April, 2026): We will implement changes allowing us to attribute some expired GCLIDs and clicks that occurred before a conversion. Once deployed, you may receive fewer EXPIRED_EVENT and CONVERSION_PRECEDES_EVENT errors in conversion upload responses, and you may notice higher attribution rates.
  2. Flexible import requests (April - May, 2026): We will improve the authorization structure for conversion import requests to make it easier for manager or client accounts to import conversions on behalf of a different trafficking account. Once released, users should expect a reduction in UNAUTHORIZED_CUSTOMER and INVALID_CUSTOMER_FOR_CLICK errors in conversion import responses. This may also result in an increase in attribution.

Make sure to review our guidance on how to maximize the performance of your Google Ads conversion data. And take a look at the Data Manager API, including our migration guide for Google Ads API users.

Reach out to the Google Ads API support channel if you have any questions. And if you have any questions or want to discuss this post, please reach out to us on our “Google Advertising and Measurement Community” Discord server.

Today, we’re announcing the v23.2 release of the Google Ads API. To use the new v23.2 features, you must upgrade your client libraries and client code. All the updated client libraries and code examples have been published.

Come join us for a live walkthrough of this release in our "Google Ads API Release Highlights" event on Discord or on our Ads Developers YouTube Live tomorrow (March 26th at 11a ET). This will also be recorded and posted on YouTube for those who can’t make the live events. If you have any questions or want to discuss this post, reach out to us in the #ads-api channel on Discord.

Here are some of the key features in this release:

Where can I learn more?

The following resources can help you get started:

For technical support issues, reach out to https://support.google.com/google-ads/gethelp

Today we’re announcing two huge improvements for Display & Video 360 bulk tools.

First, we are launching support for Display & Video 360 API, Structured Data Files, and Bid Manager API products in the existing “Google Advertising and Measurement Community” Discord server! To join, just click this invite link and follow the onboarding guide.

Our team will be on this server regularly to interact with the Display & Video 360 community, answering questions and responding to feedback. We’ll also let you know what’s new with our products in the #announce-display-video-360 channel.

Second, we have made a significant update to the Display & Video 360 API and Structured Data Files documentation. The updated site is designed to make it easier to learn how to perform common tasks with Task guides, browse important conceptual information with Concept guides, and review reference material with updated navigation that highlights currently-supported versions and features of the API and Structured Data Files.

If you have feedback on these changes or the content of any of the guides, please click the Send Feedback button at the bottom of any page in the documentation.

If you have any questions or want to discuss this post, you can now reach out to us on our “Google Advertising and Measurement Community” Discord server.

A new podcast for the ads technical community

We are thrilled to announce the launch of Ads DevCast, a new bi-weekly vodcast and podcast series brought to you by Google’s Advertising and Measurement Developer Relations team.

Hosted by Developer Relations Engineer Cory Liseno, this show is dedicated to deep dives into our latest technical updates, insights from the engineers building our tools, and expert discussions on products like Google Ads, Google Analytics, Display & Video 360, Meridian, and more.

While you might already be familiar with the Ads Decoded podcast — where Ginny Marvin does a fantastic job bridging the gap for marketing teams on campaign strategy — Ads DevCast is built specifically for builders and developers.

You can tune in on our Google Ads Developers YouTube channel or find the podcast on Google Ads Developers in YouTube Music.

Episode 1: MCPs, Agents, and Ads. Oh My!

In our premiere episode, we explore the "agentic shift" currently reshaping the advertising landscape. We’re seeing a world where agents, not just humans, are becoming primary consumers of our APIs. To help you stay ahead, we’ve released several tools designed to make your integrations smarter, faster, and more accessible.

Getting Smarter with MCP Servers

One of the covered topics is Model Context Protocol (MCP), and how it allows your agents like Gemini CLI to securely access your data.

We’ve recently released open source, self-hosted MCP servers for the Google Ads API and Google Analytics API. These tools allow you to ask natural language questions directly to your agent, such as:

  • "What are my active campaigns?"
  • "Which properties had the highest traffic yesterday?"
  • "What are my top-selling products over the last month?"

The real magic happens when you combine this data with generative power. In the episode, we discuss how you can use the Analytics MCP to not only pull reports but then ask Gemini to generate a data-justified marketing plan based on those specific results.

Moving Faster with the Developer Assistant

Technical speed is another major focus. To reduce the time spent digging through documentation, we’ve launched the Google Ads API Developer Assistant. This Gemini CLI extension allows you to use natural language to generate, debug, and even test-run integration code.

In one real-world test, we used the assistant to solve a complex reporting issue regarding policy disapprovals. What would normally take days of back-and-forth with email support was resolved by the assistant in minutes, providing the exact GAQL query needed to get the job done.

Improving Accessibility

AI tooling is also changing who can interact with our technical systems. We’re seeing a shift from the "Ads Developer Community" to a broader "Ads Technical Community." Marketing power users are now leveraging MCP servers to perform real-time data operations without waiting for a full development lifecycle. This frees up engineering teams to focus on high-impact "blue sky" projects while giving marketers the agility they need.

We want to hear from you

This show is a pilot, and your feedback is important so we can tailor our content to what is most useful for you. Please take a moment to fill out our Episode 1 Survey and let us know what topics you want us to cover next.

Be sure to also join our Discord Community where you can join the conversation with Googlers and fellow developers.

Thanks for tuning in! We'll see you in two weeks for Episode 2.

Google Ads is committed to providing a reliable and efficient environment for all advertisers. To ensure that our systems remain stable and that resources are allocated fairly, we are introducing a uniqueness check for Lookalike user lists that prevents the creation of duplicate lists. These changes primarily impact Demand Gen campaigns and will begin to be enforced starting on April 30, 2026.

A Lookalike user list is considered a duplicate if it shares all of the following attributes with an existing list:

  • Seed lists: The underlying source audiences used to build the Lookalike.
  • Expansion level: The degree of similarity to the seed lists.
  • Country targeting: The geographical reach of the Lookalike list.

If an advertiser attempts to create a duplicate list after April 30, 2026, the Google Ads API will return the error code DUPLICATE_LOOKALIKE for v24 and beyond. For earlier versions, the error will be RESOURCE_ALREADY_EXISTS.

What this means for you

For the majority of advertisers, these changes will go unnoticed, as most current usage falls well within these new boundaries. However, to ensure a smooth transition, we recommend the following:

  • Reuse audiences: Instead of creating a new, identical Lookalike list, verify if an existing one with the same configuration can be reused in your campaigns.
  • Update error handling: If you use the Google Ads API, ensure your integrations are prepared to handle the new error starting on April 30, 2026: v24 will return the DUPLICATE_LOOKALIKE error code and all previous versions will return RESOURCE_ALREADY_EXISTS.

If you have any questions or want to discuss this post, please reach out to us on our “Google Advertising and Measurement Community” Discord server.

Starting on April 1, 2026, the Google Ads API will no longer accept new adopters of Customer Match. As with our recent announcement for the use of session attributes and IP address in click conversions in the Google Ads API, we’re recommending that new adopters of Customer Match integrate with the Data Manager API as their primary user data import API.

Developers who have not adopted Customer Match, or have not uploaded data to a Customer Match list between October 2025 and March 2026, will receive an error if they attempt to upload to a Customer Match list. Developers who have already adopted Customer Match can continue importing user data using the Google Ads API while they integrate with the Data Manager API.

Technical details

  • Developers will be allowlisted by their developer token.
  • Once this change is rolled out, users who are not on the allowlist will receive the error CUSTOMER_NOT_ALLOWLISTED_FOR_THIS_FEATURE when attempting to upload user data to a Customer Match list using either the OfflineUserDataJobService or UserDataService.
  • See the documentation for integrating with the Data Manager API for Customer Match imports for Google Ads.

Reach out to the Google Ads API support or Data Manager API support channels if you have any questions.

If you have any questions or want to discuss this post, please reach out to us on our “Google Advertising and Measurement Community” Discord server.