Pull up your Ad Manager delivery report for any decent-sized site and you'll usually find that 70-85% of total ad revenue is coming from what gets lumped together under one word: programmatic. That's Open Bidding partners, AdX, header bidding wrappers, and a scattering of programmatic direct deals, all mixed into a single bucket that most publishers never actually unpack. I've sat across from site owners who've run programmatic demand for years and still can't tell me the difference between an SSP and a DSP. That gap costs them money, because you can't negotiate floors or diagnose a fill drop for something you don't understand.
What The Word Programmatic Actually Means
Programmatic isn't a product or a platform, it's a description of how a transaction happens. Any time an ad impression is bought or sold through software, using rules and data instead of a person picking up the phone or emailing a spreadsheet, that's programmatic. It covers real-time bidding auctions, private marketplace deals, and even direct-sold campaigns that get trafficked through automated systems instead of manual insertion orders. The confusion I run into constantly is publishers treating programmatic as a synonym for remnant or cheap. It isn't. Some of the highest-CPM demand in your stack, Google's own demand, premium DSPs buying through PMPs, is 100% programmatic.
Think of it less like a garage sale and more like a commodities exchange. When your page loads, an auction gets created, dozens of buyers evaluate that specific impression, this user, this device, this page, this moment, and place bids within roughly 100-200 milliseconds. Nobody negotiated a rate card in advance for most of that demand. The price is being decided fresh, every single time, based on how much a specific buyer's algorithm thinks that specific viewer is worth right now. That's the part that trips people up: the same ad slot on the same page can sell for $0.40 one refresh and $6 the next, depending entirely on who shows up to bid.
Before programmatic took over, filling unsold inventory meant either leaving it blank, running house ads, or working through a handful of ad networks that resold your space at a markup with almost no transparency into who actually bought it. I remember accounts running six or seven daisy-chained network tags just to squeeze out a $0.60 CPM on remnant space. Programmatic collapsed that chain. Now a single AdX or Open Bidding connection can expose your inventory to thousands of buyers simultaneously, all competing against each other in real time, which is exactly why well-optimized programmatic stacks now regularly outperform what publishers used to get from direct sales reps on mid-tier inventory.
RTB And Programmatic Direct Are Not The Same Thing
Real-time bidding is the auction model everyone pictures when they hear programmatic: open competition, per-impression pricing, no guarantees. Programmatic direct is something else entirely, a pre-negotiated deal between you and a specific buyer, at a fixed or floor price, delivered through the same programmatic pipes instead of a manually trafficked insertion order. The buyer already agreed to run 500,000 impressions on your homepage at $8 CPM before a single ad request happened. RTB decides that on the fly, direct deals decide it in advance. Both flow through Google Ad Manager, both can render through the same ad tags, and that's exactly why publishers conflate them.
The practical difference shows up in your reporting. RTB revenue is volatile day to day because it's a live market reacting to advertiser budgets, seasonality, and even breaking news events that shift demand. Programmatic direct revenue is steady and predictable because the terms are locked. A publisher I worked with ran 30% of their inventory through direct deals with three agency trading desks and used RTB to fill the rest, and their month-to-month revenue variance dropped from around 22% to under 9%, simply because a third of their demand stopped behaving like a stock ticker.
- RTB: price set per impression, in real time, through open or private auctions
- Programmatic direct: price and volume agreed upfront, delivery still automated
- Private marketplace (PMP) deals sit in between, invite-only auctions with a fixed floor
- Preferred deals: first-look access at a fixed price before the open auction runs
What A DSP Actually Does, From Your Side Of The Fence
A demand-side platform is software an advertiser or agency uses to buy inventory across thousands of sites at once, without a human evaluating each one individually. Trading desks at agencies, brands running their own in-house buying, and performance marketers all plug into DSPs like The Trade Desk, DV360, or Amazon DSP to set targeting rules, budgets, and bid strategies, then let the algorithm hunt for impressions matching those rules across every exchange it's connected to. From your side, a DSP is invisible, you never talk to it directly. But its bidding behavior is what actually determines your CPMs on any given day.
DSPs bid based on signals, and viewability is one of the biggest levers in that calculation. A DSP evaluating two identical ad slots will consistently pay more for the one it predicts will actually be seen, because most advertisers are paying on a CPM basis but measuring success on viewable impressions and downstream conversions. I've seen sites lift RPM by 15-20% just from moving units above the fold or fixing lazy-load timing, with no change in fill rate at all, the bids simply got more aggressive once viewability scores improved. If you haven't looked at how viewability actually affects buyer behavior, that's worth doing before you touch anything else on this list.
DSPs also carry brand safety and fraud filters that can quietly suppress your fill without ever showing up as a line item you can query. A site with messy content categorization, excessive ad density, or a history of invalid traffic flags will see certain DSPs simply decline to bid at all, which looks identical in your reports to low demand even though the real cause is a trust problem upstream. This is why two sites with similar traffic and layout can have wildly different fill rates from the exact same exchange connection.
The SSP's Job, And Why Google AdX Is Different From The Rest
A supply-side platform is the mirror image of a DSP, it's the software publishers use to expose their inventory to buyers, manage floor prices, block unwanted categories or advertisers, and route the resulting auction data back into your ad server. Where a DSP represents demand, an SSP represents supply. Most mid-size and large publishers run several SSPs simultaneously through header bidding, each one connecting to a different slice of the buyer ecosystem, because no single SSP has a relationship with every DSP on earth.
Google AdX is technically an ad exchange, not just an SSP, and it holds a unique position because it's the only major exchange with direct, unrestricted access to Google Ads and Display & Video 360 demand, two of the largest buying pools in the entire ecosystem. That access alone is why AdX consistently posts the highest win rate in most header bidding setups I've audited, often clearing 35-45% of total auctions on well-optimized sites even when it's competing against six or seven other bidders. You need a Google-approved Ad Manager account to access it directly, which is part of why AdX approval is treated as a milestone rather than a formality.
Other exchanges, OpenX, Index Exchange, PubMatic, Magnite, operate similarly to AdX in mechanics but pull from different demand pools, agency relationships, and regional buyers. Running several of them side by side through header bidding isn't redundant, it's how you make sure a buyer who only trades through PubMatic's exchange still gets a shot at bidding on your inventory. Each additional well-vetted SSP connection is, in effect, another door into a different room full of advertisers who'd otherwise never see your site.
- SSP: manages your floors, blocklists, and inventory rules
- Ad exchange: the marketplace where SSP-submitted inventory actually gets auctioned
- AdX: Google's exchange, with exclusive access to Google Ads and DV360 demand
- Third-party exchanges: extend reach into demand pools AdX can't touch
Following A Single Ad Impression From Page Load To Rendered Creative
Here's what happens, in order, in the roughly 150-300 milliseconds between your page loading and an ad appearing. A visitor lands on an article page with a 300x250 slot mid-content. The page fires an ad request, and if you're running header bidding, your wrapper simultaneously sends bid requests to every connected SSP, say, AdX, PubMatic, and Index Exchange, before the page's primary ad server call happens at all. Each SSP passes that request along to the DSPs and buyers it's connected to, packaging up whatever contextual and audience data your consent setup allows: page URL, device type, rough location, and any first-party or third-party audience segments attached to that user.
On the buy side, each DSP's algorithm evaluates the opportunity in milliseconds. Say three DSPs decide this particular visitor, a returning user on mobile, in a finance-adjacent content category, in a top-20 metro market, is worth bidding on. DSP A, running a retargeting campaign for a bank, bids $4.20. DSP B, buying broad reach for a CPG brand, bids $1.80. DSP C, buying on behalf of an affiliate marketer, bids $2.95. Those bids get returned to their respective SSPs, and the SSPs report the winning number from their auction back to your ad server, typically through a header bidding line item with the price encoded in the key-value.
Your ad server now holds several numbers on the table: $4.20 from the AdX-connected demand, $2.95 from the PubMatic-connected demand, plus whatever your own direct-sold line items and price floors are set at. It runs one final comparison, this is the part people call the second auction in a first-price world, though most exchanges have moved to first-price pricing where the winner actually pays their full bid. AdX's $4.20 wins. The ad server sends back the winning creative's tag, the creative renders in the slot, and a pixel fires to confirm the impression. All of that, again, happens before most users notice the page has finished loading.
Where Header Bidding And Open Bidding Actually Sit Inside Programmatic
Header bidding isn't a separate category from programmatic, it's a mechanism for running programmatic auctions in parallel instead of in a sequential waterfall. Before header bidding existed, publishers passed inventory down a chain: check network A first, if no fill or below a floor, pass to network B, then C, and so on, losing bids from higher-paying networks that never got a chance to compete because they were third in line. If you want the full mechanics of how the wrapper actually works, this breakdown of header bidding covers the auction logic in more depth than I can here.
Open Bidding is Google's server-side answer to the same problem. Instead of running competing auctions in the visitor's browser via JavaScript, it runs them on Google's servers and folds the results into the standard Ad Manager auction alongside AdX. The upside is speed and reduced latency on the page, since you're not loading a dozen bidder scripts client-side. The tradeoff is that you're trusting Google's server to run that auction fairly, and you get somewhat less granular reporting per bidder than you do with a client-side wrapper. Most large publishers I work with run both, header bidding for maximum transparency and control, Open Bidding as an additional demand layer stacked on top.
- Client-side header bidding: runs in the browser, full bidder-level transparency
- Server-to-server header bidding: shifts the auction off the page for speed, less page bloat
- Open Bidding: Google-managed server-side auction integrated directly into Ad Manager
- All three ultimately feed the same unified auction that decides which creative renders
The Misconceptions That Are Actually Costing You Revenue
The biggest one: publishers assume programmatic is inherently lower quality than direct sold, as if a human salesperson closing a deal automatically means a better advertiser and a better rate. In practice, plenty of direct deals I've reviewed were negotiated at CPMs below what the same inventory was already clearing programmatically, just because nobody checked the open auction data before signing the IO. Programmatic demand includes Fortune 500 brands buying through DV360, financial services companies running compliance-heavy campaigns through The Trade Desk, and premium PMP deals at rates that beat most direct sales conversations.
Another one: thinking more demand partners always means more revenue. Stacking twelve SSPs into your header bidding wrapper without auditing overlap usually just adds latency, which hurts viewability and page speed, which then depresses bids from every single partner including the good ones. I've pulled sites out of an 11-bidder setup down to 5 well-chosen ones and watched total revenue go up, not down, because page load time dropped enough to meaningfully improve Core Web Vitals and the resulting viewability scores across the board.
- Programmatic pays less than direct: often false once you check actual clearing prices
- More bidders always means more revenue: latency and viewability losses can erase the gain
- Ad quality is worse programmatically: blocklists and brand safety tools control this directly
- Programmatic is only for remnant inventory: premium PMP deals often outbid direct sales
- You need dozens of SSPs: 4-6 well-vetted partners usually outperform a bloated stack
When A Direct Deal Beats The Open Exchange, And When It Doesn't
The open exchange is efficient at finding the single highest bidder across a massive pool of buyers, impression by impression. What it can't do is guarantee you a specific volume at a specific price for a fixed period, which matters if you're trying to forecast revenue for a quarter or you have a specific advertiser who wants guaranteed placement on your homepage every day for a month. That's where programmatic direct earns its keep, you trade some upside for certainty, locking in a rate that might be lower than your best open-auction days but higher than your worst ones.
I generally push publishers to run direct deals for their most premium, highest-viewability inventory, above-the-fold homepage units, sticky units on high-traffic articles, and let everything else compete in the open exchange where volume and automation do the work. Going deeper on exactly how to decide which slots to carve out for direct deals versus which to leave in the open auction is really its own topic, and the breakdown here on direct versus open exchange walks through the tradeoffs slot by slot with actual rate comparisons.
The mistake I see most often is publishers locking too much inventory into direct deals out of a desire for predictability, then watching the open exchange clear at higher rates on the exact same slots during high-demand periods like November and December, with no way to capture that upside because the direct deal already has priority. Direct deals should protect your floor, not cap your ceiling.
Getting Your Site Actually Ready To Compete For Programmatic Demand
None of this matters if your site isn't technically ready to receive competitive bids. That means a properly configured Ad Manager account, a header bidding wrapper (or Open Bidding) set up with sensible timeouts, consent management that doesn't block EEA and UK traffic from bidding entirely, and page speed that doesn't scare off latency-sensitive DSPs. I still find sites with 2.5-second header bidding timeouts losing 20-30% of potential bids simply because slower-responding but high-paying bidders get cut off before they can return a price.
If you're building this out from scratch or auditing an existing setup that's underperforming, it's worth working through the technical requirements properly rather than bolting on a new SSP every time revenue dips, a scattered stack is harder to diagnose than a lean one built right the first time. Getting your monetization setup structured correctly up front saves you from re-platforming your ad stack eighteen months in, which is a more disruptive and costly process than most publishers expect.
Before any of that, confirm your site actually qualifies for the demand sources you're chasing. AdX and several premium SSPs have traffic quality, content, and policy thresholds that reject sites outright, and I've seen publishers spend weeks integrating a wrapper only to discover their AdX application was never going to clear in the first place. Check eligibility before you invest engineering time in a full header bidding build, it avoids wasted effort entirely.
Stop treating programmatic as a black box you just plug into and hope for the best. Pull your last 30 days of auction data, identify which exchanges and bidders are actually winning versus just adding latency, and rebuild your stack around what's demonstrably working rather than what a vendor pitched you eighteen months ago.
Frequently Asked Questions
Written by Ismael Inacio
Founder, Ismael Ads
15+ years helping publishers across LATAM, North America and Europe grow ad revenue through Google AdSense, Ad Manager, AdX and header bidding. Every article here comes from work inside real publisher accounts, not secondhand research.