Weight & build

Unacceptable HTML5 ad

Ad Manager API value
UNACCEPTABLE_HTML_AD

What Google's rule says

The Ad Manager API defines UNACCEPTABLE_HTML_AD with a single line: "Unacceptable HTML5 ad." That is the whole documented definition.

What actually causes it

  • An HTML5 bundle that writes into the parent document or tries to escape its frame.
  • Script that reads or manipulates the page around the ad rather than staying inside the creative.
  • A build that fails to render at all in Google's rendering environment while working locally.
  • Bundled code that duplicates functionality the ad server or SDK is supposed to provide.

How to fix it

Rebuild from a known-good HTML5 template rather than bisecting the existing bundle. With no detail in the violation itself, replacing a creative you understand is faster than guessing at which line in one you inherited caused it.

The part that is not obvious

This is the one violation in the Ad Manager enum whose description is just its own name restated. Every other value in CreativePolicyViolation tells you something the name does not — MALWARE_IN_LANDING_PAGE tells you where the malware is, DYNAMIC_DNS tells you what the landing page did. This one tells you nothing, which means the reason string in the Ad Manager interface is your entire diagnosis, and there is no additional detail to request. Google's policy-violation guidance says as much: it cannot provide information beyond what is already shown in Ad Manager.

Related reasons

Reason name and API value verified against Ad Manager API — CreativePolicyViolation (v202602) on 30 July 2026 (Ad Manager SOAP API v202602). The causes and fix above are practitioner guidance, not Google policy text.