Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Why Multi-Candidate?

The decision to keep multiple candidates per slot — rather than selecting a single auction winner — is the most important architectural choice in Promovolve.

The Problem with Single-Winner Auctions

In a traditional ad exchange, each auction produces one winner:

  1. Exploitation trap: The highest bidder always wins, even with terrible CTR
  2. No exploration: No mechanism to discover if a lower-bidding creative performs better
  3. Fragile serving: If the winner’s budget runs out, the system must re-auction or show nothing
  4. Misaligned incentives: Exchange optimizes for revenue, not user experience

How Multi-Candidate Solves This

Promovolve’s fair selection algorithm guarantees per-campaign diversity (one creative per campaign first, then fill remainder), and Thompson Sampling explores among them at serve time.

The Scoring Formula

score = sampledCTR × log(1 + CPM)

Where sampledCTR is drawn from Beta(clicks + 1, non_clicks + 1) using time-bucketed statistics (1-minute granularity, 60-minute rolling window).

Exploration in Action

Slot candidates after fair selection:
  Campaign A: CPM $5.00, Beta(6, 146)    → sample: 0.032
  Campaign B: CPM $4.20, Beta(3, 19)     → sample: 0.091
  Campaign C: CPM $3.80, Beta(1, 1)      → sample: 0.647

Scores:
  A: 0.032 × log(6.00) = 0.032 × 1.79 = 0.057
  B: 0.091 × log(5.20) = 0.091 × 1.65 = 0.150
  C: 0.647 × log(4.80) = 0.647 × 1.57 = 1.016

→ C wins (exploration of unknown creative)

Graceful Degradation

When Campaign A exhausts its budget:

  1. Pacing gate checks budget before Thompson Sampling
  2. Campaign A is filtered out
  3. Thompson Sampling runs on B and C only
  4. No re-auction needed — no DData operations
  5. When A’s budget resets next day, it resumes serving (entry was kept in ServeIndex)

Publisher Alignment

The sampledCTR factor naturally favors creatives users actually click on. High-CPM but low-CTR creatives lose to engaging ones over time, aligning publisher interests (engagement, user trust) with advertiser interests (actual clicks).

The Trade-off

Multi-candidate selection means the highest bidder doesn’t always win. This reduces short-term CPM revenue but increases:

  • Long-term revenue: Better CTR → more clicks → better campaign ROI → higher advertiser retention
  • System resilience: Fallback candidates reduce re-auction frequency
  • Learning: Thompson Sampling converges to the best performer without any exploration rate to tune