What changed
On August 31, 2026, Google changes Standard Shopping campaigns so Local Inventory Ads are enabled by default wherever the campaign is eligible to use local inventory. The Google Ads API backend now treats `Campaign.ShoppingSetting.enable_local` as true for Shopping campaigns regardless of the supplied value. In Google Ads API v25.1 and later, attempting to set `enable_local` to false returns `ContextError.OPERATION_NOT_PERMITTED_FOR_CONTEXT`; in older API versions the false value is silently treated as true. Advertisers that need an online-only campaign must instead use a listing scope with `product_channel=ONLINE` or the inventory filter in the Google Ads UI. Google says the field continues to work normally for other supported campaign types such as Performance Max and Demand Gen.
Why it matters
A campaign-management integration can change behavior without changing its own configuration: code that used `enable_local=false` as a safety boundary can now either fail or silently stop enforcing that boundary. For retailers and agencies, that can mix local and online inventory into a campaign unless a replacement filter is applied. The operational fix is therefore not just upgrading a client library; teams need to encode channel separation in the supported campaign criterion or UI inventory-filter model and verify reporting and budgets after the transition.
Local inventory is now the Shopping default
Google is aligning Standard Shopping more closely with its newer retail campaign behavior by turning on the local-products setting automatically. The practical scope is narrower than 'all Google Ads': the change targets Shopping campaigns that can use Local Inventory Ads, not every campaign type.
The old false switch is no longer a control
For Shopping campaigns, the backend now overrides `ShoppingSetting.enable_local` to true. With API v25.1 and later, code that explicitly mutates the field to false receives `ContextError.OPERATION_NOT_PERMITTED_FOR_CONTEXT`. Older API versions do not preserve the old behavior either; they accept the request but treat the setting as true.
Online-only campaigns need an explicit listing scope
Google’s recommended API replacement is a campaign listing scope whose `product_channel` is `ONLINE`. Advertisers managing campaigns in the UI can use the Inventory filter to select online or local inventory. Teams that deliberately silo local and ecommerce budgets should migrate that distinction before relying on post-August campaign behavior.
Performance Max and Demand Gen are not part of this API break
Google says `enable_local` continues to function for other campaign types that support it, including Performance Max and Demand Gen. Shared automation should therefore branch by campaign type rather than deleting the field globally.