Fair Rotation Algorithm

Get Started

Ensure equitable ad distribution with algorithmic fair rotation. When multiple advertisers compete for the same ad placement, Fair Rotation guarantees everyone gets their fair share of impressions — eliminating “my ad isn’t showing” complaints and building advertiser trust.

Why Fair Rotation Matters

Without Fair Rotation:

  • Ads are served randomly or by weight — some advertisers get far more impressions than others
  • New advertisers joining an active zone get very little visibility
  • Advertisers complain about uneven distribution
  • No transparent way to explain the imbalance

With Fair Rotation:

  • Impressions are distributed predictably and fairly
  • New advertisers get visibility immediately
  • You can show advertisers exactly what share they received
  • Fewer support complaints about “my ad isn’t showing”

Rotation Models

Equal Share

Every advertiser gets the same share of impressions, regardless of spend.

Example with 3 advertisers over 3,000 impressions:

Advertiser Expected Share Impressions Delivered
Advertiser A 33.3% ~1,000
Advertiser B 33.3% ~1,000
Advertiser C 33.3% ~1,000

Best for: Sites with equal-priced packages, flat-rate advertising.

Budget-Weighted

Advertisers who spend more get a proportionally larger share of impressions.

Example with 3 advertisers with different budgets:

Advertiser Budget Share Impressions (from 3,000)
Advertiser A $100 50% ~1,500
Advertiser B $60 30% ~900
Advertiser C $40 20% ~600

Best for: Sites with CPM pricing, tiered packages (Basic / Pro / Premium).

How the Algorithm Works

  1. When an ad needs to be served, the system gathers all eligible ads for that placement
  2. It checks the current impression counts for each advertiser in the current period
  3. It calculates who is most “underserved” relative to their expected share
  4. It selects an ad from the underserved advertiser
  5. It records the impression and updates the stats

The system continuously balances the distribution. Advertisers who fall behind their expected share are prioritized until they catch up.

Configuration

Enabling Fair Rotation

  1. Go to WB Ad Manager -> Pro Settings -> Rotation
  2. Enable Fair Rotation
  3. Choose your rotation model: Equal Share or Budget Weighted
  4. Click Save Settings

Fair rotation settings showing rotation model selection, minimum ads threshold, and stats retention

Settings Reference

Setting Description Default
Enable Fair Rotation Turn the system on or off Off
Rotation Model Equal Share or Budget Weighted Equal Share
Minimum Ads for Rotation Minimum number of ads before rotation activates 2
Stats Retention Days to keep rotation history 90

Rotation Settings in Pro Settings

The full rotation configuration is available at WB Ad Manager -> Pro Settings -> Rotation.

Setting Description
Default Rotation Type Random, weighted, sequential, or single ad
Refresh Interval Auto-refresh ads after N seconds without reloading the page
Impression Tracking How impressions are counted (per page load, per session, per unique visitor)
Enable Fair Rotation Balance impressions fairly across all advertisers in a zone
Rotation Model Equal share or budget-weighted distribution

Per-Placement Control

You can enable or disable Fair Rotation on individual placements:

  1. Go to WB Ad Manager -> Ad Zones
  2. Edit a specific zone
  3. Toggle Enable Fair Rotation for that zone
  4. Save changes

This lets you use fair rotation on your premium placements while using weight-based rotation elsewhere.

Share of Voice Dashboard

The Share of Voice dashboard shows you how impressions are distributed across your advertisers.

For site owners: Go to WB Ad Manager -> Share of Voice to see:

  • Distribution across all placements
  • Each advertiser’s share and deviation from expected
  • Historical trend data
  • A fairness score (how balanced the distribution is)

For advertisers: The Share of Voice tab in their dashboard shows their personal impression share, compared to the site average.

Choosing the Right Model

Situation Recommended Model
All packages are the same price Equal Share
You offer Basic / Pro / Premium tiers Budget Weighted
You use CPM pricing Budget Weighted
Flat-rate monthly packages Equal Share

Troubleshooting

Rotation doesn’t seem to be working

  • Confirm Fair Rotation is enabled in settings
  • Verify the placement has at least 2 active ads from different advertisers
  • Check that Fair Rotation is enabled for that specific placement
  • Allow up to 24 hours for balancing to take effect after changes

Distribution is uneven

  • A new advertiser may be getting priority to catch up — this is expected and self-corrects
  • Check if any campaigns were recently paused or resumed
  • Review the Share of Voice dashboard for a breakdown

Share of Voice stats not showing

  • Confirm WP Cron is running on your site (needed for stats aggregation)
  • Check that ads are actively being displayed and tracked
  • Verify the stats retention period hasn’t expired the data you’re looking for

Next Steps

  • A/B Testing — test which ads perform best
  • Revenue Dashboard — track revenue impact of rotation changes
Last updated: March 4, 2026