Stop Letting MMM Lie to You: A Contractor’s Playbook for Calls, Not Clicks
This article argues that Marketing Mix Modeling (MMM) is valuable for contractors only when grounded in clean, business-representative data and directly tied to calls, booked jobs, and profit. It prescribes a minimum viable dataset spanning lead sources, call outcomes, revenue/margins, capacity, seasonality/weather, pricing/promos, competition, and tracking. The author warns against attribution inflation, assuming instant impact, ignoring capacity limits, and overconfidence in tracking, advocating for simple models with sensible lag/decay, saturation, and out-of-sample validation. Implementation should shift spend toward channels that drive qualified calls, align budgets with crew capacity and geography, and be refined on a regular cadence with reality checks, simplifying when drift appears.
Stop Letting MMM Lie to You: A Contractor’s Playbook for Calls, Not Clicks
TL;DR Marketing Mix Modeling (MMM) can help you decide where to put dollars, but only if your data is clean, your assumptions are honest, and your model stays simple and practical. Tie insights to booked calls and profit, not impressions. Update often, validate against reality, and never outsource your brain to a black box.
MMM for Contractors: Useful, If You Keep It Grounded
For HVAC, plumbing, and electrical shops, the goal isn’t a prettier dashboard—it’s more booked jobs at a profitable cost. MMM can estimate how different channels (search, LSAs, direct mail, OTT, radio) drive demand over time. But if you feed it junk, let it assume nonsense, or make it too clever, it’ll tell you big stories that don’t move the phone.
Calls pay the bills. If MMM can’t explain calls and booked jobs, it’s theater.
The Data Problem: Garbage In, Garbage Out
MMM only works with data that mirrors your real world. Most contractor models fail because they ignore operational factors or rely on partial digital data. Build a dataset that looks like your business actually runs.
Data you must include (minimum viable MMM)
- Leads by source and type: branded vs. non-brand search, LSAs, GMB, paid social, display/OTT, direct mail, organic, referral.
- Phone call outcomes: qualified calls, booked jobs, missed calls, after-hours calls.
- Revenue and margins: average ticket by service line (HVAC install vs. tune-up, sewer line vs. drain clear).
- Capacity signals: techs on schedule, dispatch utilization, weekend coverage (demand without capacity is wasted spend).
- Seasonality and weather: cooling/heating degree days, storms, cold snaps, smoke/air quality spikes.
- Pricing and promos: financing, coupons, tune-up specials, service fees.
- Competitive pressure: new entrants, aggressive LSAs, brand CPC spikes, mailers in-market.
- Site/phone plumbing: tracking numbers, call recording, CRM close data matched to ad source.
If your call tracking isn’t stitched to the CRM so you can see which leads turned into revenue, stop here and fix that. You can’t model what you can’t measure.
Assumptions That Will Burn You
- Attribution inflation: Don’t assume every call after a TV flight was “caused” by TV. Include base demand, brand equity, and weather to avoid crediting the loudest channel.
- Instant impact: Some channels decay slowly (brand, TV), others pop quickly (search, LSAs). Model reasonable lag and decay, not fairy tales.
- Unlimited capacity: If Saturdays are slammed and weekdays are light, your spend should follow staffing. MMM that ignores capacity will tell you to buy leads you can’t service.
- Perfect tracking: You don’t have it. Use ranges and sanity checks. When in doubt, bias toward channels that reliably drive qualified calls.
Complex Isn’t Better—It’s Just Fragile
Many MMMs fail because they’re overfit and overcomplicated. If your model needs 40 variables to justify a budget, you’ve built a shrine to confirmation bias. Start simple:
- Core drivers: channel spend, weather, brand search volume, promotions, capacity.
- Keep transformations simple: reasonable lag/decay and saturation. No PhD-only wizardry.
- Hold out a period. If it can’t predict last month within a sane error range, don’t use it to set next month’s budget.
Make It Pay: Implementation for Calls and Profit
MMM isn’t the finish line—it’s the starting gun. Translate outputs into concrete moves that book more jobs at a lower blended cost per booked call and profit per crew hour.
- Shift to what rings: If LSAs and non-brand search drive booked calls and TV looks fluffy after weather control, trim TV and feed search/LSAs until you hit saturation.
- Daypart and crew-align: Spend more when dispatch can answer and roll. Pull back when you’re capped.
- Geo-trim: Fund zones with faster response times and higher close rates; cut the sprawl.
- Protect brand efficiently: Cap brand CPCs; don’t let your own name cannibalize margin.
- Test promos with intent: Run short, clean tests so MMM can distinguish promo lift from channel lift.
Continuous Refinement: Set a Cadence
Markets change. Weather swings. Competitors move. Update your MMM monthly with fresh data; re-estimate quarterly. Validate with a simple checklist:
- Did predicted calls/booked jobs match last month within a reasonable band?
- Did budget shifts produce the directional change the model forecast?
- Are you hitting seasonal targets (shoulder months vs. peak)?
When the model drifts from reality, fix the inputs or simplify. Don’t double down on a
User-provided content