In brief: VAR captures how channels influence each other over time — for example, TV builds brand awareness which lifts branded search which drives revenue. In Simba, VAR is a separate model type available on Trial, Pro and Scale plans that reveals these indirect, long-term pathways.
Vector AutoRegression (VAR) is a multi-equation time series model that captures dynamic interactions between business outcomes and brand metrics over time. While a standard Marketing Mix Model estimates one equation (media → revenue), a Bayesian VAR models a system of interacting variables — revenue, brand awareness, brand search, and other brand equity metrics — revealing the indirect and long-term pathways through which marketing drives business results.
Standard MMM answers: “How much revenue did each media channel drive?” This is valuable for short-term attribution and budget optimization. But it misses a crucial dimension: the indirect, long-term effects that flow through brand equity.
Consider TV advertising. A standard MMM might estimate that TV has a modest short-term ROI — perhaps $1.80 returned per dollar spent. But TV also builds brand awareness, which drives brand search volume, which drives conversions and revenue over weeks and months. These indirect pathways are invisible to a single-equation model.
VAR captures the full picture by modeling the system of business outcomes:
Revenue(t) = f(Revenue(t-1), Awareness(t-1), BrandSearch(t-1), …) + g(TV_spend, Social_spend, …) Awareness(t) = f(Revenue(t-1), Awareness(t-1), BrandSearch(t-1), …) + g(TV_spend, Social_spend, …) BrandSearch(t) = f(Revenue(t-1), Awareness(t-1), BrandSearch(t-1), …) + g(TV_spend, Social_spend, …)
The endogenous variables (revenue, awareness, brand search) interact through feedback loops — awareness drives search, search drives revenue, revenue sustains the brand. Media spend enters as exogenous inputs that shock the system but are not predicted by it.
Media spend (TV, social, display, YouTube) enters as exogenous one-way inputs. Revenue, brand awareness, and brand search form the endogenous system with feedback loops between them.
A key concept in VAR is the distinction between exogenous and endogenous variables:
The modeling decision of what to include as endogenous is important:
Left: standard MMM uses one-way arrows from channels to revenue. Right: VAR models the interacting system of business outcomes and brand metrics.
The VAR model equation is:
Y(t) = alpha + A1 Y(t-1) + … + Ap Y(t-p) + X(t) beta + epsilon(t)
Where:
The lag order p is user-configured and determines how many past periods the model considers (see Lag Selection below).
A VAR with k endogenous variables and p lags has k x k x p lag coefficients plus k x m exogenous coefficients. For a modest system of 3 endogenous variables, 5 media channels, and 3 lags, that is already 42 parameters — often more than a typical marketing dataset (52–104 weeks) can reliably estimate without regularization.
Top-left: brand awareness (from surveys) is far noisier than revenue — small samples, measurement gaps, and survey-to-survey variation. Top-right: without Minnesota priors, this noise produces unstable, oscillating IRFs with wide uncertainty; with Minnesota, the IRF is smooth and actionable. Bottom-left: the three shrinkage principles. Bottom-right: Minnesota priors produce tighter long-run multiplier estimates, turning unreliable ranges into actionable numbers.
The Minnesota prior (originally developed at the Federal Reserve Bank of Minneapolis) provides structured regularization by encoding three intuitive beliefs about time series:
Each variable’s best predictor is its own recent past. The prior centers own-lag-1 coefficients near 0.9, expressing the belief that brand awareness this week is likely close to brand awareness last week. Marketing time series — revenue, awareness, search volume — are typically persistent and slow-moving, making this a strong and well-justified default.
The effect of other endogenous variables is expected to be small relative to a variable’s own history. Cross-variable coefficients are shrunk toward zero with tighter priors (lambda_cross = 0.1, versus lambda_overall = 0.2 for own effects). This prevents the model from overfitting to spurious correlations — a major risk when endogenous variables are correlated (as brand metrics typically are).
Higher-order lags are less informative than recent lags. The Minnesota prior progressively shrinks coefficients at longer lags:
sigma(i,j,l) = lambda / l^delta x (sigma_yi / sigma_yj) x cross_tightness
Where l is the lag order and delta controls the decay rate. The ratio sigma_yi / sigma_yj normalizes for scale differences between variables.
Brand equity data is often noisier than revenue or spend data. Awareness comes from surveys with limited sample sizes. NPS scores fluctuate week to week. Consideration metrics may have measurement gaps. Without Minnesota priors, a VAR would try to fit all this noise, producing unstable coefficients and unreliable impulse responses.
The Minnesota prior acts as a stabilizer: it says “unless the data strongly insists otherwise, assume each brand metric mostly follows its own recent trajectory, with small influences from other variables.” This produces:
An IRF traces how a shock to one variable propagates through the entire system over time. IRFs can show both:
Left: an exogenous TV spend shock produces a revenue response peaking at lag 2-3. Center: the same TV shock builds brand awareness with a slower, sustained curve. Right: an endogenous awareness shock feeds back into revenue — the indirect pathway that standard MMM misses.
The combination of these IRFs reveals the total impact pathway: TV spend → brand awareness (slow build) → brand search → revenue. The long-term total effect can be substantially larger than the direct short-term effect.
FEVD decomposes the forecast uncertainty of each endogenous variable into contributions from shocks to all endogenous variables. It answers: “How much of the unpredictability in revenue is driven by shocks to awareness vs. brand search vs. revenue itself?”
At short horizons, revenue forecast variance is mostly driven by its own shocks. At longer horizons, brand awareness and brand search explain an increasing share — revealing that brand equity dynamics become the dominant driver of revenue uncertainty over time.
FEVD is computed from the endogenous system only (not from exogenous media shocks). It reveals which brand metrics are most systemically important — if awareness shocks explain 30% of long-run revenue variance, that tells you awareness is a critical lever for revenue stability.
Long-run effects summarize the total cumulative impact after the system has fully absorbed a shock. They are computed analytically:
Psi_inf = (I - A_sum)^{-1}
Where A_sum is the sum of all lag coefficient matrices. This produces percent-per-percent elasticities — for example, “a 1% sustained increase in TV spend produces a 3% long-run increase in revenue, accounting for all indirect pathways through awareness and brand search.”
Long-run effects can also include NPV scenarios and ROI analysis when annual spend and revenue data is provided.
The most actionable output of linking VAR to MMM is comparing short-term and long-term channel ROI:
Illustrative example: channels with strong brand-building effects (TV, YouTube) show the largest long-term multipliers. Paid search, which drives direct conversions but less brand equity, sees a smaller uplift. The purple labels show each channel’s long-term multiplier from VAR.
This comparison reveals a common pattern:
The number of lags (p) is user-configured. The lag order determines how many past periods each endogenous variable uses to predict the current period.
Practical guidance:
The model requires at least lags + 10 observations. In practice, 52+ weeks is recommended for reliable estimates, and 104+ weeks is ideal for stable long-run multipliers.
Raw marketing data is rarely suitable for direct use in a VAR. Revenue might range from $100K to $500K, awareness from 20% to 50%, and TV spend from $0 to $200K — wildly different scales with different distributional properties. Transformations address three problems at once.
Top row: raw revenue and awareness data. Bottom row: the three benefits of log1p — it handles zeros safely (unlike log), stabilizes variance across scales, and produces coefficients that are directly interpretable as elasticities.
All endogenous variables are automatically transformed via log1p(x) = log(1 + x). This is the default for good reason:
Exogenous variables (media spend) default to log1p but support alternative transforms when the data warrants it:
| Transform | Formula | When to Use |
|---|---|---|
| log1p (default) | log(1 + x) | Most media spend data — handles zeros, produces elasticities |
| asinh | asinh(x) | Similar to log but handles negative values (e.g., net spend adjustments) |
| z-score | (x - mean) / std | When you want standardized units rather than elasticities |
| min-max | (x - min) / (max - min) | Scale to 0–1 range |
| index100 | x / mean x 100 | Index relative to mean (useful for comparing across channels) |
| per_k | x / 1000 | Simple rescaling to thousands |
All VAR outputs (impulse responses, long-run effects, elasticities) are automatically converted back to percent-per-percent terms, accounting for the transformation applied to each variable. This means you always see results in interpretable business units, regardless of which transform was used internally.
Prior predictive checking is a validation step that answers a critical question before you commit to a full model fit: “Do my priors produce forecasts that make business sense?”
The idea is simple: sample from the prior distributions (without seeing any data) and generate forecasts. If those forecasts look reasonable — revenue stays within plausible bounds, awareness does not go negative or explode to 100% — your priors are well-specified. If they produce nonsense, you need to tighten or adjust priors before fitting.
Left: bad priors produce forecasts that explode or collapse — revenue at $1M+ or near zero. These priors are too wide and would waste computation or produce unstable posteriors. Right: good priors keep all forecast draws within a plausible business range, confirming the model is safe to fit.
Prior predictive checking is especially valuable for VAR because:
VAR modeling is included in the free trial and paid plans. See Pricing or getsimba.ai for current plans.
See this in action: Start your free 28-day trial — no credit card required.