Skip to content
Zenmo
Insights

AI · September 18, 2026 · 4 min read

The waterfall is dead. What replaces it is not bidding, it is judgement

In-app bidding fixed the auction. It did nothing for the thousands of small decisions that still decide what each ad request is worth.

For a long time mobile monetization meant maintaining a waterfall. You ranked your demand sources by the price you expected from them, called the first one, and if it passed you called the next. Someone had to keep that list in order by hand, which usually meant looking at last week's eCPMs and moving a few lines up or down.

In-app bidding retired most of that. Every source now sees the request at the same time and the highest bid wins. It was a real improvement. Fewer wasted calls, less latency, and no more arguing about whose line sits above whose.

But it is worth being precise about what bidding fixed. It fixed the auction. It did not fix the operating.

The decisions bidding left behind

An auction answers one question: of the bids that arrived, which is highest. It says nothing about the decisions made before the request went out, and those decisions still carry most of the value.

Which sources should be invited at all? Calling everyone on every request costs latency and, on a weak connection, costs the impression entirely. What floor should be attached? Set it too high and you sell nothing. Set it too low and you hand margin to a buyer who would have paid more. Which format should fill this moment? A rewarded placement, an interstitial, or nothing at all, because the player is three levels into a good run and an interruption now costs more in retention than it earns in revenue.

Most publishers answer these questions with a small set of static rules. A floor per country per placement. A frequency cap per session. A refresh interval. The rules are sensible, but they are set at the resolution a person can maintain, which is perhaps a few hundred combinations, revisited monthly. The traffic varies at the resolution of every single request.

What per-request judgement looks like

The next step is not a better auction. It is a system that forms a view on each request before the auction starts, using signals no one could tune by hand: how long the user has been installed, how deep they are in the current session, the local time of day, device class, geo, and whether they have spent money recently.

Take an illustrative case. A puzzle game in a mid-sized European market. A user installed 40 days ago, has made one small purchase, and is on their sixth session of the day at 9pm on a recent device.

A static rules table sees "country X, interstitial placement, floor $4.00" and sends the request to all eight sources.

A per-request model sees something else. Users with this tenure and purchase history, in this market at this hour, have cleared around $11 on rewarded video over the past few weeks, and this user has accepted a rewarded offer in four of the last five sessions. Two of the eight sources have not bid above $3 on this profile in a month, so inviting them only adds latency. The model chooses rewarded over interstitial, invites six sources, attaches a floor of $9.50, and records why.

The next request, thirty seconds later from a different user on a two-day-old install in the same country, gets a different answer: interstitial, all eight sources, floor $2.80, because this cohort rarely clears more and an unfilled impression is the bigger loss.

Neither answer lives in a rules table. There are too many combinations and they shift every week. That is what per-request yield decisions means in practice: not a smarter average, but a separate call on each request, made with the signals available at that moment.

The question to ask any vendor

Plenty of platforms now describe themselves as AI optimised. Some of them are. The honest test is not the lift they claim, which you cannot verify from the outside, but whether they can show you the decision and the reason behind it.

Ask for a single request. Any request. What floor was set, which sources were called, which format was chosen, and which signals drove each choice. If the answer is a monthly average or a dashboard trend, the AI is a label on the box, not a judgement being made. If the answer is a record you can read, you have something you can audit, argue with, and eventually trust.

This is the standard we hold ourselves to. Zenmo Flux prices every request on exactly this basis, and each decision is logged with its inputs so a publisher can open any one of them and see the reasoning. The point is not that the model is clever. The point is that it is accountable.

The waterfall is gone and nobody misses it. Bidding was the right fix for the auction. What replaces the operating is not another auction mechanic. It is judgement, applied per request, and written down.

Find out what your inventory is worth

Get a free revenue review: we audit your current stack and demand, and show you where the upside is. No obligation, no slide deck.