Analytics Monetization

Gross vs. Net – How Publishers may be Losing Revenue in PreBid

Sovrn Publisher Advocate // March 21, 2018

square and notebook

When publishers add new demand sources to their header bidding wrappers, it is easy to treat them all more or less the same.  The whole point of your header bidding solution is to give impressions to the highest bidder so the only thing that matters is the amount of the bid, right?  But if you don’t understand how each demand source is treating its fees, you could be giving impressions to the lower bidder. After all, what really matters is the amount that you are paid after the demand partner takes its fees.

I’ve seen many publishers make the mistake of conflating Net and Gross payment terms with their SSP, Network, or Exchange partner. This can have a big impact on revenue at the end of the month.

With Net payment, what you see is what you get – so when a $1 CPM impression is filled, you get paid $1 CPM.

With Gross payment, the buyer’s fees or rev share have not yet been taken out of the bid. So with a rev share of 80% for the same $1 CPM impression, you will only get paid $0.80 CPM at the end of the month.

Let’s say you have three SSPs participating in an auction. SSP 1 and SSP 2 have net payment terms. SSP 3 has gross payment terms, with a 20% rev share.

  Non-Adjusted Auction Adjusted Auction
SSP 1 $0.90 $0.90
SSP 2 $0.85 $0.85
SSP 3 $1.00 $0.80
Winner SSP 3 SSP 1

Despite SSP 3 submitting the highest bid, you actually net out the least amount of money if they are declared the winner in the header.

Ideally, you should contractually require bidders to submit net bids. But, if you have both buyers who send net bids and buyers who send gross bids in your stack, you’ll want to adjust the gross partners’ bids down to level the playing field. Higher bids in the auction are great, but not if they don’t ultimately translate to more money in your pocket.  

In Prebid.js, use a bidCPMAdjustment function in the bidderSettings object to adjust any bidder that sends gross bids. For SSP 3 above, you’d want to make the adjustment to “return bidCPM * 0.80” to reflect the 20% rev share that partner takes after-the-fact. Bonus – this could explain why some SSP reporting never matches what you see in your ad server.

I’ve seen sophisticated publishers take this concept even farther.  They will take into account a slew of other factors with difference between demand partners.  That can include adjusting bids down for partners who take longer to pay you, for partners who have bigger reporting discrepancies, or for partners who push payment risk onto the publisher.

It’s a worthwhile exercise to go back and double-check the payment terms in all your header bidder contracts, paying specific attention to gross vs. net. You may be pleasantly surprised with more revenue at the end of the month.
Oh, and FYI – Sovrn’s bids are always net – so the CPM you see from us is the CPM you get paid. Transparency wins!

Want to learn more?

Share this article