“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.

Design the master for the strictest platform; packaging for the others becomes trivial. A compact MPU with a short, finished story and a clear end frame. Built to the tightest platform rule, the same creative packages for all three platforms without redesign.

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 clickTag variable 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.
Test the platform limits on the size most likely to break them. A leaderboard is where weight and file count get tight first: wide imagery, a logo and a CTA in very little height. Check the strictest package on the hardest size.

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.