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:
- Exploitation trap: The highest bidder always wins, even with terrible CTR
- No exploration: No mechanism to discover if a lower-bidding creative performs better
- Fragile serving: If the winner’s budget runs out, the system must re-auction or show nothing
- 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:
- Pacing gate checks budget before Thompson Sampling
- Campaign A is filtered out
- Thompson Sampling runs on B and C only
- No re-auction needed — no DData operations
- 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