The facilities director for a 14-building medical campus is not typing “commercial cleaning near me” at 11 p.m. She is in Reels between a vendor invoice and a Slack thread about a sticky lobby. Your bid, your night crew, and your bonded-and-insured story have maybe two seconds before she flicks past. That is the real auction Meta Ads for commercial cleaning companies now live in, and it is nothing like a Search campaign that waits for “office cleaning RFP.”
Industry benchmarks consistently show Meta ROAS running 30-40% below Google Ads averages across verticals. That gap is not a reason to skip paid social. It is a warning that janitorial advertisers who treat Meta like a cheaper Google Ads clone will buy cheap clicks from people who want a Saturday sofa shampoo. Commercial work is slower, higher ticket, and picky about proof. If the creative cannot stop the doom scroll with a floor that actually looks like a hospital corridor at 4 a.m., the algorithm will find someone cheaper to show ads to.
This piece is the operator version: how Advantage+ and broad targeting actually behave on B2B cleaning contracts, what “creative is your targeting” means when your buyer is a property manager, and the landing-page and signal work that keeps CPL from turning into a graveyard of fake RFPs.
Facility buyers live in the feed, not in a keyword report
Commercial cleaning companies still over-index on Search because RFPs and “janitorial contractor” queries feel serious. Fair. Search is where late-stage intent shows up. Meta is where the same buyer first notices you exist, weeks before procurement opens a spreadsheet. Property managers, COOs at small manufacturers, and office administrators do not wake up hunting ads. They scroll past a stained carpet in a medical waiting room, a restroom that failed a surprise inspection, or a day porter who actually looks like they belong in a Class A lobby.
That is why the 2020 playbook of stacking lookalikes of “people who liked janitorial pages” plus a 15-mile radius around your warehouse quietly died. Meta’s AI delivery system cares more about the first 1.5 seconds of the video than your saved audience. Run broad with weak creative and you will still get volume. You will also get apartment-complex residents asking for a $89 deep clean. Broad targeting is not the villain. Weak positioning is.
Creative fatigue shows first in CPM, not in lead count. UGC-style clips that looked great on day one often peak in 5-6 days and then rot. If you only check the account when “leads feel slow,” you already paid the tax. Watch frequency and CPM on the winning night-crew clip before the form count falls off a cliff. When CPMs climb and CTR holds, you are not “scaling.” You are wearing out the same 8,000 facility people in a metro.
A Midwest operator we worked alongside (not a client name, just the pattern) had a $4,200/month Meta budget pointed at “office managers 25-54.” Leads looked fine in Ads Manager. Sales said every call was a homeowner. The fix was not a tighter interest stack. It was one 12-second clip of a restroom after a 2 a.m. hospital shift, overlay text that named “nightly disinfect for clinics and labs,” and a form that asked square footage and union vs non-union before anyone could hit submit. In-platform CPA looked worse for 11 days. Calendar quality jumped. That is the trade you should want.
If your team still ships every click to the homepage, pause here. Facility buyers bounce when they land on residential before-and-after galleries. A dedicated page that mirrors the ad’s job type (day porter, floor care, post-construction, medical) is table stakes. If you want a second pair of eyes on that Meta-to-page handoff, HeyLead’s Meta Ads programs are built around that loop, not around “boost the reel.”
How a commercial cleaning Meta account should actually be built
Fewer campaigns, broader targeting, cleaner conversion setup. That sentence is overused in 2026 for a reason. Cleaning companies that still split “Lookalike 1%,” “Lookalike 3%,” and “Office managers + janitorial interest” into six ad sets reset learning every time someone “optimizes.” Meta then spends the next week guessing. You do not have a targeting problem. You have a structure and signal problem.
Start with the jobs you actually want on the board: recurring office contracts, medical or dental suites, industrial floors, post-construction punch lists, and government or education buildings if you are bonded for them. Each job is an offer, not a demographic. The ad talks like a bid cover letter. The form qualifies like a pre-walk. The landing page looks like a capability one-pager, not a consumer coupon.
Do not promise a CPL or ROAS before you have seen unit economics. Nightly medical work at $8,000/month is not the same as a one-off warehouse sweep. If sales cannot tell you close rate and first-year contract value by job type, Meta will optimize to the cheapest form. That is automated bidding doing exactly what you asked: more conversions, worse work.
Audit scorecard
-
Offer, not audience, is the splitOne campaign per major contract type yo
Offer, not audience, is the splitOne campaign per major contract type you can staff this quarter (day porter vs medical nightly vs post-construction). Keep Advantage+ or broad on. Let creative, not 14 ad sets, do the sorting. If you cannot staff union sites, say so in the first line of copy so Meta stops finding those buyers.
-
Creative is the targetingShoot the work you want: wet-look VCT in a groc
Creative is the targetingShoot the work you want: wet-look VCT in a grocery back room, a restroom checklist on a clinic door, a day porter in a lobby at 7:10 a.m. Hooks in the first second. Face-to-camera from a GM beats stock “sparkling office” footage. Rotate 4-6 variants a week because ads die after a few days even when day-two CPA looked pretty. Broad plus a systematic creative engine still beats 2024 audience stacking by a noticeable ROAS gap when the funnel is honest.
-
Qualify in the form, not in the CRM two weeks laterInstant Forms are fin
Qualify in the form, not in the CRM two weeks laterInstant Forms are fine if you ask facility type, approx square footage, current vendor status, and city. Drop “name and email only.” That field set is your targeting. Sales should still call within an hour on medical and post-construction because those jobs move. Slow follow-up on a $40k annual bid is how Meta “leads” earn a bad reputation.
-
Send the click to a bid-shaped pageMatch headline to the ad: “Nightly cl
Send the click to a bid-shaped pageMatch headline to the ad: “Nightly cleaning for outpatient clinics,” not “We clean it all.” Show insurance, background checks, and a sample scope. Put the form above the fold on mobile. 63%+ of paid clicks are mobile; if your PDF of a 12-page capabilities deck is the CTA, you are donating spend. Use HeyLead Insights to watch where facility buyers stall: usually the insurance paragraph, the form, or a residential gallery they never asked for.
-
Signals over vanity CPLPixel plus Conversions API, Event
Match Quality you actually check, and a CRM event when a walk-through is booked, not when a form is dumped. Ad blockers and privacy cuts still eat 20%+ of conversion data. If Meta only sees Instant Form dumps, it will hunt more dumps. Pass back “qualified walk scheduled” and “contract signed” even if volume is low. Sparse, true events beat noisy fake ones.
-
Do not reset learning for sportDaily bid tweaks, new campaigns every Mon
Do not reset learning for sportDaily bid tweaks, new campaigns every Monday, and “let’s try Advantage+ Shopping for cleaning” are how you stay in learning forever. Change creative inside a stable campaign. Change budget in modest steps. If you need a new geo because you opened a second depot, that is a new campaign. If you are bored, that is not.
-
Judge Meta on pipeline, not last-clickIn-platform CPA will disagree with
Judge Meta on pipeline, not last-clickIn-platform CPA will disagree with your CRM. Last-click will double-count with Search. For a 90-day janitorial cycle, that is normal. Track cost per qualified walk and cost per signed contract by campaign. Unified measurement beats arguing with Ads Manager. Meta average ROAS of ~2.8x is a benchmark, not your north star. A $180 qualified walk that closes 1 in 4 at $36k/year is a win even if the dashboard looks “expensive.”
-
Remarketing will happen whether you plan it or notA chunk of broad spend
Remarketing will happen whether you plan it or notA chunk of broad spend (often cited around 20-30% in mixed accounts) already behaves like remarketing. Still build a tight retargeting set for people who hit the medical or industrial LP but did not book a walk. Use a different hook: sample scope, insurance certificate, a 30-second clip of a supervisor walk. Do not show the same cold ad for 14 days.
Action checklist
- List the three contract types you can actually start in 30 days, with a floor contract value. Kill ads for work you cannot staff.
- Film four clips this week: night restroom, lobby day porter, floor machine in a warehouse, and a GM talking insurance and background checks. No stock offices.
- Build one Instant Form and one landing page per contract type. Same headline. Square footage and facility type required.
- Wire Conversions API and a CRM event for “walk booked.” Stop optimizing to raw leads if sales already hates them.
- Launch one broad campaign per offer. Daily budget that can exit learning without betting the payroll. Do not stack six lookalikes.
- Replace any ad whose CPM is up and CTR is flat after 5-6 days. Keep the campaign. Swap the creative.
- UTM every ad. Review cost per walk, not cost per form, with sales twice in the first month. Ignore day-three “learning phase” panic.
Free tools - try these yourself
According to the HTTP Archive’s 2024 Web Almanac, roughly 54% of origins pass all three Core Web Vitals. A slow “Request a quote” page on a phone in a parking garage will lose the same facility director your video just earned. Check LCP and INP on the cleaning LP before you scale spend. Pretty ads on a 4-second form is how Meta gets blamed for “bad leads” that never even submitted.
Get a free marketing audit - we review your search, ads, and landing pages and send back what to fix first.
Get a free audit

Landing pages that read like a walk-through, not a consumer coupon
Commercial buyers scan for risk: insurance limits, background checks, after-hours access, chemical SDS, union status, and whether you have ever cleaned a lab. If the ad promised nightly clinic work and the page opens with “sparkling homes,” you trained Meta to find the wrong people. Align the first H1, the hero line, and the form to one job. Then prove it with a photo of that job, not a stock atrium.
Instant Forms vs a site form is not a religion. Forms win on mobile when the offer is a walk-through, not a 40-page bid. Site pages win when you need to show a sample scope, logos (with permission), and a map of service cities. Many cleaning companies need both: a short form in-ad, a longer page for people who click through. Track them as separate events so you can see which path books walks.
A two-branch cleaning firm in the Southeast ran the same “commercial cleaning” Advantage+ ad to a homepage with a $99 residential promo in the hero. Meta found renters. They rebuilt one page titled for “nightly office and medical suites,” moved the residential promo off that URL, and asked for facility type first. Form volume dropped 41%. Walks booked from Meta did not. Sales stopped hiding the Slack channel. That is conversion rate work, not a new audience.
Watch scroll depth and form abandon. If people hit the insurance block and leave, the copy is too cute or the proof is missing. If they never reach the form, the page is too long or too slow. Heatmaps are not decoration here. They tell you whether the ad’s promise survived the click. Keep Open Graph images looking like the ad creative so the share preview does not swap in a stock mop.
If paid social is working and the site is not, you do not have a Meta problem. You have a post-click problem. Fix the page before you raise budget. Raising budget on a leaky LP is how you buy more of the same disappointment at a higher CPM.
What marketing leaders are seeing
“We kept optimizing to Instant Form volume for office cleaning. CPM looked healthy until week two. Sales said every lead was a condo. We switched the event to ‘walk booked’ and killed the residential-looking UGC. In-platform CPA got uglier for 11 days. The calendar finally had real square footage on it.” - Head of Growth, commercial facilities services
“Creative died in five days even when day-one CTR was fine. We were treating fatigue like a myth. Now we shoot a new night-crew clip before CPM moves, not after lead count falls.” - VP Marketing, regional janitorial group

FAQs
Should commercial cleaning companies still use tight lookalikes?
As a primary structure, no. Lookalikes of a tiny “closed won” list can be a signal inside a broad campaign. They should not be six brittle ad sets. Creative and the form do more targeting than a 2020 interest stack. If your closed-won file is 40 contacts, Meta does not have enough to clone a market.
Is Meta worth it when Google Ads ROAS averages higher?
Often yes, for pipeline that Search never sees. Use Meta to put night-crew and medical proof in front of facility people who are not searching yet. Use Search when they type the RFP language. Judge Meta on qualified walks and signed contracts, not on matching Google’s 4.2x benchmark. Different job, different math.
Do Instant Forms waste sales time?
They do if you only ask for a name. They work if square footage, facility type, city, and current vendor are required, and if someone calls fast on medical and post-construction. Pair forms with a matching landing page for buyers who want the insurance story first.
How long before Meta ads actually become profitable for a cleaning company?
Plan in months, not a weekend. Learning, creative rotation, and a 30-90 day sales cycle mean 3-6 months of honest signal is normal. Anyone guaranteeing a CPL before seeing your close rates and pages is selling you a number, not a program.
What budget is too small to learn?
If daily spend cannot exit learning without a panic, you will only see noise. Better to run one offer in one metro with enough to get walks than four geos on fumes. Exact floors depend on your CPC and form rate. If you cannot fund creative reshoots every week, you will lose to fatigue even at “efficient” CPL.
Putting it to work
Execution sprint
This week
- Pull 30-90 days of performance for commercial cleaning (Search Console, ads, CRM, or call logs - whatever you have).
- Flag the top leak: wrong intent, weak page, slow response, or dirty conversion tracking.
- Ship one fix on the highest-traffic money path (page, campaign split, or response rule).
- Run the free tools below on that same URL or account and log the findings.
Free tools for this sprint
Next 30 days
- Expand the fix to the next one or two money paths only after the first one shows cleaner bookings.
- Align creative, keywords, or content with the same offer the page now states.
- Review booked outcomes weekly; cut anything that still only produces unqualified volume.
This week
-
Pull 60 days of Meta leads and tag each as residential, small office, medical, industrial, or junk. That split is your brief.
-
Pause any ad set whose creative is older than 10 days if CPM is up.
-
Write one H1 per contract type and check it with the H1 and meta description tools before traffic hits the page.
-
Add UTMs and confirm the Open Graph image matches the ad, not a stock lobby.
-
Run the Core Web Vitals checker on the mobile quote page. Fix the worst INP or LCP issue before you add budget.
Next 30 days
-
Stand up Conversions API and a “walk booked” event. Stop feeding Meta raw forms if sales already filters them.
-
Shoot a weekly night-crew or floor-care clip. Treat creative rotation as the campaign, not a side project.
-
Align one landing page per offer and watch form abandon in session recordings.
-
Report cost per qualified walk to whoever owns the marketing number, not blended CPL.
Pull last month’s Meta leads next to the dispatch board and mark which ones could ever have been a contract. If the mismatch is the Instant Form, the residential-looking creative, or a homepage that still sells $99 specials, that is the whole job. HeyLead will take the messy loop of Meta creative rotation, bid-shaped landing pages, and conversion signals that actually match signed cleaning contracts off your plate so you are not babysitting learning phases every Thursday. Chat with us on WhatsApp
Free marketing audit, or reach Martin directly:
Get a free audit Connect on WhatsApp · martin@heylead.com