Google has added an optional field to the Campaign Manager 360 and Display & Video 360 APIs that lets advertisers declare a creative or creative asset as having been created or edited with AI. Trevor Mulchay of the Display & Video 360 API Team published the announcement on the Google Ads Developer Blog on 28 July 2026. The field is named syntheticContentAttestationStatus, and the detail that matters operationally is that once set on a resource it can never go back to unset.
This is a developer-surface change. It is written through API calls rather than flipped in a campaign interface, which makes it a bulk-upload question for teams producing creative programmatically.
What Google published on 28 July 2026
Google's wording on the Google Ads Developer Blog is: "In the last week, we have launched updates in both the Campaign Manager 360 API and Display & Video 360 API that add new optional fields to resources in both APIs, which allow you to label a creative or creative asset as having been created or edited with AI." The phrase "in the last week" is Google's own. The post is dated 28 July 2026 but does not pin the launch to a specific day, so nothing more precise should be inferred.
Where the label appears: the EU, India and New York state
Setting the field does not put a label on every impression. Google states: "Labels will be applied to ads with such assets serving in regions with local AI labeling regulations. As of today, those regions are the European Union (EU), India, and New York state." Thailand is not among the three. Google's post does not say why those regions, or whether the list will grow.
Unset to set is the one-way step
This is the part summaries compress. Google's full sentence reads: "Setting this field to IS_SYNTHETIC applies the label in the regions listed above, while setting it to NOT_SYNTHETIC confirms that the content does not require a label. You can also leave the field unset. A label will not be applied if the field is left unset. However, once the field is set for a resource, it can't be unset and may only be updated to be either IS_SYNTHETIC or NOT_SYNTHETIC."
That is three states and one closed door. You may leave the field unset, and unset produces no label. You may set it to IS_SYNTHETIC or NOT_SYNTHETIC, and after that you can still switch between those two values as often as you need. What you cannot do is return the resource to unset. A creative that has been declared, in either direction, stays declared.
This is the API surface, not the asset-studio control
Two different things are being called AI labelling this year, so separate them. What Trevor Mulchay described on 28 July 2026 is an API field on Campaign Manager 360 and Display & Video 360 resources, for teams writing code against those platforms. It is not the AI-label control inside Google Ads asset creation tooling. If nobody in your organisation writes against the CM360 or DV360 APIs, this update does not reach your workflow.
Which resources and methods carry the field
The write paths Google lists, plus a bulk-file path not yet shipped:
| Surface | Resources | Methods that set or update the field |
|---|---|---|
| Campaign Manager 360 API | Creative | Created via creatives.insert; updated via creatives.patch and creatives.update |
| Display & Video 360 API | Creative and AdAsset | Created via advertisers.creatives.create, advertisers.adAssets.create, advertisers.adAssets.bulkCreate and advertisers.adAssets.upload; set or updated via advertisers.creatives.patch and advertisers.adAssets.patch |
| Structured Data Files v10.1 | YouTube videos used as video assets in Ad files, or as related videos in Line Item files | Not yet available. Google says v10.1 is "scheduled to launch in the coming weeks", with no date given |
Google points readers to its Campaign Manager 360 and Display & Video 360 Help Centers for more.
What this means for Thai marketers
Google names the European Union, India and New York state, and Thailand is not on that list, so the labelling itself does not touch a campaign serving only Thai users. That is what the source supports. What follows is reasoning rather than something Google said.
The teams this reaches in Thailand run DV360 or CM360 for clients serving the EU, India or New York, or generate creative at volume through scripts. For them the one-way step is an operational risk rather than a policy one. A bulk upload that writes NOT_SYNTHETIC across a whole library by default cannot be walked back to unset, and a run that sets the field on thousands of assets before anyone has agreed what counts as "edited with AI" leaves a permanent declaration behind. Settling that definition costs nothing before the first write. Where AI-assisted production is already part of how content and creative get made, answer it once, in writing, for the whole team.
Common questions about the AI content labelling field
Does this apply to ads serving in Thailand?
Not as things stand. Google names the European Union, India and New York state as the regions where labels will be applied, and Thailand is not among them. The post does not say whether other regions will be added.
Can I undo the field once it is set?
Only partly. Google states that once the field is set on a resource it cannot be unset, but may still be updated to either IS_SYNTHETIC or NOT_SYNTHETIC. The declared value stays changeable; the fact that a declaration exists does not.
Does Google detect AI-generated creative on its own?
The post does not say. It describes an optional attestation field advertisers set themselves, and does not address independent detection.
What happens if NOT_SYNTHETIC is declared for creative that was made with AI?
Google's post does not address it. It states only that NOT_SYNTHETIC "confirms that the content does not require a label", describing no consequence for an incorrect declaration.
When does Structured Data Files v10.1 arrive?
No date has been published. Google says v10.1 is "scheduled to launch in the coming weeks" and that it will allow labels on YouTube videos used as video assets in Ad files or as related videos in Line Item files.
What to do next
If your team writes against either API, the useful hour comes before the next bulk write: agree what "created or edited with AI" means for your process, decide whether unset is the right default meanwhile, then make the value explicit in the upload code rather than letting a library default pick it. Google's post is on the Google Ads Developer Blog. The same questions turn up in generative engine optimisation work.







