What is Adstock Optimization?
Adstock optimization systematically tests multiple carryover rates to find the one that maximizes variable performance in your model.
Goal: Identify the adstock rate that produces highest T-statistic and R² improvement
Why Optimize Adstock?
The Problem with Guessing
Typical approach:
Use industry standard (TV = 70%)
Hope it's correct for your situation
Better approach:
Test rates 0% through 90%
Find empirically best rate
Data-driven, not assumption-driven
Impact of Wrong Rate
Too low (e.g., 30% when should be 70%):
Underestimates total effect
Too high (e.g., 90% when should be 50%):
Overestimates persistence
Inflated long-term effect
May capture trend, not carryover
Optimal rate:
Maximizes statistical significance
Accurate effect measurement
How to Optimize Adstock
Method 1: Variable Testing Interface
Step 1: Select variable
Choose one media variable to optimize
Step 2: Select multiple adstock rates
Check: 0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90%
Or subset: 30%, 50%, 70% for quicker test
Step 3: Run test
System tests variable with each rate
Step 4: Review results
Each rate shown as separate row
Step 5: Select winner
Step 6: Apply to model
Add variable with optimal rate in Model Builder
Method 2: Systematic Testing
Test incrementally:
Start with 0%, 30%, 60%, 90%
Identify range (e.g., 30-60%)
Test narrower: 30%, 40%, 50%, 60%
Interpreting Optimization Results
Example output:
Variable
Adstock
T-Stat
P-Value
R² Increase
Winner: 70% adstock (highest T-stat, best R²)
Clear Winner Pattern
Characteristics:
One rate significantly outperforms
T-stat > 0.3 higher than next best
Decision: Use winning rate confidently
Characteristics:
Multiple rates perform similarly
T-stats within 0.2 of each other
Decision:
Variable may not need adstock
Monotonic Increase
Characteristics:
Higher rates always better
Even 90% shows improvement
Warning: May be capturing trend, not carryover
Decision:
Optimization by Channel Type
Typical optimal range: 60-80%
Why:
High frequency drives awareness
Long consideration periods
Test strategy: Focus on 50%, 60%, 70%, 80%
Digital Display
Typical optimal range: 30-50%
Why:
Retargeting extends effect
Test strategy: Focus on 20%, 30%, 40%, 50%
Typical optimal range: 0-20%
Why:
High intent, immediate action
Test strategy: Focus on 0%, 10%, 20%
Typical optimal range: 40-70%
Why:
Test strategy: Focus on 40%, 50%, 60%, 70%
Advanced Optimization Techniques
Seasonal Optimization
Test by season:
Q4 optimal rate may differ from Q1
Holiday effects change carryover
Test separately if data allows
Product Category Optimization
Different products, different rates:
Impulse products: Lower rates
Considered purchases: Higher rates
Test by category if multiple products
Combined with Curves
Optimization order:
First optimize adstock rate
Then apply saturation curve
Don't optimize both simultaneously
Why: Separate effects for clarity
Common Optimization Scenarios
Scenario 1: New Channel Launch
Situation: Just started Radio, need optimal rate
Approach:
Wait for 8-12 weeks of data
Test broad range: 0%, 30%, 60%, 90%
Caution: Limited data means less reliable optimization
Situation: TV has been at 70% for years, is it still optimal?
Approach:
Test current rate (70%) plus neighbors (60%, 80%)
If neighbors better, expand testing
Update rate if clear improvement
Frequency: Re-optimize annually or when market changes
Scenario 3: Budget Optimization
Situation: Need ROI for each channel at optimal adstock
Approach:
Optimize adstock for each channel
Build model with optimal rates
Run decomposition for ROI
Use for budget allocation
Result: More accurate ROI, better optimization
Validation and Checks
After Optimization
Validate optimal rate:
✅ Statistical check:
T-stat significantly higher
R² improvement meaningful
✅ Business check:
Rate aligns with channel behavior
Similar to industry benchmarks
✅ Diagnostic check:
🚨 Optimal rate = 90%+
Check for time trends in data
🚨 Optimal rate = 0% for all channels
Check for weekly vs. monthly mismatch
🚨 Wildly different from expectations
Testing Approach
Start broad:
Test 0%, 30%, 60%, 90% first
Test systematically:
One channel at a time:
Don't optimize all simultaneously
Validate before moving to next
Applying Results
Use optimal rate:
Apply in Model Builder when adding variable
Document choice and rationale
Include in model documentation
Retest periodically:
Validate with business:
Share results with channel owners
Troubleshooting
No clear optimal rate
All rates perform similarly
Solution:
Variable may not need adstock
Use 0% or business judgment rate
Focus optimization elsewhere
Optimization takes too long
Testing many rates for many variables
Solution:
Optimize one variable at a time
Use broader increments (0%, 30%, 60%, 90%)
Refine only top candidates
Results contradict business knowledge
Optimal rate doesn't match expectations
Investigation:
Review variable definition
Validate with stakeholders
May reveal new insights OR data issues
Optimize adstock by testing multiple rates systematically
Look for rate with highest T-statistic and R² increase
Typical ranges: TV 60-80%, Digital 30-50%, Search 0-20%
Test one variable at a time for clarity
Validate optimal rate against business logic
Re-optimize periodically as markets change
Use Variable Testing interface for efficient optimization
Apply optimal rates in Model Builder when adding variables
Last updated