Skip to content
Under Development

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.

+10–20% Expected uplift via improved bid density benchmark 1

Page experience · article template

hindinews.example · field data · 28 days

BeeOS JS 54KB
71% viewable

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

in-content-1 84%
sidebar-top 76%
in-content-2 63%
footer-unit 22% LEAK
Concept preview · illustrative data

The problem

What this is costing you right now

01

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.

02

Low viewability silently downgrades your whole domain

DSPs track viewability at the domain level and adjust what they are willing to bid accordingly.

03

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. 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. 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. 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. 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. 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.

Every step happens on your pages, with your existing ad server. Nothing here requires you to move your accounts or hand over your data.
  • 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

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

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.

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.

Loading & stability

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
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

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.

+20% range +10–20%

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

Yes, and that is the intended outcome. You serve fewer impressions, but the ones you serve are seen — which raises viewability, which raises what buyers will pay across your whole domain. Benchmarks consistently show the trade as net RPM positive. If you are measured on raw impression volume rather than revenue, this product will look wrong on your dashboard while making you more money.

Not when they are implemented to spec. Sticky and anchor formats are permitted with the required close controls, size limits and spacing rules — BeeVitals implements them that way or does not offer them. We would rather ship one fewer format than put your ad account at risk.

PageSpeed gives you a lab score for one synthetic page load. BeeVitals collects field data from your real readers, per template and per slot, and connects it to revenue — so instead of "your LCP is 3.1s", you get "this slot on this template is losing you bid density, and here is what it is costing".

Usually only where slots currently have no reserved height — that is where the layout shift comes from and it has to be fixed at the markup level. Everything else is configuration. We identify exactly which slots need the change during onboarding rather than handing you a general instruction.

Crossing the 60–70% band is where publishers report demand meaningfully improving. Chasing 90% is usually counterproductive: you get there by serving so few ads that total revenue falls. The right target is the point where bid density stops improving, and that is measurable per slot rather than a universal number.

Under active development as part of BeeOS Module 1. BeeVitals ships alongside BeeBid because the wrapper and the measurement layer share the same page tag. Join early access for priority onboarding.
Under Development

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.