Facebook and Instagram ads for window cleaning, what actually books
The squeegee-pull video, flat-price offers, $15 to $40 a day budgets, homeowner targeting, and retargeting that rebooks last spring's customers cheaply.
Nobody wakes up and decides to search for a window cleaner. They notice the glass in April when the sun finally hits it sideways, think "I should get those done," and then forget for another month. That gap is why Meta ads work better for window cleaning than they do for emergency trades. You are not catching demand, you are creating it, on a homeowner who already half wanted the thing.
It is also cheap. A window cleaning lead from Facebook or Instagram usually costs $12 to $45, against $18 to $60 on Google Ads, and the retargeting audience you build is worth more than the first campaign.
The creative that works, in order
One. The squeegee pull. Fifteen seconds, vertical, shot over the tech's shoulder. Filthy pane, one clean stripe, then the whole window. No music needed, the sound of the blade is the point. This is the single best performing creative in the trade and it costs nothing to shoot. Get four or five variants across different houses and rotate them monthly.
Two. Water-fed pole footage. A pole reaching a second-story window from the ground answers the unspoken question, which is whether a stranger is going to lean a ladder on the gutter and put a foot through a flower bed. Show the reach, show the purified water rinse, and say in the caption that there are no ladders on the house.
Three. Same-spot before and after. Static image, split screen, shot from a tripod at the same height and time of day. Clean glass photographs as nothing on its own, so the comparison is what carries it. Shoot into a reflection where you can.
Four. Neighborhood specificity. "We did four homes on Oak Ridge this week" with a photo of a recognizable street outperforms generic creative by a wide margin in suburban markets. People book what their neighbors booked.
What does not work: stock photos of a smiling woman with a spray bottle, logos as the main image, and anything that looks like a flyer. If the ad reads as an ad, the cost per lead doubles.
The offers that convert
Vague offers get vague responses. At this ticket size the customer wants a number before they will raise their hand.
- Whole-house exterior, flat price, from $160 for a standard two-story with up to 25 panes. Flat beats "free estimate" by a mile.
- Interior and exterior with screens and sills, from $260.
- Bundle: windows plus gutter clear-out on the same visit, $120 off the second service. This is the offer that fixes the low-ticket problem, because the drive time is already paid for.
- Storefront route: first clean at half price for businesses that sign for monthly service.
- Seasonal: pre-holiday interior clean booked before the 20th of November.
Do not run a percent-off. "20% off" on an unknown base price means nothing to a homeowner. A dollar figure means something.
Budget, structure and who sees it
Start at $15 a day, which is $450 a month, and go to $40 a day when the leads are booking. Below $10 a day Meta cannot learn and you get a trickle of unqualified clicks.
Structure it simply:
- Cold prospecting. One campaign, one or two ad sets, four to six creatives. Optimize for leads, not for clicks or reach.
- Retargeting. One campaign at $5 to $8 a day, aimed at site visitors, video viewers past 50%, and your customer list.
Do not build twelve ad sets. At $450 a month you are splitting the budget into pieces too small to exit the learning phase, which needs roughly 50 conversions per ad set per week.
Targeting for a service area
Set a radius around your shop that matches drive time, usually 10 to 20 miles, and pin the suburbs where the houses are worth cleaning. Meta radius targeting is blunt, so exclude the zip codes you do not want.
Layer lightly:
- Age 35 and up
- Homeowners where the behavior is available, otherwise let the algorithm find them
- Skip interest targeting almost entirely, since "interested in cleaning" is a garbage audience
The highest value custom audience you can build costs nothing: upload your past customer list, then build a lookalike from the top 25% by spend. Window cleaning customers cluster hard by neighborhood and house type, and the lookalike finds that pattern faster than you can guess it.
Lead forms or the website
Instant forms get you leads at half the cost and a third of the quality. Someone taps twice, the prefilled name and number submit, and they do not remember doing it.
The compromise that works: use the instant form, but make it a higher-intent version. Add two custom questions such as "How many stories?" and "Interior, exterior or both?" and turn on the higher-intent confirmation step. That cuts volume by about a third and roughly doubles the booking rate.
Then call the lead inside five minutes. A Meta lead goes cold faster than a search lead because the person was not shopping, they were scrolling. If you cannot call in five minutes, send an automatic text in thirty seconds. The missed calls guide covers the setup, and the calculator will show you what the slow ones cost.
If you send traffic to your site instead, send it to a single page with the flat price, three photos, and a tap-to-call button above the fold. Not the homepage. The website guide has the rest.
Retargeting is where the money is
The cheapest window cleaning job you will ever sell is the second one to a customer who already liked the first.
Three audiences, running year round at a small daily budget:
- Site visitors in the last 180 days who did not book. Show them the before and after and the flat price.
- Video viewers past 50%. They watched a squeegee for eight seconds, they are interested.
- Your customer list, filtered to people last cleaned 5 or more months ago. Show them a rebook reminder in the month their windows are due.
That third audience is the one owners skip. Residential customers rebook every six to twelve months and almost never remember to do it themselves. A $6 a day reminder campaign pointed at last spring's customers, run in March, frequently books more jobs than the cold campaign it runs beside.
Timing the year
Spend follows the two peaks. March through June is the biggest, when the sun angle changes and the pollen coats everything. Late October into the third week of November is the second, when people want the house right before guests arrive. Those two windows should carry most of your Meta budget.
In January and February, switch the message from residential to commercial and run a small campaign at business owners for storefront routes, which do not care about weather. More on that in the seasonality guide.
One thing worth knowing before you spend: ads point people at your Google profile as often as your website, and in this trade 32% of companies have no website listed and the median company has 7 reviews. Fix the profile first or you are paying to send strangers to a thin listing. The benchmark report shows where you stand.
Frequently asked
Do I need to be on Instagram separately? No. Run one campaign with automatic placements and Meta will serve it on both. Shoot vertical so it fits Stories and Reels, and it will fit the Facebook feed fine.
How much do I need before I can judge it? About 30 leads. At $30 a lead that is $900, so roughly two months at $15 a day. Judge it on booked jobs and cost per booked job, not on the cost per lead the platform reports.
Should I boost posts instead? Boosting is a worse version of the same thing with fewer controls and no lead form. It is fine for keeping a page alive at $5 a week. It is not an acquisition channel.
Meta campaigns are one of the services in the free 14-day trial, built in your own ad account. Text or call (385) 832-6175.