Wednesday, October 21, 2026


Starting **December 4, 2026** , image extraction (`GENERATE_IMAGE_EXTRACTION`) will be **enabled by default (`OPTED_IN`)** **for newly created** **Performance Max** campaigns across Google Ads interfaces, including the [Google Ads API](https://developers.google.com/google-ads/api?utm_source=googleblog-adsdevs&utm_medium=blog&utm_campaign=adr-pmax-image-extraction-dec2026&utm_content=readmore-gaa), Google Ads UI, and Google Ads Editor. Crucially, this new campaign-level default applies **even if Dynamic Image Extensions are disabled at the account level** (`isImageExtractionAdExtensionEnabled`). Previously, campaigns left unset inherited their status from this account-level setting.


With image extraction, Google AI scans provided landing pages for high-resolution images to enrich creative assets and expand reach across Search, YouTube, Display, Discover, Gmail, and Maps. Existing Performance Max campaigns will retain their current configurations, but developers relying on account-level controls should explicitly set `OPTED_OUT` on new campaigns if they do not want image extraction enabled.

<br />

*** ** * ** ***

<br />

### **How to manage image extraction in the Google Ads API**

<br />


Image extraction is managed at the campaign level through the `asset_automation_settings` field on the[Campaign](https://developers.google.com/google-ads/api/reference/rpc/latest/Campaign?utm_source=googleblog-adsdevs&utm_medium=blog&utm_campaign=adr-pmax-image-extraction-dec2026&utm_content=readmore-campaign) resource:

- **Automation Type:** [AssetAutomationType.GENERATE_IMAGE_EXTRACTION](https://developers.google.com/google-ads/api/reference/rpc/latest/AssetAutomationTypeEnum.AssetAutomationType?utm_source=googleblog-adsdevs&utm_medium=blog&utm_campaign=adr-pmax-image-extraction-dec2026&utm_content=readmore-image-extraction)
- **Status:** [AssetAutomationStatus.OPTED_IN](https://developers.google.com/google-ads/api/reference/rpc/latest/AssetAutomationStatusEnum.AssetAutomationStatus?utm_source=googleblog-adsdevs&utm_medium=blog&utm_campaign=adr-pmax-image-extraction-dec2026&utm_content=readmore-opted-in) or[AssetAutomationStatus.OPTED_OUT](https://developers.google.com/google-ads/api/reference/rpc/latest/AssetAutomationStatusEnum.AssetAutomationStatus?utm_source=googleblog-adsdevs&utm_medium=blog&utm_campaign=adr-pmax-image-extraction-dec2026&utm_content=readmore-opted-out)

#### **Example: Explicitly opting out during campaign creation**


If your integration or clients prefer not to extract images from landing pages on new campaigns, you can explicitly set `GENERATE_IMAGE_EXTRACTION` to `OPTED_OUT` in your campaign mutate request. An example of how this would look using REST JSON is as follows:

```
{
  "name": "My Performance Max Campaign",
  "advertisingChannelType": "PERFORMANCE_MAX",
  "status": "PAUSED",
  "assetAutomationSettings": [
    {
      "assetAutomationType": "GENERATE_IMAGE_EXTRACTION",
      "assetAutomationStatus": "OPTED_OUT"
    }
  ]
}
```


To change the setting on an existing campaign, send a `CampaignOperation` update targeting `campaign.asset_automation_settings`. Note that `asset_automation_settings` is a repeated field. When updating a campaign, providing new settings **replaces the entire array** rather than merging with existing values. Be sure to retrieve and include all other desired `AssetAutomationSetting` entries (such as `TEXT_ASSET_AUTOMATION`) in your update request to avoid unintentionally clearing them.

#### **Example: Auditing existing campaigns**


To check the current automation settings across your Performance Max campaigns, you can query `asset_automation_settings` using Google Ads Query Language (GAQL):

```
SELECT
  campaign.id,
  campaign.name,
  campaign.asset_automation_settings
FROM campaign
WHERE campaign.advertising_channel_type = 'PERFORMANCE_MAX'
```


If a campaign does not have an entry for `GENERATE_IMAGE_EXTRACTION`, it is currently relying on the inherited account-level setting. You can check or toggle the account-wide Dynamic Image Extension setting directly in the Google Ads UI:

1. Navigate to **Campaigns \> Assets**
2. Click the three-dot **More** menu \> **Account-level automated assets**
3. Click the three-dot menu again \> **Advanced settings**
4. Check whether **Dynamic images** is turned **On** or **Off**


*** ** * ** ***

<br />

### **Recommended actions**

- **Review New Campaign Creation Workflows:**
  - **If you want image extraction enabled:** No action is needed. New Performance Max campaigns created after December 4, 2026 will automatically have image extraction enabled by default.
  - **If you prefer to opt out:** Update your campaign creation payloads before **December 4, 2026** to explicitly include `GENERATE_IMAGE_EXTRACTION` with `asset_automation_status = OPTED_OUT`.
- **Review Landing Page Media Rights:**
  - As with all automated asset features, confirm that you own all legal rights or permissions to the images published on your landing pages and allow Google to utilize them for commercial and advertising purposes.


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](https://goo.gle/ads-and-measurement-discord).

![Portrait of the author](https://developers.google.com/static/ads/blog/images/AVvXsEhMd1fdKsHQ-Ld1S2S7p1QnHKGIsAxgkzDAnAZ4Ennu3TL968-LZlrDhnCAtVhhh-UUMIKK6ecAadUoYY2_S-nU6HNVWDZK4vE28WYzIilQUhe8Fh_FMOaFo5sahlfpyIV7j_sR8xS-HtM_KU_deoWN91Y3dk21HE65O2lzO4fd8aOAFTxqpd2-rVhO5XM.jpg) - Dora Sun - Google Ads API Team

**Labels:**

[assets](https://developers.google.com/ads/blog/feeds/labels/assets.md.txt),

[google-ads-api](https://developers.google.com/ads/blog/feeds/labels/google-ads-api.md.txt),

[image](https://developers.google.com/ads/blog/feeds/labels/image.md.txt),

[performance-max](https://developers.google.com/ads/blog/feeds/labels/performance-max.md.txt)