Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Statistical modelling to optimise paid media campaigns

909 views

Published on

Using regression Analysis, Monte Carlo simulations and more to optimise paid media budget allocations

Published in: Data & Analytics
  • Be the first to comment

Statistical modelling to optimise paid media campaigns

  1. 1. Using regression analysis, Monte Carlo simulations and more to optimise paid media budget allocations Simon Löfwander – Data Analyst, Ayima 25/03/17 Contact: simonl@ayima.com
  2. 2. Introduction and problem description • How do we find the optimal allocations to spend on our campaigns to maximise the total amount of conversions? • Inspiration from financial statistics and portfolio theory • We view each account as a portfolio. Each campaign in a portfolio is considered an asset
  3. 3. Adjusting the method to fit our domain • Omitting risk Maximise conversions w.r.t. cost. Minimising volatility would favour stable campaigns. • Using a proxy for stock returns Interpretable and suitable in our domain • Weighting factor for campaigns If conversions from specific campaigns are more valuable • Adjusted model for e-commerce Maximise conversion value when plausible • Versatile Applicable for all paid media campaigns
  4. 4. Calculating a proxy for stock returns • Square root rule Conversion as a function of the square root of spend • K = conversions per unit of square root of spend Our proxy. The higher K, the more conversions per money spent • Controlling spend The square root rule makes sure the model won’t recommend too high allocations Conversions = K√Spend
  5. 5. Visualizing the relationship between conversions and cost
  6. 6. Simulating possible outcomes • Robustness Leverage the distribution of data to simulate many possible scenarios • Monte Carlo simulations We obtain a distribution of outcomes – can conveniently pick the most likely • Technical details Inverse CDF to transform simulations to appropriate distributions • Conversions distribution Positive integer. Negative binomial distribution • Cost distribution Continuous variable ≥ 0. Truncated normal distribution
  7. 7. Visualizing the simulations in heatmaps • To evaluate our distribution assumptions and the simulation results
  8. 8. Solving for the optimal weights • The total amount of conversions is maximized • We obtain optimal weights for each campaign and each simulation run • For every campaign we get a distribution of optimal weights
  9. 9. Campaign Recommended allocation % Current allocation % Difference % Campaign A 3.81 9.91 -6.1 Campaign B 14.64 2.91 11.73 Campaign C 5.87 6.05 -0.18 Campaign D 4.71 6.8 -2.1 Campaign E 6.89 18.06 -11.16 Campaign F 8.37 7.12 1.25 Campaign G 4.93 4.06 0.87 Campaign H 11.32 5.34 5.98 Campaign I 10.27 19.68 -9.41 Campaign J 17.39 3.03 14.36 Campaign K 11.8 17.04 -5.24 Interpreting and using the results • Model outputs are recommended spend allocations
  10. 10. Visualizing the expected uplifts in conversions Explaining the plot • Expected conversions with current and recommended allocations • By setting a target CPA, we obtain a suggested max budget to not exceed to stay within target
  11. 11. How do we Know this works? We can’t do A/B testing if we reallocate budgets throughout an entire account. Need to make sure of causality Causal Impact • Predicts what should have happened and compares to what happened • Confidence intervals with predictions • Great R-coverage and library developed by Google. “CausalImpact” is available on CRAN
  12. 12. Automating the procedure in RShiny applications for cross-agency use Creating user friendly applications in Shiny • Allowing for analytical methods to be standardized
  13. 13. 1 Reasonable amount of conversions and spend for each campaign The simulations will work best for data rich campaigns 2 Maxed out campaigns will be favoured if they have good performance Hence, campaigns in e.g. an AdWords context that has Search Impression share ~100% should be omitted 3 For seasonal data, we need overlapping time periods The same time period for all campaigns should be used Limitations
  14. 14. Questions and discussion Contact: simonl@ayima.com Slides will be available on SlideShare Email or www.ayima.com for access

×