Going Live Checklist

A quick pre-launch checklist covering script setup, ads.txt, ad unit divs, console verification, mobile, Core Web Vitals, and first-day revenue checks.

Use this checklist before sending real traffic through Advlume. Run through it once per site — it takes about 5 minutes and prevents the most common integration mistakes that cause zero fill or low CPMs on launch day.

Script & setup

  • ☐ The <script src="https://cdn.advlume.com/hb.js?site=YOUR-UUID" async></script> tag is in <head> on every page that has ad units.
  • ☐ The script URL contains your site's correct UUID (check it matches the UUID shown in your site settings).
  • ☐ The script is loaded with the async attribute — do not remove it or add defer.
  • ☐ No other conflicting GPT / googletag scripts are loaded before hb.js on the same page.

ads.txt

  • https://yourdomain.com/ads.txt is accessible (returns HTTP 200, not a 404 or redirect loop).
  • ☐ The file (or redirect) contains Advlume's demand-partner entries — visit https://advlume.com/ads.txt and verify a few lines are present in your own file.
  • ☐ If you're using a redirect, it returns a proper 301 (not 302 or meta-refresh) to https://advlume.com/p/YOUR-UUID/ads.txt.
  • ☐ Cloudflare (or any other proxy) isn't caching a stale empty ads.txt from before you set up the redirect.

Ad unit divs

  • ☐ Every placement <div> has both data-advlume-site and data-advlume-slot attributes.
  • ☐ Each data-advlume-slot value matches exactly a slot key you created in the dashboard (case-sensitive).
  • ☐ No two divs on the same page share the same data-advlume-slot value.
  • ☐ None of the ad divs are hidden with display:none or inside a hidden container at page load.
  • ☐ The div containers are wide enough to accommodate at least the smallest size in the slot's size set (e.g. a 300px-wide container can serve 300×250 but not 728×90).

DevTools console check

Open a page with ad units in Chrome, open DevTools → Console, and look for these lines in order:

[advlume] Config loaded for site YOUR-UUID
[advlume] Active bidders: adformOpenRTB, adkernel, …
[advlume] GAM targeting for advlume-SLOT-0: { … }
[advlume] Ad rendered: advlume-SLOT-0 … via=lineItem
  • ☐ You see Config loaded — confirms the CDN config was fetched successfully.
  • ☐ You see Active bidders — confirms Prebid is running and at least one bidder is configured.
  • ☐ You see GAM targeting — confirms Prebid bid keys were set before the GAM request.
  • ☐ You see Ad rendered — at least one slot served a creative.

If any of those lines are missing, check the Console Errors & Debugging guide.

Network tab check

  • cdn.advlume.com/hb.js returns HTTP 200 (not 404 or CORS error).
  • cdn.advlume.com/configs/YOUR-UUID.json returns HTTP 200 with a JSON body containing your ad units.
  • ☐ Requests to googlesyndication.com or securepubads.g.doubleclick.net are visible — confirms GPT loaded and ad requests fired.

Mobile check

  • ☐ Open a page on a real phone (or DevTools device emulation at 375px width). Mobile-only sizes like 320×50 render, and desktop-only sizes like 970×250 are not requested.
  • ☐ No horizontal scroll is introduced by an ad unit that's wider than the viewport.
  • ☐ The sticky footer ad (if used) slides in cleanly and the close button works.

Core Web Vitals

  • ☐ Ad divs that are above the fold have an explicit min-height set in your CSS equal to the smallest expected ad height — this prevents Cumulative Layout Shift (CLS) when the creative loads.
  • ☐ Run a Lighthouse audit on a page with ads. CLS should stay below 0.1.
  • ☐ The hb.js script is async — it must not block your LCP element.
Advlume's wrapper automatically collapses empty ad divs when no creative fills, so you don't need to write collapse logic yourself. But pre-reserving the space prevents the layout jump before the auction resolves.

Revenue verification (first 24 hours)

  • ☐ After sending real traffic, revenue appears on the dashboard within a few hours (data aggregates hourly from GAM).
  • ☐ The Live activity page shows visitors and winning bids from your site.
  • ☐ eCPM is above --.00 — if it's exactly zero after real traffic, check the ads.txt redirect and GAM ad unit path in DevTools.

Common last-minute gotchas

IssueFix
Script loads but no bids fireYour site config JSON may not have propagated yet. Wait 2 minutes after creating an ad unit and hard-refresh.
Ads show in desktop Chrome but not mobileSelected sizes may all be wider than 375px. Add at least one mobile size (320×50 or 300×250) to every slot.
Console shows "Config fetch failed"The UUID in the script tag doesn't match the site in your Advlume account. Re-copy the snippet from the site page.
GAM shows impressions but Advlume shows --Prebid bids aren't winning — GAM is serving house/remnant line items. Check that the Advlume price-priority line items are active in your GAM account.
Layout shift on loadAdd min-height: Xpx to the ad div in CSS, where X is the height of the smallest expected creative.
ads.txt check fails in GAMYour redirect is returning 302 instead of 301, or Cloudflare is caching the old file. Force a cache purge and switch to a permanent redirect.

You're live — what's next

Give it 24–48 hours for buyers to ramp up. CPMs typically improve over the first week as demand-side optimisation algorithms learn your inventory. To make the most of it:

Last updated 2 months ago