What we walked into
The client is a commercial roofing contractor operating across Florida. They came to us with an existing Google Ads account that was generating a handful of leads each month, but those leads were inconsistent in quality and far too few in number to support serious revenue growth. The core business requirement was absolute: every lead had to be a commercial project. Residential inquiries were not just unwanted — they consumed sales team time and produced zero revenue for this contractor's service model.
The structural problem was the auction itself. Roofing keywords in Florida are dominated by residential intent. Homeowners searching after a hurricane, storm chasers, shingle replacement — all of that traffic floods the same keyword space that a commercial roofing contractor needs to operate in. Bidding into this environment without aggressive filtering meant paying for clicks that would never convert into a qualifying lead. The account was essentially running in an ocean of irrelevant demand, and no amount of budget increase would fix that without first solving the intent problem.
At stake was the client's ability to scale predictably. At 14 commercial leads per month and a cost per lead of $380, the math was tight. There was no margin for wasted spend on residential traffic, no room for low Quality Scores inflating CPCs, and no tolerance for a campaign structure that couldn't learn fast enough to improve. We needed to rebuild the program from the ground up with commercial intent as the filter for every decision we made.
What we changed
- We conducted ground-up keyword research scoped exclusively to commercial roofing intent — flat roof systems, TPO, EPDM, commercial re-roofing, and building-type modifiers — and excluded every residential term, storm-damage variant, and shingle-related phrase at the account level before writing a single ad.
- We launched the rebuilt program as single keyword ad groups organized by location, which gave us granular budget control across Florida markets and allowed us to identify where commercial intent was strongest without letting one city's spend cannibalize another.
- We monitored CPC trends across those location-split campaigns and identified that fragmenting budget into separate campaigns was throttling Google's bid algorithms: each campaign lacked the conversion volume needed to exit the learning phase, and CPCs were running artificially high as a result.
- We consolidated all location-split campaigns into a single Florida campaign and applied location bid modifiers to preserve geographic weighting, which pooled conversion data into one learning signal and let Smart Bidding operate on a statistically meaningful dataset.
- We rewrote ad copy and aligned landing page messaging to explicitly screen out residential intent — referencing building types, project scale, and commercial specifications — which directly lifted Quality Score by improving expected click-through rate and ad relevance for the queries we actually wanted.
What happened next
The immediate effect of consolidation was a drop in wasted spend and a Quality Score jump from 5 to 9. That Quality Score movement matters mechanically: a higher score lowers the effective CPC Google charges at any given ad rank, which meant we were buying the same positions for less. Within the first full month post-consolidation, cost per lead began falling even as total spend increased, because more of every dollar was reaching genuinely commercial queries.
As the single consolidated campaign accumulated conversion data, Smart Bidding started finding patterns in the converting traffic that the fragmented structure never could — time of day, device mix, specific geographic clusters — and began allocating bids accordingly. Lead volume responded directly. The campaigns moved from 14 commercial leads per month to 47, without any degradation in lead quality. The client's sales team confirmed the pipeline was filling with the right project types.
The final state of the account tells the full story: monthly spend went from $5,300 to $9,200, lead volume tripled, and cost per lead dropped from $380 to $195. Spending more produced a dramatically better efficiency outcome because the structural and quality problems were solved first. A $3,900 increase in monthly spend generated 33 additional commercial leads per month at nearly half the original cost per lead.
The takeaway
In high-competition local service categories where residential and commercial intent share the same keyword space, budget and bid volume matter less than structural discipline. Fragmenting campaigns for control before you have conversion volume starves the algorithm and inflates CPCs. The correct sequence is to get the intent filtering right first — keywords, negatives, ad copy, landing page — then consolidate into the fewest campaigns that can accumulate meaningful learning signals. Quality Score is not a vanity metric here; it is a direct CPC discount that compounds with every dollar spent.
