For home services

Home services advertising measured in booked jobs

Adrails gives plumbing, HVAC, roofing, electrical, landscaping, pest control, cleaning and solar companies one workspace where ads are judged on the jobs they booked and completed, not on clicks. Your dispatch or CRM server records the call, the booked job and the completed job with its value, Adrails sends them back to Meta Ads and, once your workspace can connect it, Google Ads as conversions, and templates, thresholds and report links repeat per trade and per service area.

Reviewed Oct 4, 2026

By trade

The job that matters, the figure to watch and the workflow, trade by trade

Every trade sells a lead that looks the same to the ad platform, a call or a form. What it becomes, how fast, and what it is worth differ, and the workflow starts from that.

The job that matters, the figure to watch and the workflow, trade by trade
TradeConversion that mattersFigure to watchAdrails workflow
PlumbingAn answered call that becomes a dispatched job, often the same dayCost per booked job, emergency and scheduled work read apartA lead event when the dispatcher books the job, a purchase event with the invoice value when it closes; a CPA alert on the emergency campaign over today
HVACA booked service call, or a quoted replacement that becomes an installCost per booked job per season, and the share of quotes that become installsService and install campaigns kept apart; one template per service area; a weekly review before each season
RoofingAn inspection or estimate on site, then a signed contract weeks laterCost per signed contract, read with the contract valueThe estimate sent as a lead, the signed contract as a purchase with its value; Purchase chosen as the event Google counts once contracts flow
ElectricalA scheduled visit: repair, rewiring or a panel upgradeCost per booked visit by service typeOne campaign per service group, a template applied to each area, a stop-loss on what spends without a booked visit
LandscapingA quote request that becomes a recurring maintenance contractCost per contract and the months it stays activeThe first contract sent as a purchase with its monthly value; areas compared on cost per result in Compare
Pest controlA first treatment booked, then a recurring planCost per new customer and the share that takes a planA lead at booking, a purchase per plan sign-up with its value; a threshold on cost per result over 7 days per account
CleaningA recurring cleaning booked online or by phoneCost per new recurring customerPurchase events with the first booking's value; a High spend today alert per account
SolarA consultation booked, then a signed installation months laterCost per signed installation, with the contract valuegclid, fbc and fbp stored with the lead; the signed contract sent as a purchase when it closes; a threshold on cost per lead over 30 days

Conversions and figures to watch are the trades' own. The workflows name what the Adrails docs describe: tracking events, templates, Compare, threshold automations and client reports.

01

Home services advertising is bought in clicks and paid back in completed jobs

Home services advertising is bought in clicks and paid back in completed jobs. Plumbing ads, HVAC advertising and roofing ads all cost per click or per thousand impressions, and the platforms count the form fill or the call their tag saw; the booked job lives in your dispatch software and the completed job, with its invoice, in your accounting. Home services marketing that stops at cost per lead cannot tell a drain cleaning from a roof replacement, and both are a lead.

In LocaliQ's 2026 Search benchmarks the home and home improvement row pays $8.33 a click, converts 8.05% of clicks and buys a lead for $90.92, against $5.42, 8.18% and $66.69 across industries; on Facebook's leads objective the same publisher's 2026 report puts the home and home improvement lead at $42.95, at a 5.32% conversion rate. Those are the only rows that cover plumbing, HVAC, roofing, electrical, landscaping, pest control, cleaning and solar, and they cover them together, so they say nothing about which trade or which area booked the job.

Adrails reads each ad account as results and cost per result over the period you choose, and the result is whatever your server recorded: the call that was booked, the job that was completed, the value it carried. Contractor ads on Meta Ads and, once your workspace can connect it, Google Ads are then judged per trade and per service area on the job, with the platform's clicks and leads kept as the figures they are.

  • Lead, booked job and completed job recorded from your server, with value
  • Results and cost per result per account, so per trade and per area
  • Meta Ads now; Google Ads once your workspace can connect it

02

Record the call, the booked job and the completed job from your dispatch system

Put the Adrails script on the company site. It keeps a first-party visitor id for a year and the UTM parameters and click ids the visitor arrived with, gclid and fbclid among them, for 90 days, and records page views; everything the script sends stays in Adrails. Your dispatch or CRM server then sends the events that matter, signed with a server key that never goes in a page, because only signed events reach Meta and Google Ads: a forged job would teach a platform's bidding to buy more of nothing.

Send a lead event when the call is answered or the form arrives, with the job or ticket id as event_id, the customer's email or phone and the click ids saved with the visit, then a purchase event with value and currency when the job is completed. Meta receives each signed event right after it is recorded, Lead then Purchase, with the event_id that lets it count once with your pixel and the contact details hashed with SHA-256. Google Ads receives the one event you chose in Settings, in hourly batches once the event is 6 hours old and carries a gclid: for Google Ads for plumbers that is usually Lead, since the job closes the same day; for roofing and solar it is Purchase, so the bidding learns from signed contracts and their value.

A phone call is a lead when your phone system or dispatcher logs it and your server sends it; a call that came from the site can carry the visitor id, so Adrails credits it to the campaign and ad. Two limits per tracking source protect the platforms from a leaked key or a broken integration, a largest value per event of 100,000 by default and 5,000 events per day per platform, and Settings > Tracking shows what was sent, what waits and what was refused over the last 30 days, with the last problem Google reported.

  • event_id is the job or ticket id, so a job is never counted twice
  • Choose Purchase as the event Google counts when jobs with value should drive its bidding, Lead when volume should
  • A Google Ads connection made before Adrails could send conversions must be connected again from Ad accounts

03

Group accounts by trade and by service area, and reuse the campaign that works

A multi-area company usually runs one ad account per brand or per region, and a franchise runs one per franchisee. Adrails groups them the way the business runs, by trade, by service area or by owner, without changing anything on Meta or Google Ads. Analysis lists each account with campaigns, spend, revenue, ROAS, results and open findings, and the Analysis Expert answers questions scoped to a group, such as which area's pest control ads booked the most jobs per dollar last month, with the sources and the period stated.

Save the campaign, ad set and ad settings of the area that works as a template and apply it to the next one. Fields tied to one account, the pixel, the Page, media and audiences, are left out, and a name, dates and status are never copied, so the template carries the structure of the landscaping ads that worked and not the leftovers of the first account. Everything is created paused after the platform has checked it, and switched on when the branch confirms its hours and its offer.

On Meta the editor builds Sales, Leads, Traffic, Engagement, Awareness and App promotion campaigns; on Google Ads, once your workspace can connect it, Search, Performance Max, Display, Demand Gen and Shopping. Compare puts two to four areas' campaigns side by side, names the one that leads on cost per result and says whether the gap is reliable, at 95% confidence with at least 10 conversions each, and lists the settings that differ, so the radius or the offer that books more jobs is read rather than guessed.

  • Accounts grouped by trade, area or owner; nothing changes on the platforms
  • Templates per channel and level, with account-tied fields left out
  • Compare across areas, with a verdict at 95% confidence

04

A cost per lead line and a spend line per account, checked every hour

An ad threshold automation watches a campaign, ad set or ad metric over today, the last 7 days or the last 30 days, is checked every hour and fires at most once a day for each item that crosses the line. The CPA alert template posts to Slack, Discord or email when cost per result passes the figure that account can pay; High spend today flags the account whose day ran ahead of its usual spend; Stop-loss and Spend without results pause what spends without a booked job.

Each pause is applied at once, after Adrails checks on the platform that nothing changed since it was read, or waits in Priorities on Home for 24 hours until an administrator applies it. Only active items are paused, up to 50 per run, and every pause is logged with the figures that led to it. Home also flags, without any automation, an active campaign that spent a daily budget with 1,000 impressions and no result, with a Prepare pause button.

A workspace runs up to 5 threshold automations switched on at once and 25 automations in all, so put the hourly thresholds on the accounts where a bad week costs the most, and cover the long tail of areas with a scheduled automation whose Filter step keeps the rows above your line each morning. A budget change an agent prepares moves by at most 30% per change, and an increase needs measured spend and results behind it.

  • Cost per lead line per account: a CPA alert over today, 7 or 30 days
  • Spend line per account: High spend today, Stop-loss, Spend without results
  • Pause at once or hold 24 hours in Priorities; every pause logged

05

A report link per franchisee or owner, sent every week

Contractor marketing for a network ends in a report each owner can read. A client report is a read-only page about the accounts you tick, over a period of up to 92 days, that anyone with the link opens without an Adrails account. It shows totals per currency, spend, results, cost per result and ROAS, the best and weakest campaigns and creatives, up to five of each, the changes applied in Adrails over the period and the open recommendations; nothing internal goes in, no reasoning, no conversation, no member names.

Create one per franchisee or owner from Analysis with Share report, choose 30 days, 90 days or until revoked, and copy the link once, because Adrails keeps only a fingerprint of it. The Weekly client report automation emails a fresh link on a schedule, to up to 10 addresses, with an agent's read of what changed if you add that step. Every link is listed under Shared report links with how many times it was opened, a workspace keeps up to 100 open at once, and whoever opens a revoked link reads that the report is not available.

Benchmarks, LocaliQ 2026

What a home improvement click and lead cost in 2026, against all industries

One publisher, one year, both platforms. The home and home improvement row is the only one that covers the trades on this page, and it covers them together.

What a home improvement click and lead cost in 2026, against all industries
RowAverage CPCCTRConversion rateCost per lead
Google Search, home and home improvement$8.336.47%8.05%$90.92
Google Search, all industries$5.426.64%8.18%$66.69
Facebook leads objective, home and home improvement$2.182.14%5.32%$42.95
Facebook leads objective, all industries$1.802.70%8.54%$27.39

LocaliQ, 2026 Search Advertising Benchmarks (with WordStream, thousands of Google Ads and Microsoft Ads accounts, updated 1 June 2026) and Facebook Advertising Benchmarks for 2026 (leads objective, 20 industries). Industry label as LocaliQ writes it: Home & Home Improvement.

FAQ

Common questions

Can Adrails send the value of a completed job to Meta and Google Ads?

Yes. Your server sends a purchase event with value and currency, signed with the server key; Meta receives it as Purchase with the value, and Google Ads receives it when Purchase is the event you chose, with the gclid saved from the click. A value above the per-event limit, 100,000 by default, is held back whole rather than lowered.

Do phone calls count as conversions in Adrails?

They count when your phone system or dispatcher logs the call and your server sends it as a lead event. Add the visitor id when the call came from the site so Adrails credits it to the campaign and ad, and the click ids so Meta and Google Ads receive it.

Can one campaign template serve several service areas?

Yes. A template holds the settings of a campaign, ad set or ad for one channel and level, leaves out the pixel, Page, media and audiences, and never copies a name, dates or status. Apply it in the next area's account, fill in what it left out, and publish paused.

Can each franchisee see only their own numbers?

Yes. A client report covers only the accounts you tick, over at most 92 days, and anyone with the link reads it without an Adrails account. Revoke it from Automations when an owner leaves the network, and the link reads that the report is not available.

Does Adrails run Google Local Services Ads?

No. Google Ads for contractors through Adrails means Search, Performance Max, Display, Demand Gen and Shopping campaigns, once your workspace can connect it. Local Services Ads, which Google prices per lead and is moving into Google Ads as Performance Max campaigns with pay-per-lead goals, are a separate product outside those types; read them from your dispatch report next to the Search figures Adrails shows.