How a Christmas light installer got 63 leads at $15.77 each from Facebook and Instagram ads, and the exact setup any contractor can copy.
Facebook ads work for contractors when four things are true: the ad shows your real work on video, it only reaches homeowners you can actually drive to, the homeowner can ask for a quote without leaving Facebook, and someone calls them back fast. Get those right and Facebook becomes a steady source of booked jobs. Get them wrong and it’s an expensive way to collect likes.
This isn’t theory. It’s the setup we ran for Trey’s Christmas Lights, a holiday lighting installer in Arvada, Colorado. On a $40-a-day budget, the campaign brought in 63 homeowner leads at $15.77 each, and the ads were viewed 41,206 times. Below is every part of that campaign, the numbers straight from Trey’s Ads Manager, and how to apply the same playbook to HVAC, roofing, landscaping or any trade where homeowners plan ahead.
The campaign at a glance
| Trey’s Christmas Lights | |
|---|---|
| Business | Holiday lighting installation, Arvada, CO |
| Platform | Meta (Facebook and Instagram) |
| Goal | Quote requests from homeowners in the service area |
| Daily budget | $40 |
| Campaign length | 21 days |
| Leads | 63 |
| Cost per lead | $15.77 |
| Views | 41,206 |
| People reached | 21,232 |
| Three-second video plays | 6,278 |
The short version: real install videos, tight location targeting, Meta’s built-in lead forms, and an automation that sent every new lead straight to Trey’s phone. The full story is on our Trey’s Christmas Lights case study. This post is the how-to.
The results, straight from Ads Manager
Here’s the campaign’s results screen in Meta Ads Manager. We’ve numbered the five things worth looking at.
Trey’s Christmas Lights, Meta Ads Manager, lifetime results. Numbered callouts added by Digital Storks.
- 63 Meta leads. Each one is a homeowner who filled in a quote request: name, phone and details, sent straight to the business.
- $15.77 per lead. This is the number that matters most for a seasonal business. We’ll turn it into a cost per booked job further down.
- 41,206 views from 21,232 people. The ad was shown to just over 21,000 people in the service area, about twice each on average. That’s enough repetition for a homeowner to remember the name without the ad getting stale.
- 6,278 three-second video plays. Video is what stopped the scroll. More on why real footage beats stock photos below.
- $40 daily budget. Not a big-company budget. Most owner-operators can afford to test this.
The ad itself (bottom right in the screenshot) was simple: a short clip of Trey’s own team, the line “Lighting up Northwest Denver for the holidays! Your trusted Christmas light installers right here in Arvada, CO.” and a Get quote button.
What the numbers tell you
A little math makes the results easier to judge:
- About 3 in 10 people who saw the ad watched at least 3 seconds of video (6,278 plays from 21,232 people reached). Plays aren’t unique people, since some people watch twice, so treat this as a rough guide, not an exact rate.
- About 1 lead for every 100 three-second plays (63 leads from 6,278 plays). Once someone watched, roughly 1 in 100 asked for a quote.
- About 3 leads for every 1,000 people reached (63 from 21,232).
None of these are “industry benchmarks”. They’re one real campaign in one market. But they give you something concrete to compare your own campaigns against.
From people reached to quote requests. Video plays are not unique people, so the steps are approximate.
Why Facebook ads work for some contractors and not others
Google and Facebook do different jobs.
On Google, the homeowner is already looking for you. They typed “AC repair near me” because the AC is broken right now. Your job is to show up and look trustworthy, which is why your Google Business Profile and local SEO and search ads matter so much for emergency work.
On Facebook and Instagram, nobody is searching. They’re scrolling. Your ad has to create the interest by showing them something they didn’t know they wanted yet: a house lit up for the holidays, a lawn that suddenly looks like a magazine cover, a roof replacement done in a day.
That’s why Facebook ads tend to work best for:
- Visual work. Holiday lighting, landscaping, pressure washing, painting, remodeling and roofing all look great on video.
- Planned purchases. Jobs homeowners book days or weeks ahead, not in a panic.
- Seasonal pushes. Spring cleanups, AC tune-ups before summer, furnace checks before winter, holiday lighting in the fall.
- Recurring services. Lawn care, pest control, pool service, window cleaning: one good customer is worth years of revenue.
And they tend to struggle for pure emergencies. Nobody with a burst pipe is waiting for a Facebook ad. If most of your revenue comes from “fix it now” calls, put your first dollars into Google Maps and search, then use Facebook for maintenance plans and seasonal offers.
Where Facebook ads fit, and where Google should come first.
The 5-part setup we used
The five parts of the campaign. Each one depends on the one before it.
1. Real install videos, not stock photos
The single biggest decision was the creative. We edited Trey’s own install videos into short ads: real crews, real houses, real finished displays in neighborhoods people recognize.
Why this matters for contractors:
- It proves you’re real. Stock photos look like every other ad in the feed. A clip of your truck in a local driveway does not.
- It shows the result. People buy the finished house, not the process. Lead with the “after” shot, then show your team working.
- It’s cheap to make. Phone footage is fine. Shoot vertically, keep each clip short, and film on bright days or right after dusk for lighting work.
What to film on your next jobs: a 5-second “after” reveal, a few seconds of your crew working safely, and a short line from the owner or a happy customer. That’s enough for several ads.
2. Target only homeowners you can actually reach
Every dollar spent on someone outside your service area is wasted. We set the targeting around Trey’s service area around Arvada so the budget only went to people Trey’s crews could serve.
One honest caveat: location targeting isn’t perfect. Meta itself notes that because the signals it uses vary, complete accuracy can’t be guaranteed, and you may occasionally get a lead from outside your area. Plan for a few out-of-area leads and politely refer them on.
Practical rules:
- Use a radius or ZIP list you’d really drive to. Not your whole state.
- Don’t over-narrow on interests. For most home services, location matters more than interests. Let the video do the filtering.
- Match the copy to the place. Naming the area (“right here in Arvada”) tells locals the ad is for them.
3. Let homeowners ask for a quote without leaving Facebook
We used Meta’s lead ads with instant forms. When someone taps Get quote, a short form opens inside Facebook or Instagram. There’s no website to load and no tiny contact form to fight with on a phone.
Meta offers different instant form types. The default, More volume, is built for quick submissions on mobile. Higher intent adds a review screen so people confirm their details before sending, which Meta says helps when every lead needs follow-up or qualifying.
Our rule of thumb:
- Start with More volume if your service is simple to quote and you call every lead anyway.
- Switch to Higher intent if you’re getting lots of leads that don’t answer the phone or don’t fit your area or budget. You’ll get fewer leads, but better ones.
Keep the form short: name, phone, address or ZIP, and one question that helps you quote (for lighting, roughly how big the house is; for lawn care, lot size). Every extra question costs you leads.
4. Send every lead to your phone the moment it arrives
A lead that sits in Ads Manager overnight is a lead your competitor calls first. We built an automation that sends each new lead straight to Trey’s website and phone the moment it comes in.
There’s also a practical reason not to leave leads in Meta: lead data from instant forms can only be downloaded for 90 days after someone submits the form. Meta itself recommends downloading often or connecting a CRM. If you’re not using a CRM, at the very least get leads into a spreadsheet and onto your phone.
The goal is simple: call within minutes, not hours. Homeowners who just asked for a quote are still thinking about it. By tomorrow they may have booked someone else.
5. Back up the ad with a professional website
Even with an instant form, many homeowners check you out before they answer your call. They’ll tap your page, look at your reviews and visit your website. We built Trey’s a new website that backed up the ad, so anyone who looked found a professional, trustworthy business.
If your website is slow, out of date or hard to use on a phone, fix that before you spend on ads. It’s one of the core pieces of our Launch, Grow and Dominate plans.
What a $15.77 lead is really worth
A cost per lead only means something once you turn it into a cost per booked job. That depends on how many leads you close, and that depends on how fast you call, how good your price is and how well you sell.
Here’s the math at $15.77 per lead. The close rates are examples, not Trey’s numbers.
| If you book… | Cost per booked job | At 63 leads, that’s… |
|---|---|---|
| 1 in 2 leads | $31.54 | about 31 jobs |
| 1 in 3 leads | $47.31 | 21 jobs |
| 1 in 4 leads | $63.08 | about 16 jobs |
| 1 in 5 leads | $78.85 | about 13 jobs |
Now compare that to what one job is worth to you. For a holiday lighting install, a full-season roof wash or a landscaping project, even the bottom row usually pays back many times over. For recurring services like lawn care or pest control, one booked customer can be worth years of visits.
The takeaway: don’t judge Facebook ads by clicks or likes. Judge them by cost per booked job, and track it every month.
How much should a contractor spend on Facebook ads?
Trey’s campaign ran on $40 a day. That’s a sensible starting point for most local service businesses because it buys enough reach to learn what’s working within a couple of weeks.
A simple way to budget:
- Decide what a booked job is worth to you. Use your average job value, or the first-year value for recurring services.
- Decide what you’d happily pay to win one. Many owners are comfortable spending a small fraction of the job’s value to book it.
- Start at $20–$40 a day for two to three weeks. Don’t change everything after day three. The system needs time to find the right people.
- Look at cost per booked job, not cost per lead. Then turn up what works.
Ad spend is separate from management. With Digital Storks, Meta and Google ads management is part of the Dominate plan, and you pay the ad spend directly to Meta, so you can always see exactly where it goes.
Time it before your busy season
Seasonal campaigns work best when they start before demand peaks, not during it. For holiday lighting that means launching in the fall, before installation calendars fill. For lawn care and landscaping it means late winter. For AC tune-ups it means spring. Plan to launch about six to eight weeks before your rush.
Typical launch windows. Adjust for your climate and region.
Mistakes we see contractors make with Facebook ads
- Boosting posts instead of running lead campaigns. A boosted post gets likes. A leads campaign with a form gets phone numbers.
- Using stock photos. They make you look like everyone else. Real footage wins.
- Targeting too wide. Paying to reach people two hours away wastes budget fast.
- Long forms. Asking for ten details on a phone kills submissions.
- Slow follow-up. If leads wait until the end of the day, your close rate drops, and so does the value of every lead.
- Judging after three days. Give a campaign a couple of weeks before deciding.
- Turning ads off as soon as you’re busy. Use the busy season to collect leads for next month’s schedule, or switch to maintenance-plan offers instead of stopping completely.
- Expecting Facebook to replace Google. For emergency work, Google Maps and search still come first. Facebook works best alongside them.
Copy this: a Facebook ads checklist for contractors
- Film 3–5 short vertical clips of real jobs: the finished result first, then your crew.
- Write one plain sentence that names your service and your town.
- Create a leads campaign with an instant form and a Get quote button.
- Target a radius or ZIP list you really serve.
- Keep the form to name, phone, ZIP or address, and one quoting question.
- Connect the form so every lead reaches your phone instantly.
- Make sure your website and reviews back up the ad.
- Start at $20–$40 a day and leave it running for two to three weeks.
- Call every lead within minutes.
- Track cost per booked job each month and scale what works.
If you’d rather we set it up and run it for you, that’s what our paid ads service does.
Frequently asked questions
Do Facebook ads work for contractors?
Yes, especially for visual, seasonal and planned work like holiday lighting, landscaping, roofing, painting and remodeling. They’re weaker for emergency repairs, where homeowners search Google instead.
How much do Facebook ads cost for a home service business?
You set the budget. Trey’s Christmas Lights ran on $40 a day and paid $15.77 per lead. Your cost per lead will depend on your trade, your market, your offer and your video.
Should I use instant forms or send people to my website?
For most contractors, start with instant forms: homeowners can request a quote without leaving Facebook or Instagram. Make sure your website still looks professional, because many people will check it before they answer your call.
How fast should I call Facebook leads?
As fast as you can, ideally within minutes. Set up an automation so leads reach your phone the moment they arrive, rather than checking Ads Manager at the end of the day.
Is Facebook better than Google for contractors?
They do different jobs. Google captures people who are already searching, so it’s the best place for emergency work. Facebook creates demand and works well for seasonal and visual services. Most growing contractors use both.
Can AI tools like ChatGPT find my business too?
More homeowners now ask AI assistants who to hire. That’s a different channel from ads, and it’s what our AI search visibility service covers.
Want to know what Facebook ads could do in your market? Get a free growth audit. We’ll look at your website, Google profile, reviews and local competitors, and tell you whether Facebook ads make sense for your business.