Nettoyage Danfour · Duct & ventilation cleaning · Paid search · 2026
How Nettoyage Danfour got 39% more leads without spending more
The most useful kind of result for a small local business: the budget did not move, and the phone rang 39% more often. Cost per lead fell from CA$35 to CA$26.

+39%
tracked leads
323 → 449 on a flat budget
The results, up top — every number is in the strip below
+39%
tracked leads
323 → 449
−26%
cost per lead
CA$35.09 → CA$26.02
+44%
tracked phone calls
137 → 198
+33%
form submissions
176 → 234
Flat
budget
CA$11,336 → CA$11,684
01 — The challenge
A fixed budget and a local auction full of competitors.
Nettoyage Danfour cleans air ducts and ventilation systems for homeowners in the Montreal area — a seasonal, price-sensitive service sold in a crowded local auction. Annual ad budget was around CA$11,000 and it was not going to grow on faith.
Leads were arriving at CA$35 each through a mix of forms and phone calls, with call conversions only partly captured. On a budget this size, a mistracked call is a meaningful share of the whole account's evidence base.
“I am not going to double my ad budget on a promise. Show me the same money doing more work and then we can talk about growing it.”
Illustrative quote — written by Web Tonic to put the results above in an owner’s words. It is not a statement provided by the client.
That constraint is the reason this case study exists in the form it does. When budget is fixed, every gain has to come from waste, tracking or conversion rate — and all three are more durable than spending more.
02 — Our approach
Make the same money buy better traffic.
First, we made every lead type countable: form submissions, website calls and calls placed directly from the ads, each as its own conversion. With a small budget, the difference between 137 and 198 tracked calls is the difference between guessing and steering.
Second, we cut geography and query waste hard. A duct-cleaning lead from outside the service radius costs exactly as much as a good one, so the service area was tightened and negatives were built for DIY, equipment-purchase and job-seeker searches.
Third, we matched the offer to the season. Demand for duct cleaning arrives in waves around heating and allergy season, and a flat monthly budget through a seasonal curve means overpaying in quiet weeks to fund the busy ones. Pacing followed demand instead.
03 — What we did
Count every lead, cut every wasted click, follow the season.
No new budget was added. The gain came entirely from waste, measurement and pacing.
Complete lead tracking
Forms, website calls and calls from ads, counted separately
Each lead type became its own conversion. On an CA$11k account, the gap between 137 and 198 tracked calls is the difference between steering the account and guessing at it.
Drop Google Ads conversion actions view
Geographic discipline
Stopped paying for leads outside the service radius
A lead the crew cannot profitably reach costs the same as a good one. Targeting was tightened to the real service area, and out-of-area query patterns were negated.
Drop location targeting view
Query waste
Negatives for DIY, equipment and job-seeker searches
Duct cleaning attracts a large volume of people who want to do it themselves or buy a machine. Continuous search-term review kept the fixed budget on people who want to book a service.
Drop search terms report
Seasonal pacing
Spend followed demand instead of the calendar
Demand arrives in waves around heating and allergy season. Flat monthly pacing overpays in quiet weeks; matched pacing is why the same money produced 39% more leads.
Drop monthly leads and CPL chart
The stack we ran it on
Google Ads
Paid search
Call tracking
Tracking
Google Tag Manager
Tracking
GA4
Analytics
Google Business Profile
Local
Google Search Console
SEO
AgencyAnalytics
Reporting
Looker Studio
Dashboards


“Web Tonic did in six weeks what our last two agencies couldn't in a year — and for the first time we could see every dollar of it”










.webp)
.webp)


