Floor pricing, partner weighting, layout, and refresh — all tuned per impression by models that learn from your traffic. Here's what changed when publishers turned it on.
○ Before · manual ad opsjan–mar
Static floors. Wrong partners. Same layout for everyone.
$2.40 rpm
flat 12-week baseline · industry median
● After · ai optimization onapr–jun
Dynamic floors. Bidder weights tuned hourly. Layout per audience.
$5.93 rpm
+147% · sustained · same inventory
The full lift
Every metric, moved the right way.
Avg CPM
$2.40
$5.93↑
vs baseline+147%
Viewability
61%
94%
vs baseline+33pp
Auction win rate
38%
71%
vs baseline+87%
Time on page
1:42
2:28 ↑
vs baseline+45%
Inside the pipeline
Four models. One impression at a time.
Each model is independently auditable. Nothing is a black box — you see the decision, the inputs, and the lift.
01 · floor model
Predicts the highest floor each bidder will clear.
Trains on 90 days of bid responses. Updates every 15 min.
02 · partner weighting
Tunes which SSPs see which inventory.
Routes your premium slots to the partners that pay for them.
03 · layout policy
Picks ad density per session.
Balances revenue against bounce — different for first-time vs return.
04 · refresh timing
Knows when to refresh, when to wait.
No fixed interval. Triggers on viewability + engagement signals.
Case · independent news network
We turned it on a Tuesday. By Friday RPM was up 2.4×. Nothing else changed on our side.
M. Rosales
Head of Programmatic · La Calle Media
Daily RPM · 12 weeks
$2.41 → $5.96
+147% sustained
0 layout changes
Live optimization · last 60s
Your dashboard, after Tuesday.
Live7d30dYTD
Avg CPM · last hour
$5.93
↑ +$0.21 vs prev hr
Win rate
71.2%
↑ +1.4pp last 12h
Viewability
94%
↑ stable · 14d
Decisions / sec
847
↑ +12% vs forecast
Realtime CPM14d avgBaseline
Signals the model watches14 ranked by impact
Every decision weighted, ranked, audited.
The model isn't a black box. Each signal contributes a measurable share of the lift — and you can see it.
Historical bid response curves
+$1.41
Audience cluster recency
+$0.78
Slot viewability percentile
+$0.62
Time-of-day demand pattern
+$0.55
Geo × device pair
+$0.48
Page topic vector
+$0.41
Scroll velocity / dwell
+$0.34
Inventory freshness
+$0.28
Partner latency drift
+$0.22
Refresh fatigue model
+$0.17
From the teams who flipped the switch3 of 500+ teams
Results, without the rituals.
+2.4× RPM
My ad ops team used to spend Tuesdays tuning floors. They don't anymore. The dashboard does it every 15 minutes.
M. Rosales
Head of Programmatic · La Calle
+87% Win Rate
Partner weighting was always guesswork. Now the model picks per impression. I cannot un-see this.
L. Karim
Director of Yield · Argo Daily
+33pp Viewability
We didn't change a single line of layout code. The refresh model figured out when to reload and when to wait.
S. Chen
Eng Lead · Tideway Network
Honest answers06 tough questions
What people actually want to know.
Will it work on day one?+
Yes, but it gets better. The models reach steady-state lift in 7–14 days as they learn your traffic.
What if it makes a bad call?+
Every decision is logged, reversible, and bounded by safety rails (floors, density caps). Override per slot.
Is this auto-bidding? Won't Google penalize it?+
No — it's yield optimization (publisher-side). Independent of any DSP bidding strategy.
Can I audit the model?+
We publish per-decision logs and model cards every month. Open one in the dashboard.
What about ad density compliance?+
Hard-coded constraint. The model can't violate density rules, only optimize within them.
Cancel any time?+
Month-to-month. If it stops working for you we send you the partner relationships and a goodbye email.