A complete guide to

Marketing Mix Modeling

Start a conversation with our experts

- Pricing communicates the value of the product to the customers and can have direct impact on business performance
- Impact on pricing depends on the elasticity of the product

- Strong distribution chain coupled with targeted marketing activities directly results in effective business outcome.
- Strong assortment for a product enables consumers to have multiple options to actively research and purchase.

Examples of ATL marketing include television advertising, radio advertising, print advertisements (magazine and newspaper), and product placements (cinema and theatres).

- Tailored to reach a massive audience
- Great for creating awareness
- Long-term brand building

Examples of BTL activities include sales promotions, discounts, social media marketing, direct mail marketing campaigns, in-store marketing, events and conferences.

- Specifically targeted towards individual customers
- Drives immediate impact
- Helps measure campaign effectiveness and conversions

Examples of TTL activities include 360° Marketing – campaigns developed with the vision of brand building as well as conversions and digital marketing (digital ads & videos).

**Direct competitors are businesses that have the same product offerings. E.g. Apple iPhone acting as Competition to Samsung Galaxy****Indirect competitors are those who don’t offer a similar product but meets the same need in an alternative way. E.g. Amazon Kindle and paperback books are indirect competition as they are substitutes**

**Market trend/product trend is key in driving the baseline outcome of the product and understanding the consumer demand for the product.****Marketers invest carefully to position the new product into the market and plan marketing strategies to support the new launch.****Brands need to look for opportunities to build relationships with prospective customers and promote their product through periodic events and conferences.****Variables like touch points, online behaviour metrics and repurchase rate provide deeper insights into customers for businesses.****Brand reach or recognition on social platforms like Twitter, Facebook, YouTube, blogs and forums can be measured through indicative metrics like followers, page views, comments, views, subscriptions and other social media data.**

CATEGORY | VARIABLES | METRICS |
---|---|---|

BASELINE | BASE PRICE | Undiscounted price of the product at which it is sold in the market |

AVERAGE SALES PRICE | Discounted price at which the product is sold in the market | |

ASSORTMENT (SKU) | Number of Stock Keeping Units of the product in a store/market to track the inventory of the product | |

VELOCITY | Rate at which product is moving when it is available in store (Units/Store) | |

DISTRIBUTION | Distribution of the product – No. of stores or No. of locations the product is available | |

PROMOTIONS | SALES PROMOTION | No of offers or No of days for which offers are running or the type of promotions like coupons, free shipping, price match guarantees, dollar-off etc. |

DISCOUNTS | AVERAGE PRICE DISCOUNT | Average Price Discounts on the product at a particular time period |

WEIGHTED DISCOUNT | Average Price Discounts on the products weighted based on their share to product sales | |

SEASONALITY & HOLIDAY | SEASONALITY & HOLIDAY | Dummy variables to capture the spike/dip in KPIs during holidays like Thanksgiving, Christmas, New Year, Back to School, Labour Day, President Day, Retailer Promotions days like Prime Day etc. |

MEDIA ACTIVITY | TV SPENDS | Marketing Spends for TV advertising |

REACH | Total No of consumers exposed to the ad | |

FREQUENCY | Total No of times the customers are exposed to the ad | |

TV GRP | Product of reach and frequency | |

DIGITAL SPENDS | Marketing spends for digital advertising | |

DIGITAL IMPRESSIONS | No of times the ads are exposed to customers | |

DIGITAL CLICKS | No of clicks on online ads | |

DIGITAL – OTHERS | Many other variables act as a measure for digital ads like click-through-rate, rich media, video view rate, cost-per-clicks, video likes, video comments etc. | |

SEARCH SPENDS | Spends for Search marketing | |

SEARCH IMPRESSIONS | Impression counted when Search page for product loads | |

PRINT SPENDS | Marketing spends for product in a medium like magazines, newspapers etc. | |

RADIO SPENDS | Marketing spends for radio advertising | |

COMPETITION | BASE | Base metrics for competition like pricing, distribution, seasonality, events, launches etc. |

MEDIA ACTIVITES | Competition media activities like spends, GRPs, impressions etc. | |

OFFERS | Count of competition offers on different platforms | |

DISCOUNTS | Discounts offered by competition on their products | |

OTHERS | SOCIAL MEDIA | Metrics to capture the activities of the brand or product on social media like page views, followers, sentiment score, reviews, likes, comment, retweets etc. |

EXTERNAL FACTORS | External variable affecting KPIs like macroeconomic factors | |

TREND | The trend of product category or product over time period | |

CYCLICITY | Metrics to capture product cycles like Sine or Cosine functions | |

EVENTS & LAUNCHES | Indicative variables for capturing significant product launches, special events, conferences etc. |

- Missing values
- Outliers

- Data might not be available for the complete time period of analysis.
- Non-occurrence of events.
- People skipped response for some questions in surveys.
- Non-applicability of questions in a survey.
- Missing out in randomness.

**Imputation is a method where missing data is filled in with estimated values. Mean, median and mode are frequent imputation methods used.****Time series forecasting can be used to forecast/reverse-forecast the range of records that are not available. Apart from forecasting, we can use 4 weeks Moving Average to estimate missing values.****When data is available only if the transactions or a promotional event happened in a day, we should simply replace missing data with zeros to denote that there was no transaction or promotion for that day.****A survey is the best example of an instance where deletion can fix missing values. In a survey, we cannot guess people’s choice and so it would be wise to delete rows with missing data.****There are other sophisticated techniques for missing value treatment like prediction and KNN Imputation that can also be used if required.**

- Central tendency (mean, median & mode)
- Dispersion (range & variance)
- Maximum & minimum
- Quartiles
- Standard deviation

- Frequency distribution tables
- Bar charts
- Histograms
- Pie charts
- Line charts

TV Ratings | Frequency |
---|---|

1-50 | 20 |

51-100 | 17 |

101-150 | 21 |

151-200 | 7 |

201-250 | 1 |

- Identify the key variables that exhibit a good relationship with the dependent variable
- Identify the type of relationship that the variable exhibits with the dependent variable

**Numerical and numerical variables:**Relationship between two numerical variables could be visualized using scatter plots and line charts.**Numerical and categorical variables:**Relationship between numerical and categorical variables could be visualized using line charts or combination charts.**Categorical and categorical variables:**Relationship between categorical and categorical variables can be visualized using stacked column chart and combination chart.

- Adstock effect
- Lag effect

- Linear regression
- Multiplicative regression

- Causal analysis
- Forecasting the impact of a change
- Forecasting trends

- Semi-logarithmic models
- Logarithmic models

Salest = exp(Intercept) * exp(β1*Pricingt) * exp(β2*Distributiont) * exp(β3*Mediat) * exp(β4*Discountst) * exp(β5*Seasonalityt) * exp(β6*Promotionst) *…

Salest = exp (Intercept + β1*Pricingt+ β2*Distributiont+ β3*Mediat+ β4*Discountst+ β5*Seasonalityt+ β6*Promotionst+ …)

Ln (Salest) = Intercept + β1*Pricingt+ β2*Distributiont+ β3*Mediat+ β4*Discountst+ β5*Seasonalityt+ β6*Promotionst+ …

- The coefficients β can be interpreted as % change in business outcome (sales) to unit change in the independent variables.
- Each independent variable in the model works on top of what has been already achieved by other drivers. Hence, they are closer to real-time scenarios. A

Salest = exp(Intercept) * β1*Pricingt * β2*Distributiont * exp(β3*Mediat) * exp(β4*Discountst) * exp(β5*Seasonalityt) * exp(β6*Promotionst) *…

Ln (Salest) = Intercept + β1*Ln (Pricingt)+ β2*Ln (Distributiont)+ β3*Mediat+ β4*Discountst+ β5*Seasonalityt+ β6*Promotionst+ …

β = %ΔDependent_Variable/%ΔExplanatory_Variable

- Lasso regression
- Ridge regression
- Elastic-net regression

From our extensive experience in developing marketing mix models, these are the key features that need to be implemented:

- Media advertisements for the product should have positive coefficients in the model.
- Halo or cannibalization can occur due to promotions for other products from the brand.
- Halo impact from other products should be lower than the impact of marketing activities on the product.
- Ad stock value for TVCs should be greater than for digital ads since TVCs have higher brand recall.
- Discounts and promotions will have an immediate impact on sales
- A product can be promoted by the brand who created the product as well as partners who sell that product.

- From the MMM, we would get the regression equation (Business metric = Base + ®1* Driver1 + ®2*Driver2…)

where ® is corresponding coefficient for each driver - Predicted values are calculated at a weekly level (Predicted value = Base + ®1* Driver1 + ®2*Driver2…)
- Multiply coefficient (®) with corresponding driver values at a weekly level to calculate driver contributions = ®1* Driver1, ®2*Driver2…

- From the MMM, we would get the regression equation Ln (Business metric) = Base + ®1* Driver1 + ®2*Driver2…where ® is the corresponding coefficient for each driver
- Predicted values are calculated at a weekly level (Predicted value = Base + ®1* Driver1 + ®2*Driver2…)
- Multiply coefficient (®) with corresponding driver values at a weekly level to calculate driver contributions = ®1* Driver1, ®2*Driver2…

**This is a measure of the performance of the model that is to be minimized or maximized. For example, in the case of MMM, the objective function is generally to maximize KPI (Sales).****Variables are the components of the model that are to be optimized. For example, marketing drivers like TV Spends, Online Spends etc. are variables of the model.****These are the functions that describe the relationships among the variables and that define the allowable values for the variables. For example, Total Spends for FY17 to be less than $100M.**

**Non-Linear Constrained Optimization:**IPOPT, GRG Non-Linear, ANTIGONE, CONOPT, KNITRO, SNOPT etc.**Linear Optimization:**BDMLP, Clp, Gurobi, OOQP, CPLEX etc.**Global Optimization:**ASA, BARON, icos, PGAPack, scip etc.

**This is the solution in which the optimization engine tries with all possible values of variables and ends up with one best solution for the objective.****This is the solution in which the optimization engine has huge options for variables and upon solving, ends up with sub-optimal solution within a neighbouring set of solutions.**

- To improve current sales level by x%, what is the level of spends required in different marketing channels? E.g. To increase sales by 10%, how much to invest in TV ads or discounts or sales promotions?
- What happens to the outcome metric (sales, revenue, etc.), if the current level of spends is increased by x%? E.g. On spending additional $20M on TV, how much more sales can be obtained? Where are these additional spends to be distributed?

- Impact of Marketing levers
- Optimization across different marketing channels
- Optimization across time period

Week | Sales | Pricing | Distribution | Competition Discounts | Competition Online Impressions | TV GRP | Online Impressions | Promotions | Discounts |
---|---|---|---|---|---|---|---|---|---|

07/01/2017 | 30,503 | $1,067 | 48 | 1.12% | 105.68 M | 0 | 22.82 M | 27 | 6.93% |

07/08/2017 | 27,037 | $1,068 | 47 | 4.33% | 0.00 M | 0 | 0.00 M | 5 | 8.55% |

07/15/2017 | 30,646 | $1,038 | 42 | 1.89% | 0.00 M | 0 | 0.00 M | 6 | 9.64% |

07/22/2017 | 40,887 | $954 | 35 | 1.10% | 0.00 M | 0 | 0.00 M | 6 | 13.75% |

07/29/2017 | 48,947 | $912 | 31 | 4.56% | 0.00 M | 0 | 0.00 M | 10 | 16.57% |

08/05/2017 | 37,910 | $1,010 | 38 | 3.64% | 66.62 M | 100 | 127.65 M | 12 | 11.15% |

08/12/2017 | 40,436 | $1,007 | 37 | 1.66% | 124.18 M | 93 | 125.34 M | 8 | 11.42% |

08/19/2017 | 49,343 | $994 | 33 | 2.50% | 96.87 M | 95 | 150.62 M | 10 | 12.90% |

08/26/2017 | 32,371 | $1,078 | 39 | 5.08% | 109.01 M | 90 | 206.28 M | 11 | 7.24% |

09/02/2017 | 28,665 | $1,060 | 40 | 1.10% | 115.16 M | 12 | 595.09 M | 2 | 7.20% |

09/09/2017 | 29,079 | $1,061 | 42 | 0.00% | 157.02 M | 17 | 284.73 M | 13 | 6.35% |

09/16/2017 | 22,794 | $1,098 | 41 | 0.15% | 145.53 M | 11 | 46.09 M | 7 | 5.74% |

09/23/2017 | 26,607 | $1,048 | 36 | 0.02% | 105.84 M | 0 | 13.62 M | 10 | 8.91% |

09/30/2017 | 21,153 | $1,100 | 39 | 0.00% | 118.05 M | 0 | 36.95 M | 11 | 5.99% |

10/07/2017 | 20,704 | $1,092 | 42 | 0.00% | 62.06 M | 0 | 16.33 M | 10 | 6.49% |

10/14/2017 | 19,364 | $1,082 | 44 | 2.10% | 73.75 M | 0 | 13.50 M | 11 | 4.94% |

10/21/2017 | 25,881 | $1,050 | 53 | 3.13% | 115.28 M | 0 | 4.19 M | 17 | 6.51% |

10/28/2017 | 25,903 | $1,018 | 46 | 2.30% | 78.39 M | 0 | 5.77 M | 11 | 8.96% |

11/04/2017 | 42,168 | $996 | 54 | 1.08% | 78.04 M | 0 | 8.84 M | 37 | 10.43% |

11/11/2017 | 36,524 | $1,002 | 57 | 7.11% | 90.22 M | 0 | 11.58 M | 18 | 10.29% |

11/18/2017 | 35,647 | $1,014 | 55 | 7.44% | 145.45 M | 0 | 20.57 M | 21 | 9.39% |

11/25/2017 | 98,776 | $948 | 41 | 16.57% | 180.83 M | 128 | 167.81 M | 10 | 13.89% |

12/02/2017 | 110,717 | $935 | 52 | 5.62% | 165.39 M | 115 | 215.72 M | 29 | 13.26% |

12/09/2017 | 43,575 | $1,039 | 56 | 0.00% | 155.02 M | 106 | 255.36 M | 17 | 8.71% |

12/16/2017 | 55,115 | $1,000 | 52 | 5.19% | 176.43 M | 94 | 373.02 M | 30 | 9.61% |

12/23/2017 | 82,843 | $961 | 40 | 4.87% | 164.09 M | 16 | 424.45 M | 40 | 11.40% |

12/30/2017 | 38,610 | $1,072 | 53 | 2.07% | 143.84 M | 0 | 173.51 M | 30 | 6.75% |

- Weekly maximum for TV GRPs will be decided by the sigmoid curve (based on saturation point). Total TV GRPs is set at 10% from current levels
- Weekly maximum for discounts is set at value based on historic values. Average discounts is set at 20% from current levels

Optimization Inputs | Actual Values | Target Values |
---|

Variable | Start Date | End Date | Minimum | Maximum | Value | Minimum | Maximum | Value |
---|---|---|---|---|---|---|---|---|

TV GRP | 7/1/2016 | 12/30/2016 | 0 | 128 | 880 | 0 | 256 | 1052 |

Discounts | 7/1/2016 | 12/30/2016 | 4.94% | 16.57% | 9.37% | 0 | 20% | 10.31% |

- On increasing TV GRPs by 20% and Discounts by 10%, Sales increase of 21.90% is achieved upon effective distribution.
- More TV GRPs are spent during holiday period (Nov-Dec) for effective sales
- High levels of discounts are maintained during holiday period with no discounts in other period

Output | Metrics | Minimum | Maximum | Average | Sum |
---|---|---|---|---|---|

Actual | 19,364 | 110,717 | 40,822 | 1,102,204 | |

Sales (DV) | Optimized | 15,733 | 148,732 | 49,761 | 1,343,554 |

Lift % | -18.75% | 34.33% | 21.90% | 21.90% | |

Actual | 4.94% | 16.57% | 9.37% | 252.97% | |

Discounts | Optimized | 0.00% | 20.00% | 10.31% | 278.37% |

Lift % | -100% | 20.68% | 10% | 10% | |

Actual | 0 | 128 | 32 | 880 | |

TV GRP | Optimized | 0 | 210 | 38 | 1052 |

Lift % | 0% | 64.30% | 20% | 20% |