Skip to content
Under Development

BeeFloor

Dynamic Price Floor Engine

Never sell a ₹100 impression for ₹21 again.

A price floor is the lowest price you will accept for an impression. Most publishers set one number and leave it there for a year. BeeFloor sets a different floor for every meaningful slice of your traffic — country, device, ad unit, size, hour, day type — and moves each one as the market moves.

+5–15% Expected incremental yield on top of your existing setup benchmark 1

Floor vs top bid · 24h

hindinews.example · in-content · 🇮🇳 IN

relearned 04:00
00 06 12 18 23
top bid computed floor

Active segment rules · 1,284 total

IN · mobile · 20:00–23:00
₹74
IN · mobile · 02:00–05:00
₹11
IN · desktop · weekday
₹38
US · desktop · night
₹95
Concept preview · illustrative data

The problem

What this is costing you right now

01

A static floor leaks money in both directions

Set it too low and buyers bid-shade straight down to it — you have handed them your reserve price.

02

One floor cannot fit US-desktop-evening and IN-mobile-afternoon

The same ad unit is worth several times more to a buyer at 9pm on a US desktop than at 3pm on an Indian mid-range Android.

03

Manual GAM pricing rules do not scale past a handful

Unified Pricing Rules work — as long as a human maintains them.

How it works

What BeeFloor actually does

No black box. Here is the whole mechanism, step by step.

BeeFloor — how it works

  1. 1

    Collect every bid

    BeeBid streams the full bid log — every bidder, every price, every loss — into the BeeOS data pipeline. Floor optimization is not guesswork, it is a reading problem: the answer to "what would buyers have paid?" is already in your own auction data.

  2. 2

    Segment the traffic

    Bids are grouped by geo × device × ad unit × creative size × hour × day type. Each of those slices has its own demand curve, and treating them as one average is exactly the mistake a static floor makes.

  3. 3

    Compute the optimal floor per segment

    For each segment, set the floor just below the expected top bid — high enough that buyers cannot shade beneath your inventory's real value, low enough that the impression still clears. The gap between those two points is the entire product.

  4. 4

    Push the floors live

    Floors are written to the Prebid Floors Module as JSON and synced to Google Ad Manager Unified Pricing Rules, so the same price discipline applies in the header auction and in the ad server. A floor that only exists in one layer is a floor buyers can walk around.

  5. 5

    Re-learn overnight

    Every night the model reads the last day of bids and adjusts. Demand moves — festival season, quarter-end budget flush, a buyer pulling out of a geo — and a floor set last quarter is a floor set for a market that no longer exists.

Every step happens on your pages, with your existing ad server. Nothing here requires you to move your accounts or hand over your data.
  • Floor per segment geo × device × hour
  • Relearns nightly demand moves, floors move
  • Fill guardrails auto-rollback on drop
  • Full audit log every change, and why

In context

Where BeeFloor sits on your page

hindinews.example
leaderboard 728×90
below-nav
in-content 336×280
below-article native grid

A floor is attached to this slot before anyone bids — priced for this exact geo, device, hour and size.

The same floor logic applies in both Prebid and Google Ad Manager, so buyers cannot walk around it.

Concept preview · illustrative data

Specifications

Full technical specification

Publishers compare specifications, not adjectives. Everything is here, including what depends on partners we do not control.

Learning engine

Learning engine
Phase A — at launch Deterministic rules engine. Floors are looked up per segment from your own bid history, with manual overrides and hard safety rails (min/max) you control. Explainable by design: you can always see why a floor is what it is.
Phase B — after ~60 days of data Gradient-boosted per-segment bid prediction, retrained nightly, with champion/challenger testing so a new model has to beat the current one on live traffic before it takes over. We do not start with ML because with two weeks of bid logs a model is just an expensive way to overfit.
Signals used Country, region, device, OS, ad unit, creative size, hour of day, weekday/weekend, referrer class (search / social / direct), and the slot's own viewability history — a slot nobody sees should not carry a premium floor.

Pricing strategy

Pricing strategy
Floor strategies revenue-max (default), fill-protect for inventory where an unfilled impression is a visible hole, and hybrid with per-unit selection so your homepage leaderboard and your archive sidebar can follow different rules.
Anti-bid-shading logic A small randomized slice of traffic explores floors above and below the computed optimum. This keeps buyers honest — a perfectly predictable floor is one an algorithmic buyer learns to sit exactly on — and it is how the engine keeps discovering what your inventory is really worth.

Integration & safety

Integration & safety
Integration Prebid Floors Module JSON plus Google Ad Manager Unified Pricing Rule sync. Both layers, one source of truth.
Guardrails Automatic rollback if fill rate drops more than a configurable threshold, plus a full audit log of every floor change: what changed, when, why, and what happened to revenue afterwards.
Reporting Floor-vs-clearing-price distribution per segment, so you can see where you are leaving money on the table and where you are pricing yourself out of the market.

Some capabilities depend on third-party approvals and platform policies that are not ours to promise. Where that is the case, the spec above says so explicitly.

Expected impact

What the industry reports

Every number below is an industry benchmark published by a third party. BeeOS has not shipped, so none of these are results we have produced.

+15% range +5–15%

Expected incremental yield from segment-level floor optimization benchmark 1

Needs competing demand to matter. A floor with one bidder is just a way to lose the impression.

Without BeeOS

Floors maintained
1 static
Floor at 3am
₹45 — kills fill
Floor at 8pm
₹45 — leaves money
Bid shading
Unchecked

With BeeOS

Floors maintained
1,284 adaptive
Floor at 3am
₹11
Floor at 8pm
₹74
Bid shading
Randomized exploration

Expected difference

+5–15% incremental benchmark 1

Incremental on top of what you already earn — this is not the same money counted twice.

+5–15%

Incremental yield from floor optimization programs benchmark 1

On top of whatever your current setup earns — this is not the same money twice.

100s–1000s

Adaptive rules run by publishers doing this seriously benchmark 2

Which is why it has to be automated. Nobody maintains that by hand.

2–4 weeks

Before floors are tuned to your traffic

The engine needs to watch your own auctions before it can price them.

Being straight with you: Floor optimization is incremental, not transformational — it is the difference between selling well and selling optimally. It compounds with BeeBid rather than competing with it: more bidders means a denser bid distribution, which means the floor can be placed more precisely. Running floors without competition is pricing against yourself.

Works with

Fits into the stack you already run

Platforms BeeOS integrates with — not customers, partners or endorsements.

  • Google AdSense
  • Google Ad Manager
  • AdX (via partner)
  • Prebid.js
  • Amazon APS
  • PubMatic
  • Magnite
  • Index Exchange
  • Sharethrough
  • Sovrn

Glyphs are generic shapes, not brand logos — these are platforms we integrate with, not endorsers.

Questions

BeeFloor — frequently asked

That is the actual risk, and it is what the guardrails exist for. Every floor has a configurable ceiling, `fill-protect` mode caps how aggressive the engine is allowed to be on a given unit, and an automatic rollback triggers if fill drops past your threshold. You are never one bad model update away from an empty page.

No. Floors are applied in the Prebid and Google Ad Manager layers. AdSense continues to operate as it does today — what changes is the price it has to beat to win, which is the point.

Expect two to four weeks. The engine has to observe your own auctions across a full weekly cycle before its segment floors mean anything — weekday and weekend demand are genuinely different markets, and one week of data cannot tell them apart.

Segments with too little data fall back to their parent segment rather than acting on a handful of bids — a viral spike from an unusual geo does not get to rewrite your pricing. Sustained shifts do get learned, which is the difference between noise and a new normal.

Yes, on any segment, and the override sticks until you remove it. Some floors are commercial decisions rather than mathematical ones — a direct-sold relationship or a brand-safety commitment — and the engine has no way to know that.

Under active development as part of BeeOS Module 1. BeeFloor depends on BeeBid's bid logs, so it ships after BeeBid. Join early access for priority onboarding and locked-in launch pricing.
Under Development

Be first in line for BeeFloor

BeeFloor is under active development. Early-access publishers get priority onboarding, founder-level support on WhatsApp, and locked-in launch pricing.

No spam — we write only when something real ships.