The demand has to be created, not captured
This is the single most important thing about marketing a window cleaning company, and it decides where the budget should go.
Someone with a leaking roof searches for a roofer within the hour. Someone with filthy windows has been looking through them for two years. They are not searching, they will not search, and the Google Ads budget aimed at the handful who do is competing with every other company for the same thin pool of clicks.
Meta is where the rest of that market is. The ad’s job is to put the result in front of someone who has stopped noticing their own glass, attach a price that sounds reasonable, and make booking take one tap.
We know what that looks like in this market because we are running it. A window cleaning campaign in Austin is currently producing form leads at $13.50 each — the first version of it cost $27.91, and the difference was the offer and the creative, not the targeting. The results page has the ad account screenshot and the full campaign history.
Price the house, not the window
The fastest way into a price war is a quote built per pane. It invites the homeowner to call two more companies and line the numbers up, and the cheapest one wins by default.
A flat whole-home price — exterior and interior, screens and tracks included — changes the conversation. The customer is comparing a finished house against a column of per-window arithmetic, the ticket is higher, and the ad can carry an actual number instead of “call for a free quote”, which is the weakest call to action in local advertising.
Hard water stains, sun-baked screens and construction dust in the newer Williamson County developments are all natural add-ons that belong in the package rather than as surprises on the invoice.
Routes are a marketing decision
Profitability in this trade is decided by how far the van drives between jobs, and that is set long before the schedule gets built — it is set by where the ads run.
Campaigns targeted neighbourhood by neighbourhood produce clustered work. Clustered work means more cleans per day, less fuel, and a crew that is visibly working on one street, which generates inquiries from the neighbours at no cost at all.
A metro-wide campaign produces the same number of leads scattered across three counties, and a schedule that cannot be driven profitably.
The repeat is where the money is
A window clean is due again in six months. Almost nobody books that themselves.
Automated follow-up is what converts that into revenue — the booking taken at the door before you leave, the reminder that goes out automatically at month five, the offer that lands when the pollen starts. One acquisition, several jobs, and a cost per customer that falls every year they stay.
That is also what makes the maths work on paid advertising. A $13.50 lead that becomes a one-off $300 clean is a decent trade. The same lead becoming a customer who books twice a year for four years is a different business entirely.
Then the part that costs nothing per click
Local SEO and the review profile are the long game, and in a trade where trust matters — these are people letting a stranger into the house — the review count does unusual amounts of work.
Ranking in the map pack for window cleaning in your service area produces a baseline of calls that no longer costs anything per lead. It takes months, which is exactly why it is worth starting while the ads are booking work this week.