Retail Marketing Incrementality

Executive Summary • December 2025 Campaign Analysis • Portfolio Demonstration

→ Click here for the Full Interactive Technical Dashboard

Did our $100,000 December advertising campaign actually drive incremental sales, or would sales have increased anyway due to holiday seasonality?

Yes. The campaign generated $259,324 in incremental revenue, giving us a 159% ROI. The effect is statistically significant (p < 0.001). Every dollar we invested returned $2.59 in revenue.

ROI
159%
CI: [149% – 170%]
Incremental Revenue
$259k
Net profit: $159,324
ROAS
2.59x
Industry avg: 2-4x
Avg Lift
+14.6%
Across 5 markets

Market-Level Performance

Market Inc. Revenue Lift % Daily Lift 95% CI
San Francisco $60,333 +15.1% $1,946/day [$58,027 – $62,591]
Austin $53,423 +16.5% $1,723/day [$51,472 – $55,490]
Miami $38,875 +11.0% $1,254/day [$36,940 – $40,821]
Chicago $58,044 +15.7% $1,872/day [$55,780 – $60,364]
Dallas $48,649 +14.8% $1,569/day [$46,772 – $50,615]
Total $259,324 +14.6% $1,673/day [$248,992 – $269,880]

Methodology

Twin-City Quasi-Experiment

We matched 5 test cities (which received the campaign) with 5 similar control cities (no campaign). The control cities act as the counterfactual - basically, what would have happened if we hadn't run the ad.

Test CityControl TwinPre-Period Correlation
San FranciscoSeattler = 0.994
AustinDenverr = 0.992
MiamiPhoenixr = 0.993
ChicagoBostonr = 0.991
DallasAtlantar = 0.992

Dual Analytical Methods

I used two independent methods to make sure the results hold up:

MethodApproachResult
Diff-in-Diff OLS regression with HC1 robust SEs $1,713/day (p = 1.95 × 10-23)
CausalImpact Bayesian counterfactual + bootstrap CIs $259,324 cumulative

Both methods agree, which gives us strong confidence in the result.

Recommendations

1. Scale the Campaign High Confidence

With 159% ROI and 2.59x ROAS (well above industry average of 2-4x), increase budget for the next seasonal push, particularly in San Francisco and Chicago.

2. Optimize Miami Medium Priority

Miami showed the lowest relative lift (+11.0%) but still generated $38,875. Test alternative creatives or channels before the next cycle.

3. Use This Framework for Other Channels High Confidence

Apply the same twin-city approach to email, social, and CTV campaigns to measure incrementality across all channels.

4. Move to Always-On Measurement Medium Priority

Instead of one-off studies, set up continuous measurement so we can shift budget in real time based on what's working.

Limitations

Synthetic DataThis is a portfolio demo using simulated data. A real analysis would need actual POS/transaction data.
Single PeriodOnly 31 days measured. Longer-term effects like brand lift or customer lifetime value aren't captured here.
ConfoundersLocal factors we can't see (competitor promos, weather, etc.) could have some effect on the numbers.
No Channel SplitWe measured the total campaign effect. We can't tell which specific ad channel drove the most lift.