BeeVitals
Viewability, Speed & Core Web Vitals Optimizer
Fast pages. Visible ads. Premium bids.
Buyers do not bid on impressions they do not believe will be seen. BeeVitals reserves ad space before it loads, lazy-loads slots a viewport ahead, measures what every impression was actually worth in attention terms, and feeds that back into your floors and your auction so the whole system prices your inventory on evidence.
Page experience · article template
hindinews.example · field data · 28 days
48% → 71%
crossed the 60–70% band
where DSP demand lifts
Core Web Vitals · field
LCP
1.9s
good < 2.5s
CLS
0.01
good < 0.1
INP
148ms
good < 200ms
Viewability by slot
leak finder
The problem
What this is costing you right now
A slow ad stack costs you readers and bids at the same time
Every blocking script between the reader and your content pushes LCP out, and every ad that renders after the reader has scrolled past it is an impression nobody saw.
Low viewability silently downgrades your whole domain
DSPs track viewability at the domain level and adjust what they are willing to bid accordingly.
Layout shift from ads hurts rankings and trust
An ad that loads late and shoves the paragraph someone was reading down the page is a Core Web Vitals failure and a reader-hostile experience at once.
How it works
What BeeVitals actually does
No black box. Here is the whole mechanism, step by step.
BeeVitals — how it works
-
1
Reserve the space before the ad loads
Every slot gets an enforced placeholder at its exact final dimensions, so nothing on the page moves when the creative arrives. Target CLS contribution from ads: under 0.01.
-
2
Lazy-load one viewport ahead
Slots request ads when the reader is approaching them, not when the page opens. One viewport of lead time is enough to have the creative ready before the slot is seen, without spending requests on ads nobody scrolls to.
-
3
Protect the above-fold critical path
Above-fold ads are prioritized, everything else defers behind content. Your article should never be waiting on an ad three screens down.
-
4
Measure every impression
Per-slot viewability aligned to Active View measurement, plus in-view time distribution and scroll-depth data. Not a monthly average — a per-slot record of what each placement is actually doing.
-
5
Feed it back into the auction
Slot-level viewability history becomes a signal in BeeBid's requests and a segment dimension in BeeFloor. A slot with a strong attention record earns a higher floor; a slot nobody sees stops being priced as if they did.
- Viewability per slot Active View aligned
- Under 60KB total including the wrapper
- CLS under 0.01 space reserved before load
- Field data, not lab real readers, per template
In context
Where BeeVitals sits on your page
Every slot on this page is measured individually — this one is the sidebar, which is usually where the viewability leak hides.
Slot-level viewability feeds back into BeeBid as a bidding signal and into BeeFloor as a segment.
Specifications
Full technical specification
Publishers compare specifications, not adjectives. Everything is here, including what depends on partners we do not control.
Loading & stability
| Lazy loading |
IntersectionObserver-based, rootMargin configurable with a default of one full viewport of lead time. Per-slot overrides for units that need to load earlier or later than the default.
|
|---|---|
| CLS protection |
Enforced slot placeholders with reserved dimensions at every breakpoint. Target CLS contribution from ads under 0.01. Collapsing an unfilled slot is opt-in per unit, because collapse is itself a layout shift.
|
| Weight budget |
Total BeeOS JavaScript under 60KB gzipped including the BeeBid wrapper core. Single DNS lookup, HTTP/2, everything async. A performance product that ships a heavy payload has argued itself out of existence.
|
Measurement
| Measurement | Per-slot viewability aligned to Active View, in-view time distribution (not just a pass/fail rate), and scroll-depth heatmaps per template. |
|---|---|
| Formats | Compliant sticky sidebar (desktop) and anchor unit (mobile), with close controls and the spacing rules those formats require. Implemented to policy or not implemented. |
Formats & feedback
| Core Web Vitals monitoring |
Field data collected with the web-vitals library, broken down per template, with regression alerts. Lab scores tell you what a datacentre saw; field data tells you what your readers on a mid-range Android actually got.
|
|---|---|
| Dashboard | Site → template → slot drill-down, plus a "viewability leak" finder that ranks your slots by how much bid density they are losing. It tells you which placement to fix first rather than handing you a spreadsheet. |
| Feedback into the stack | Slot viewability history is exported as a BeeBid bidding signal and a BeeFloor segment dimension. Measurement that does not change a decision is just a chart. |
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.
Expected uplift from improved viewability and bid density benchmark 1
The quietest lever in Module 1 and often the largest. If your viewability is in the 40s, fix this before adding demand.
Without BeeOS
- Viewability
- 48%
- CLS from ad slots
- 0.14
- Below-fold slots
- All requested at load
- Bid density
- Quietly suppressed
With BeeOS
- Viewability
- 71%
- CLS from ad slots
- under 0.01
- Below-fold slots
- One viewport ahead
- Bid density
- Materially higher
Expected difference
+10–20% via bid density benchmark 1
Crossing the 60–70% viewability band is where publishers report DSP demand meaningfully improving.
60–70%
Viewability threshold where DSP demand materially increases benchmark 1
Crossing it changes which buyers will bid on you at all.
~30%
RPM impact reported at optimal viewability levels benchmark 1
Reported by third parties; depends heavily on where you start.
<0.01
Target CLS contribution from ad slots
Achieved by reserving exact slot dimensions before load.
Being straight with you: Viewability is the quietest lever in this module and often the largest. It does not add demand or change your layout — it changes what buyers believe your existing inventory is worth. If your viewability sits in the 40s, this is almost certainly the first thing to fix, before adding a single new demand partner.
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
BeeVitals — frequently asked
Module 1 · Yield Engine
The rest of the module
Squeeze every rupee out of the ad requests you already serve — competition, pricing, repetition, placement and speed.
BeeBid
Hybrid Header Bidding Wrapper
Make every impression fight for its price.
BeeFloor
Dynamic Price Floor Engine
Never sell a ₹100 impression for ₹21 again.
BeeFresh
Smart Ad Refresh (Engagement-Gated)
One visit. Multiple honest impressions.
BeeLab
Ad Layout A/B Testing Engine
Stop guessing where ads earn. Measure it.
Be first in line for BeeVitals
BeeVitals 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.