Four things to set up in Meta Ads Manager before you spend a dollar on painting leads
Most painting campaigns fail before a single dollar gets spent. The ad creative gets blamed. The targeting gets blamed. Sometimes the painter gets blamed, told their service area is "too competitive" or their budget is "too low." The real problem is usually upstream from all of that, buried in four campaign decisions that get made once and almost never revisited.
If you've paid an agency before and walked away with nothing, there's a decent chance the agency made these decisions quickly, made them wrong, and moved on to the next client. Knowing what they are puts you in a position to ask better questions, whether you're running ads yourself or handing them off to someone else.
The campaign objective is not a detail
Meta gives you roughly a dozen campaign objectives to choose from. Most agencies running home service ads default to "Leads" because it sounds right. It often isn't, or at least not without understanding what "Leads" actually optimizes for.
When you choose "Leads" with an Instant Form, Meta's algorithm looks for people in your audience most likely to fill out a short form and hit submit. That sounds like what you want. The problem is that a form submission costs less friction than a phone call, which means Meta can find a lot of people willing to tap a few fields and submit, many of whom had no real intention of hiring a painter. They were curious. They were bored. They won't answer when you call back.
The alternative is "Leads" with a landing page that requires more steps: reading, scrolling, making a decision, then filling out a form. More friction means fewer submissions, but the ones who submit have already self-selected. For a painting company where the average job runs several thousand dollars, a tighter lead pool with higher intent beats a fat list of people who won't pick up the phone.
One of the real complaints from a painter ASN spoke with was getting people looking for jobs instead of people looking for work done. Objective setup is one of the places that confusion starts.
Geographic targeting at the zip code level, not just the metro
Default geographic targeting in Meta is radius-based. You pick a city, set a radius, and Meta serves your ads across that circle. The circle doesn't know about suburb boundaries, income distribution, drive time, or which neighborhoods actually have the housing stock that justifies interior painting jobs over $2,000.
Painters who do high-end residential interiors, cabinet refinishing, or exterior work on older homes have a very specific geography. It's not the full metro. It's often a cluster of specific zip codes or neighborhoods where the housing value and homeowner age align with the work they want.
Tightening targeting to specific zip codes does two things. It reduces waste on impressions served to renters, apartment buildings, and new builds where painting is handled by a developer. And it tells Meta's algorithm to find more people who look like the people in those zip codes, which tends to sharpen the quality of who sees the ad.
Radius targeting is faster to set up. Zip code targeting takes an extra twenty minutes and produces a materially different lead pool.
The Pixel has to fire on the right event
If you've run ads before without a Meta Pixel installed on your site, or with a Pixel that was firing on the wrong event, Meta spent your budget learning from noise.
The Pixel is what tells Meta which clicks turned into real leads. Without it, Meta optimizes for clicks. Clicks are cheap and mostly meaningless. With a Pixel firing on a form submission confirmation page, Meta starts learning which users in your audience actually complete the lead action, and starts finding more people who match that pattern.
The specific event matters too. "PageView" tells Meta someone landed on your site. "Lead" tells Meta someone filled out your form. "Contact" can tell Meta someone clicked your phone number. Each of those signals pulls from a different pool of people. Running a campaign optimized for "Lead" events when the Pixel is only tracking "PageView" means Meta thinks every site visit is a success, which it isn't.
This is a setup step that takes about thirty minutes if you know what you're doing. Many agencies skip it, or install the Pixel base code without adding the event-specific tracking. You can verify it's working using Meta's Pixel Helper browser extension, which shows you in real time which events are firing and whether they're configured correctly.
Ad creative that filters before the click
Creative decisions get treated like a branding problem. Pick a good photo, write a clean headline, and let the targeting do the work. That's backwards.
The ad's job isn't just to attract attention. It's to repel the wrong clicks before they cost you money. A painting ad that shows a generic house exterior and says "Get a free quote" will generate clicks from people who aren't sure what they're even clicking on. An ad that says "Interior cabinet refinishing for $1,800 and up, Oakville and Burlington homeowners" will generate fewer clicks, almost all of them from people who already know the price range, location, and service type, and clicked anyway.
Specificity in the creative pre-qualifies leads before they ever see your form. It also tells Meta something about who to show the ad to, because the people who engage with more specific creative tend to be more intent-matched than the people who click on vague offers.
The Safe Step campaign ASN ran for a rubber resurfacing contractor illustrates the point numerically. 247 leads at $11 cost per lead on $2,800 total spend. That CPL holds up because the campaign was built around specificity at every layer, including creative that described the exact service and surface type rather than gesturing at "outdoor resurfacing." The specificity filtered the audience before the click.
What to do with this before you hand anything over
If you're evaluating an agency, ask them directly which campaign objective they're planning to use and why. Ask whether they're installing event-specific Pixel tracking or just the base code. Ask to see the geographic targeting before the campaign launches, not after. Ask to approve the ad creative before it goes live, and push back if it's generic.
These aren't technical questions only ad managers can answer. They're decision points any informed contractor can understand and verify. An agency that gives vague answers to direct setup questions is usually the same agency that gives vague answers when the leads don't show up.
If you'd rather have someone who already has this figured out run it, ASN handles all of it, with no setup fee and no contract. You can see how the setup looks before you're on the hook for anything. The contact page is the right place to start.
ASN manages Meta ads for home service contractors with no setup fee and no contract. If you want to see what this looks like for your trade before committing to anything, the contact page is the right next step.
See how it works for your business