๐Ÿš€ Live Optimon AI is out of beta: ranked answers from your own live GAM and Prebid data, and a briefing every morning before you ask.Read the post โ†’

Prebid Cache is gone. Six months on, here is the video header bidding checklist

Microsoft's public Prebid Cache closed on 30 April 2026. What breaks when a video setup still points at it, how to check yours in a browser console, and the three ways publishers replaced it.

A wooden shelf holding a row of black video cassettes with violet labels, one slot empty with a dust outline and a violet ribbon hanging where the cassette was.

The public Prebid Cache that Microsoft ran at prebid.adnxs.com/pbc shut down on 30 April 2026, after one extension from the original January date. Any Prebid video setup still configured to cache at that endpoint now wins auctions it cannot play: the bid wins in Ad Manager, the player asks the cache for the VAST, the cache is gone, and the slot shows a VAST error. Six months later this is still turning up on sites that migrated the main domain and forgot a section, an AMP template or a second wrapper.

Here is what broke, how to check, and how publishers replaced it.

What the cache was doing

Prebid video runs the auction in the page, like display, but the winning creative is a VAST document the video player has to fetch later, after Ad Manager has run its own auction and decided the Prebid line item won. Something has to hold that VAST between the two moments. That is the cache: Prebid posts the winning bid's VAST to it, gets back an ID, passes the ID to Ad Manager as a key-value, and the player fetches the VAST by ID when the line item renders.

Microsoft's public endpoint was free and was the default in a great many setups. One estimate before the shutdown put it at more than 60 percent of configured cache endpoints. When it closed, every one of those setups kept bidding and kept winning, and the player kept failing at the last step. Nothing in the Prebid auction logs looked wrong.

The 30-second check

On a page that serves video ads, open the console and run:

pbjs.getConfig().cache

Three outcomes:

  • undefined: you are not caching, which is fine only if you run local caching or no video.
  • An object with a url that contains adnxs.com: this is the problem. Every winning video bid on this page fails.
  • An object with a url pointing somewhere else: check that the host answers. A quick request to the URL should return a response from a live cache, not a timeout.

Run it on every template that serves video, on AMP pages, and on any site section that loads a separate wrapper build. The shutdown stories we hear in October are almost all "we fixed the main site in March".

What a broken cache looks like in the reports

Because the auction still runs, the symptoms sit downstream:

  • In Ad Manager: the Prebid video line items keep winning impressions in the delivery report, but video completion and start metrics drop, and VAST error rates rise. If you report on creative errors, error code 303 (no ads) and 301 (timeout) climb.
  • In Prebid analytics: bid rate and win rate look normal. Render rate, if you track it, falls off a cliff. This gap between "won" and "rendered" is the single most useful number in a video setup, and most dashboards do not have it.
  • In revenue: video revenue from Prebid drops to near zero while the auction metrics say nothing changed. Direct video and Ad Exchange video hold, so the total masks the loss.

If your reporting cannot put won bids next to rendered impressions per bidder, that is the gap to close before the next migration of any kind.

The three ways publishers replaced it

1. A hosted cache from a vendor. Several companies stood up Prebid Cache services in the months before the deadline. The configuration change is one line: the cache.url moves to the vendor's host. Cost is per request or flat; the appeal is that nothing else changes. Check the vendor's uptime commitment and where the servers are, because the cache sits on the critical path of every video render.

2. Your own cache. Prebid Server includes a cache module, and some publishers already ran Prebid Server for other reasons. Running it yourself removes the vendor from the path and adds an operational duty: the service must answer within a few hundred milliseconds from wherever your readers are, or you have replaced one failure with a slower one.

3. Local caching. Microsoft's own recommendation was to switch to local caching, where the VAST is held in the browser and the player reads it from there. It avoids the round trip entirely. During the migration, community reports described poor behaviour with some bidders that maintain their own caching, with Rubicon, Xandr and Nativo named. Test per bidder on a slice of traffic rather than flipping it for everyone.

A fourth answer, from Primis, was to question whether the cache was doing useful work at all for their setup; their internal logging said it largely was not. That is a legitimate finding for a network that controls its own player, and less so for a publisher who runs a standard GAM video line item.

The checklist to run this week

  1. Run the console check on every video-serving template, including AMP and any section with its own wrapper.
  2. Pull the Ad Manager delivery report for Prebid video line items with video start and VAST error columns, last 30 days against the 30 days before April.
  3. In your Prebid analytics, compare won bids and rendered impressions per bidder for video. Any bidder with wins and no renders is caching somewhere that does not answer.
  4. If you moved to a vendor cache, request their uptime report for the last quarter. If you run your own, look at its latency from your top three countries.
  5. Write the cache URL and the owner of the cache into the ad stack runbook. The next person to touch the wrapper should not have to find this post.

Optimon reads your Prebid analytics and Ad Manager reports together, so a bidder that wins video auctions and renders nothing shows up as a ranked cause the next morning, with the numbers, rather than as a gap in a quarter-end review.

FAQ

How do I check whether my site still uses the old Prebid Cache?

Open a page with video ads, open the browser console and run pbjs.getConfig().cache. If the returned URL contains adnxs.com, your bids are being cached at an endpoint that no longer serves, and winning video bids fail at render time.

Why does Google Ad Manager need the cache at all for Prebid video?

Prebid wins are passed to Ad Manager as key-values; if the Prebid line item wins the Ad Manager auction, the player fetches the VAST by the cache ID from the cache URL. Without a working cache the fetch fails and the player reports a VAST error instead of playing the ad.

Is local caching a safe default?

It works for many setups, but community reports during the migration described bidders that maintain their own caching (Rubicon, Xandr and Nativo were named) behaving worse with local caching enabled. Test it per bidder with a small share of traffic before switching everything.

Sources

Contact

Let's talk yield.

Whether you want a demo, a free audit, or just want to ask us something - we're a real team that reads every email.

Response time

We reply to every message within one business day. Enterprise enquiries typically get a call scheduled same-day.

Direct line

Prefer email? hello@optimon.io

Not sure where to start?

Drop your domain into the homepage scanner. We'll show you what we find before you commit to anything.

Free scan โ†’