An ad network quotes you a CPM it has already marked down; an SSP exposes each impression to live auction pressure from multiple competing buyers. That single mechanical difference explains most of the CPM gap publishers observe between the two models, and it also explains why the question "SSP or network?" usually gets answered wrong. The honest answer depends on your traffic quality, your volume, your geographic mix and how much operational work you can absorb. We run both models inside one auction, so we have direct visibility into what each side of the split actually pays, and this article lays out the mechanics so you can judge for your own inventory.
The CPM Difference Comes From Mechanics, Not Labels
A CPM is not a property of a partner. It is the output of a pricing process, and the two models run fundamentally different processes.
In a network model, the network sells your impressions to advertisers at one price and pays you another, keeping the spread. Your CPM is a blended rate the network calculates across its whole book of inventory, adjusted for what it thinks your traffic is worth. In an SSP model, your impression enters an auction where multiple demand sources bid against each other in real time, and the winning bid, minus a disclosed fee, becomes your revenue. Auction pressure, not a rate card, sets the price.
This is why the same impression can earn very different CPMs in the two models. A network might pay you a stable 0.40 USD on a geo that auctions at 0.15 USD, because the network is subsidizing you with revenue from better inventory in the blend. It might also pay you 0.40 USD on traffic that auctions at 1.20 USD, because the spread captures the difference. Neither outcome is a scam; it is how aggregation economics work. Your job as a publisher is to figure out which side of the blend your traffic sits on.
What an Ad Network Actually Does With Your Impressions
The ad network is the older model, and it still moves enormous volume. For a clear reference on how ad networks aggregate inventory, the core idea is simple: the network collects unsold ad space from many publishers, packages it into audience segments, and resells it to advertisers at a markup.
Operationally, you place the network's ad tag on your page, the network decides what fills the slot, and you receive a report and a payment on a fixed schedule. Three properties define the model:
- The network controls the price. It quotes you a rate or a revenue share, and it owns the advertiser relationship.
- The network controls the fill. It decides which of its campaigns run on your inventory, and it optimizes for its own margin.
- The network absorbs the risk. If an advertiser defaults or a campaign underdelivers, your payment usually does not change.
That last point is the genuine value proposition. A network sells you certainty: predictable rates, predictable fill, one invoice, one integration, no auction infrastructure to maintain. For a publisher without an ad ops team, or with traffic that open-market buyers bid on weakly, that certainty can outweigh a theoretically higher auction price.
The cost is opacity. You rarely see the gross price the advertiser paid, so you cannot verify whether your 40 or 60 percent revenue share is fair against actual demand. You also cannot see which advertisers bought you, which makes brand safety and ad quality harder to police from your side, unless the network filters aggressively on your behalf.
What an SSP Actually Does With Your Impressions
A supply-side platform does not buy your inventory. It sells it, on your behalf, into a real-time auction. For a solid overview of what a supply-side platform is, including the fact that SSPs evolved directly out of ad networks as programmatic buying took hold, the model inverts the network relationship: you keep control of the impression until the moment of sale.
The mechanics run on OpenRTB. When a user loads your page, the SSP sends out a bid request describing the impression, the user's consent signals under frameworks like the IAB Europe TCF and Global Privacy Control, and the floor price you set. Demand sources respond with bids within roughly 100 to 300 milliseconds, the SSP runs the auction, and the winner serves. With header bidding for publishers, this competition happens in the browser or on a Prebid Server before your ad server even calls its own line items, which forces every demand source, including Google AdX through Google Ad Manager, to bid against the others simultaneously.
What this buys you:
- Price discovery. Every impression finds its own clearing price instead of inheriting a blended rate.
- Transparency. You see win rates, bid distributions and clearing prices, and you can set floors per geo, per format and per device.
- Access to demand at scale. One integration reaches many exchanges, DSPs and direct buyers instead of one network's sales team.
What it costs you: operational work. Floor prices need testing and periodic revision. Header bidding needs maintenance, wrapper updates and latency monitoring. And the SSP model only pays off when real demand exists for your traffic, because an auction with one bidder is just a negotiation where you hold no cards.

The Boundary Between the Models Dissolved Years Ago
The clean textbook split, networks on one side and SSPs on the other, stopped describing reality around the mid-2010s. Networks learned to plug into auctions, SSPs learned to behave like networks, and Google's Multiple Customer Management program let smaller publishers access AdX demand through a managing partner, which is a network-shaped relationship wrapping an exchange-shaped product.
Today most "ad networks" you encounter are hybrids. They run an RTB stack behind a single tag, blend direct deals with open market demand, and pay you a rate they compute from auction outcomes rather than a fixed card. Most SSPs, meanwhile, offer managed services, curated marketplaces and package deals that look exactly like network inventory to the buyer. The label on the contract tells you less than three questions do:
- Who owns the advertiser relationship and the gross price?
- Is the price per impression auctioned or administratively set?
- Do you see the fee structure, or only a net number?
If the answers are "the partner", "administratively set" and "net only", you are in a network relationship regardless of the branding. If the answers are "you do, at least partially", "auctioned" and "disclosed fees", you are in an SSP relationship. Most large publishers end up running both at once, and the practical question becomes how to sequence them.
Where the CPM Comes From in Each Model
To compare yields honestly, separate gross CPM, net CPM and effective CPM across the whole inventory pool.
In the network model, your net CPM is the number on the invoice. The gross number exists but you cannot see it, so yield optimization means negotiating rate and negotiating fill. Those negotiations happen maybe once a quarter, which caps how fast you can react to seasonal demand shifts, such as Q4 CPM spikes or January softness.
In the SSP model, your net CPM is the clearing price minus disclosed fees, typically a percentage take on the winning bid. Yield optimization means adjusting floors and demand mix, which you can do daily. When demand for your geo or format heats up, auction prices move within hours and you capture the upside immediately. When demand softens, prices fall just as fast, and this volatility is the real cost of auction exposure.
Two further mechanics matter. First, first-price auctions, now the industry default, reward floor strategy: set floors too low and you leave money on winning bids that would have cleared higher; set them too high and you lose fill to passbacks or unfilled slots. Second, deal types change the math. Programmatic guaranteed and private marketplace deals, negotiated through real-time bidding deals, often clear above open auction for premium inventory, and a partner holding direct relationships with brand agencies can push your effective CPM well above what open demand alone would pay.
Fill Rate Changes the Arithmetic
CPM in isolation misleads, because a high CPM on 30 percent fill earns less than a moderate CPM on 95 percent fill. Networks generally win on fill, since they backfill from a large pool of campaigns and guarantee delivery. SSP open auctions win on marginal price but can pass on impressions when floors sit above clearing bids.
The professional way to compare partners is revenue per thousand available impressions, not per thousand sold. Count every pageview in the test period, divide total revenue by that base, and compare. A network paying 0.50 USD at 90 percent fill yields 0.45 USD per thousand available impressions. An auction clearing 0.80 USD at 50 percent fill yields 0.40 USD, and the network wins despite the lower headline rate.
This is also why waterfall sequencing, where you call the network only after the auction passes a floor, historically outperformed either model alone. Modern header bidding replaces the rigid waterfall with a simultaneous auction, but the underlying insight stands: the best configuration usually layers a guaranteed-fill source under auction demand rather than choosing one.
Traffic Profiles Favor Different Models
The auction model rewards inventory that many buyers want. The network model rewards inventory that few buyers can evaluate efficiently.
Auction demand concentrates on: tier-1 geos with strong advertiser spend, standard display and video formats that buyers can target programmatically, consent-compliant traffic with valid TCF signals, and inventory listed correctly in ads.txt and sellers.json with a clean SupplyChain object. If your traffic matches that profile, an SSP relationship will typically out-earn a network rate, sometimes by a wide margin, because competition does the pricing work for you.
Network aggregation earns its keep on: long-tail geos where few DSPs bid actively, niche audiences that a network's sales team can package and pitch directly, low-volume sites that cannot justify auction infrastructure, and formats or apps where OpenRTB integration is impractical. In these cases the network's ability to sell your inventory as part of a larger bundle can beat what a thin auction would produce, and the fixed rate removes volatility you may not be able to absorb.
App and CTV inventory sits in between. App-ads.txt adoption, VAST-based video demand and the growth of OTT advertising have pulled app and CTV inventory firmly into auction territory, but the technical bar for integration is higher, which pushes many app publishers toward network-style managed partnerships first.
The Hidden Costs on Each Side
Network costs hide in the spread. If the network pays you 60 percent of gross and the true market value of your inventory rises 40 percent, your rate may not move at all, and you will never know. SSP costs hide in operations and latency: every header bidding partner adds milliseconds to page load, sloppy wrapper configurations depress viewability and Core Web Vitals, and unmanaged floor drift quietly erodes revenue. Both models can also carry ad quality risk, which is why supply chain transparency tools, ads.txt, sellers.json and the SupplyChain object, exist, and why we filter ad sources before they ever reach your inventory.
How We Run Both Models in One Auction
We are an SSP and an ad network, so we treat the either-or question as an engineering problem rather than a philosophical one. The WireAds unified auction combines Prebid, OpenRTB demand, Google MCM access to AdX and Authorized Buyers, and direct deals from global and local brand agencies, all bidding against each other on the same impression. The network side of our business contributes what networks contribute best: direct agency relationships, packaged campaigns and guaranteed fill. The SSP side contributes price discovery and demand breadth.
Because we aggregate demand this way, publishers get auction economics on inventory that open market demand alone would underprice, and network-style stability on inventory that auctions would leave unfilled. We work CPM-based, pay Net 30, and operate globally in every country where Google monetization is available, across web, app and CTV/OTT. That is the practical answer to the title question: the best CPMs come from a setup where both models bid into the same auction, and the only real question is whether your partner can run both.
How to Decide for Your Own Traffic
Run a structured test instead of arguing from labels. Set a fixed period of at least two weeks to capture weekday and weekend patterns, split traffic cleanly by geography or page type, and measure revenue per thousand available impressions, not sold impressions. Track fill rate, net CPM, viewability and page speed for each configuration. Then check three things: whether the auction's clearing prices on your best geos exceed the network's quoted rate, whether the network's fill covers the auction's passes, and whether your consent management and ads.txt setup let premium demand bid at all.
If auction prices beat the network rate on your strongest geos by a clear margin, move that inventory to auction-first and keep the network as a floor. If the network rate beats clearing prices across the board, your traffic likely fits the aggregation profile, and a network relationship is the correct answer, not a compromise. And if you cannot tell because you lack auction data at all, that absence of data is itself the deciding factor: you cannot optimize a price you have never discovered.


