

01 · The Situation
This US home services operator runs emergency and scheduled HVAC, plumbing, and drain work across four metros — Phoenix, Dallas, Denver, and Tampa. Google Ads was their primary demand channel: roughly $19,000/month across Search, Local Services Ads, and Performance Max.
Dashboard ROAS hovered around 2.8–3.1× — below the 3.5× median we see for local-services SMB accounts and well under the 6.5× top-quartile benchmark for the vertical. The marketing director's frustration was familiar: spend climbed every quarter, reported conversions looked fine, but booked jobs and revenue did not move in proportion.
The dispatch team knew the truth: most jobs still closed on the phone. Form fills were a minority path. Smart Bidding was learning from incomplete signals.
02 · The Diagnosis
Day-one audit scored the account 47/100 on our Google Ads health framework — typical pre-engagement range for local-services (median peer 55). Four structural issues dominated:
Call conversions were not wired. Dynamic number insertion existed on two of four city landing pages but did not feed Google Ads as primary conversion actions. Roughly 38% of attributable conversions — our local-services baseline for invisible attribution without full call + CRM import — never reached the platform.
Conversion actions were polluted. "Submit lead form," "click to call," and a legacy GA4 pageview event all counted as conversions. Smart Bidding optimized toward the easiest signal, not booked revenue.
Campaign architecture blended incompatible intent. Emergency "AC repair near me" queries shared budget with branded and competitor campaigns. PMax asset groups covered all four metros in one bucket — hiding which cities actually converted.
Landing pages underperformed benchmarks. Service pages converted at ~2.4% vs the 5.0% median we benchmark for local-services service URLs on paid traffic. Message mismatch between ad copy and mobile landing paths added friction.
03 · What We Did
Week 1–2 · Tracking rebuild. GTM, GA4, enhanced conversions, call tracking on every money page, and offline import of CRM "job scheduled" stages. Conversion action hygiene: primary = qualified call + booked job; secondary = form submit for observation only.
Week 3–5 · Campaign separation. Branded, emergency, category, and competitor campaigns split by metro. LSA coordinated with Search — not competing for the same query intent. PMax restructured with city-level asset groups and search themes aligned to margin services (HVAC tune-up vs emergency repair).
Week 6–12 · Bid strategy and landing alignment. Smart Bidding enabled only after seven clean days of imported data. Landing page CTA paths simplified — click-to-call above fold, service-area proof per city, trust signals matching ad promises.
Waste cleanup. Applied our local-services waste benchmark (32% typical, 70% recoverable in ~30 days). Negative keyword discipline, search term exclusions, and budget reallocation from zero-conversion geo pockets recovered ~22% of monthly spend in the first month post-restructure.
04 · The Results
At 120 days, the operator stabilized at 6.4× ROAS — within striking distance of the 6.5× top-quartile benchmark for local-services Google Ads:
- 2.9× → 6.4× ROAS on the same ~$19k monthly budget (revenue attributed via call + CRM import)
- +31% more conversions visible to Google Ads after attribution recovery
- Account health score 47 → 78 (tracking 30% weight in our health model)
- Cost per booked job down 34% month-over-month once Smart Bidding trained on revenue events
- Phoenix and Dallas emerged as highest-ROAS metros — budget shifted accordingly
The marketing director stopped asking "why did ROAS drop this week?" because weekly reporting tied platform data to CRM booked jobs — not blended form-fill fiction.
05 · What's Next
The operator is expanding Local SEO in parallel — map pack capture for non-emergency queries LSA does not own. Cross-channel coordination prevents paid and organic from bidding against the same local-modifier keywords blindly.
We are testing value-based bidding once six months of offline import history accumulates — the next ceiling above top-quartile ROAS for operators with clean measurement.
Running US home services Google Ads? See the home services & trades playbook, the multi-location & franchise structure guide, or start from Google Ads Agency United States.
“We thought we had a lead problem. Zenos showed us we had a measurement problem — and fixing that changed everything Smart Bidding did.”


