Lead System Rebuild: Field Notes

HVAC: Zero conversion tracking, seasonal budget misallocation

Primary leak

Spend running for two years with no tracked conversions. Smart Bidding learning from no signal. Seasonal budget shifting between AC and furnace campaigns without data to guide it.

Diagnostic Status

Optimizing blind
TradeHVAC
MarketPacific Northwest, USA
Spend range$8,000–$15,000/mo (illustrative)
System areas
Conversion Tracking Campaign Structure Seasonal Budget Landing Pages Attribution

Two years of spend with no tracked outcomes

An HVAC company operating in the Pacific Northwest, running Google Ads for residential and light commercial service. Monthly spend in the range that would be significant for most operators: but generating no measurable data. The previous agency sent click and impression reports. There was nothing on booked calls or service appointments.

The account had 23 ad groups across four campaigns, several with overlapping keywords. All campaigns ran on manual CPC. Smart Bidding had been attempted briefly and abandoned because "it didn't work": what actually happened was that Smart Bidding had no conversion signal to learn from, so it defaulted to random optimization and performance dropped.

Operational note: Source: Google Ads: not passed to CRM. Booked job source: unknown. This was the status of every job booked from ads. Revenue existed. Attribution did not.

No foundation for optimization

  • Zero conversion tracking: no call tracking, no form submission events, no imported CRM data
  • 23 ad groups with overlapping keywords competing against each other within the same account
  • Homepage as destination for all campaigns: 6-second mobile load time, newsletter popup firing within 3 seconds
  • Seasonal budget allocation based on intuition: AC budget high in shoulder seasons, furnace budget high when demand had already peaked
  • Maintenance and tune-up campaigns running alongside emergency repair campaigns: very different job values, same bidding logic
  • Quality Scores of 3–5 across primary service keywords, driving up CPCs relative to competitors with better account structure

Lead Leak Map: HVAC Account

Ad CampaignRunning, spend activeActive
Landing PageHomepage, 6s load, popupLeaking
Call / Form TrackingNo tracking configuredBlind spot
Follow-UpManual processAt risk
Estimate / BookingSome convertingPartial
Booked JobSource: not in CRMUnattributed

Tracking first, then structure, then optimization

The rebuild started with tracking because no other change would produce useful data without it. The sequence matters: install the measurement layer, observe the baseline, then restructure.

  • CallRail installed with dynamic number insertion: every call attributed to its source campaign, ad group, and keyword
  • Google Tag Manager configured to fire form conversion events on actual submissions, with 90-second minimum call duration to filter misfires
  • Campaigns run as-is for two weeks before restructuring to observe baseline data with tracking in place
  • 23 ad groups consolidated into 7 organized by service type: AC repair, AC install, furnace repair, furnace install, heat pump, maintenance, emergency
  • Dedicated landing pages built for each campaign: mobile-optimized, no popup for paid traffic, under 2-second load time
  • Homepage popup excluded for all paid traffic via URL parameter targeting
  • Seasonal budget triggers documented: AC budget scaled 6 weeks before peak, not reactively
  • Maintenance campaign budget reduced after tracking revealed cost per booking was not justified by average job value

Visibility first, then improvement

The most significant change was not in performance: it was in what the account owner could see. For the first time, every campaign had a measurable output: calls, form submissions, and over time, booked jobs connected to their source.

Budget reallocation became data-driven within the first 30 days. The furnace repair campaign was generating more leads per dollar than any other. The maintenance campaign was generating leads at a cost that exceeded the average job value. Those findings changed where money went.

Smart Bidding, running on real conversion data for the first time, improved materially. The quality of targeting improved as the system learned what a genuine conversion looked like versus a low-quality click.

These are directional patterns based on what typically happens when HVAC tracking is rebuilt from scratch. Specific outcomes vary by market and account history.

What to check in an HVAC account

  • Can you see how many phone calls each campaign generated last month?
  • Is your conversion tracking recording actual service bookings or just page visits?
  • Are AC and furnace campaigns running on separate budgets that adjust seasonally?
  • Are maintenance and emergency repair campaigns separated, given the difference in job value?
  • Does paid traffic land on pages built for HVAC service conversion, or a general homepage?
  • Is every booked job in your CRM or scheduling system tagged with its ad source?

Is your HVAC account running blind?

Most HVAC accounts we audit have some version of this problem: spend flowing, calls happening, and no way to connect the two. The audit identifies every gap in the tracking, attribution, and conversion path: and tells you exactly what to fix first.

Written diagnostic. No obligation. Delivered within 2 business days.

Written diagnostic delivered within 2 business days.