“It’s all Google” is a common assumption when a campaign runs in Google Ads, Display & Video 360 and Campaign Manager 360 at the same time. The platforms share a lot, but their HTML5 rules are not the same, and a ZIP that passes one can be rejected by another. The practical answer is one creative master with a deliberate package for each platform.
The rules below are quoted from Google’s own help pages as checked on 2 October 2026. Platform specifications change, so treat them as a starting point and confirm the current pages before a campaign, the same way you would record them in a spec matrix.
Where the three platforms differ
| Google Ads (uploaded HTML5) | Display & Video 360 | Campaign Manager 360 | |
|---|---|---|---|
| Weight | ZIP of 600 KB or smaller | Up to 5 MB for all files a browser downloads | Up to 10 MB |
| Files in the ZIP | No more than 40 | Up to 100 | Up to 100 |
| Animation | 30 seconds or shorter, loops must stop by 30 seconds | No longer than 30 seconds | Set by the campaign and publisher |
| Click-through | Destination set in Google Ads (no clickTag variable described in the spec) | clickTag variable, opened with window.open(window.clickTag) |
clickTag variable as the click destination |
| Backup image | Not part of the HTML5 spec | Not covered by the HTML5 guidance | Uploaded separately by the trafficker, not inside the ZIP |
| External files | Relative paths only; Google Fonts and Google-hosted CreateJS and GreenSock allowed | Keep requests and files small; at most 100 HTTP calls per ad | Only the HTML file and the assets it references |
Sources: Google Ads uploaded display ad specifications, Display & Video 360 HTML5 guidance and Campaign Manager 360 HTML5 requirements.
Build the master to the strictest rule
The tightest limits come from Google Ads: 600 KB and 40 files. A master built to fit them will also fit DV360 and CM360, so there is no reason to design for 5 MB and then fight to cut the Google Ads version down later.
In practice that means a file-weight budget agreed before production, compressed images sized for the slot, one animation library and no stray files. It also means an animation that tells the full story inside 30 seconds and stops on a complete final frame, because two of the three platforms state that limit outright.
Every platform also needs the banner’s size declared in the HTML. Google Ads and CM360 both ask for the ad.size meta tag in the head, for example <meta name="ad.size" content="width=300,height=250">.
Package per platform, not per guess
The creative stays identical. What changes is the wrapper around it:
- Click handling. DV360 and CM360 expect a
clickTagvariable that the platform fills in at serving time. Keep the clickTag handoff explicit so ad ops can see where the destination comes from. - Backup images. CM360 asks for the backup image to be uploaded separately and not included in the HTML5 ZIP. Deliver it next to the ZIP, named so the trafficker can match it to the right size.
- External references. Google Ads allows Google Fonts and Google-hosted GreenSock. Other placements may not, so a self-contained master with local fonts and libraries is the safest default.
- Naming. Put the platform in the package name, so a DV360 ZIP never ends up uploaded to Google Ads.
A short checklist for multi-platform delivery
- Confirm which platforms the set runs on before production, and record the rules with the date checked.
- Build one master to the strictest limits: weight, file count and 30-second animation.
- Declare the size with the ad.size meta tag.
- Package per platform: click handling, backup image placement and external references.
- Name every ZIP with size, version and platform.
- Test each package the way its platform will serve it, not only by opening the HTML locally.


