Offline conversion tracking for home services: estimate booked, job won, with the value
Short answer
Ad platforms only see the form fill. Sending booked estimates, completed estimates and signed jobs with their value teaches them which clicks bring real jobs. Log call outcomes on the contact that holds the click.
Roofers, solar installers, HVAC, remodelers, plumbers. If you run paid ads for a home-services business, your funnel probably looks like this: someone fills in a form or calls, you book an estimate, the estimate happens, and a few days later, maybe, they sign a job.
Every one of those steps happens away from the website. The ad platform sees the form and nothing else. So let me walk through what changes when you send the later steps back.
First, what's different about home services. The value per sale is high and varies enormously. A small repair and a full re-roof are the same form fill and wildly different revenue. That makes value the most valuable thing you can send, and most businesses send none.
Second, the cycle is short enough to work. A signed job typically follows an estimate by days or weeks, which is inside every platform's window. So you can send the real sale, not just an earlier proxy.
Third, the leads are noisy. Lots of price-shoppers, wrong numbers, and out-of-area enquiries. Sending later stages filters most of them without you doing anything clever.
What to send, in order of usefulness.
Estimate booked: fast and high volume. It removes people who never answer.
Estimate completed: a real prospect who let you into their home or onto their roof. A much better signal.
Job won, with the value: the truest signal. It teaches the platform which clicks bring the big jobs.
Job paid: the profit check, useful when deposits and final payments differ.
A made-up example. 200 form fills a month. 80 estimates booked. 55 estimates completed. 20 jobs won, averaging some thousands each. If the ads only see 200 forms, they chase cheap leads. If the 20 wins come back with their values, the platform learns to find the kind of person who signs a big job, and campaigns that bring small repairs look as small as they are.
Some practical points that matter in this trade. Phone calls are a big source of leads, so make sure a call outcome ends up on the same contact as the ad click. Storm-season spikes can distort a campaign, so judge over a longer window. And the crew or the office needs one status they update the same day: estimate done, job signed, job paid.
Two things unique to home services. First, seasonality and territory. Demand for roofing, HVAC and solar swings with weather and incentives, so judge a campaign over a full cycle, not a bad week. And leads outside your service area are common, so a "qualified" stage that includes "in our area" removes a lot of noise.
Second, call handling. Many of your leads call rather than fill in a form. Make sure the call outcome (answered, estimate booked) is logged against the same contact that carries the ad click. If your phone system creates its own contact, the outcome lands on someone with no click.
A simple weekly review that works: every Monday, look at last week's booked estimates, completed estimates and signed jobs, by campaign. Twenty minutes, and it tells you which campaigns bring jobs, not just leads.
Do you send job values back to your ads today?
DataCops in short
For this question: DataCops sends booked estimate, completed estimate and signed job with their value to the platform that brought the click.
DataCops is a tool that makes the ads learn from real sales: it sends booked, showed, won and paid stages from your CRM back to your ad platforms, gives every visit a bot verdict with a Real people only switch per platform, warms up new campaigns with your existing customers, and logs every send. It is not an attribution report.
How DataCops does it
- The sale after the form. HighLevel natively (lead, booked, showed, won with value, paid; cancelled, no-show and lost are never sent), any other CRM through a private webhook, matched to the click by click ID or hashed email and phone.
- The click is kept on the server. Click IDs are stored for up to 90 days, so a deal that closes weeks later still finds its click.
- Real people only. Every visit gets a bot verdict against 360+ billion IPs and 350+ monitoring points, with a Real people only switch per ad platform, off by default. CRM events carry no bot flag.
- Counted once, logged every time. Pixel and server events share an event ID, and a delivery log shows each send as sent, held, skipped or failed, with the reason.
- One script, one DNS record. Collection runs on your own domain; with DNS on Cloudflare, the free Worker reads the click at the edge before the page loads.
Best for: ad-funded businesses whose sales close in a CRM or on a call: clinics, home services, agencies, B2B and lead gen.
Ads Warmup: tell the ads who pays
Ads Warmup, DataCops' flagship feature, sends customers you already have to Meta, Google Ads and TikTok before a new campaign spends: upload a CSV (only email is required, up to 20,000 rows), see a 0 to 10 match score per person, pick the event, and send. Rows are dated when you send, and Google Ads credits only people who clicked a Google ad. Preview is free; sending needs a paid plan. Check your own consent basis for the list first. See Ads Warmup.
Ways to do this job
| Option | Best for |
|---|---|
| DataCops | CRM stages to Meta and Google Ads, with a bot verdict and a delivery log |
| Zapier or Make | One simple CRM-to-ad flow you build and maintain |
| Direct API upload | Teams with an engineer |
| Manual CSV upload | Occasional batches |
When not to use DataCops
- You want a reporting dashboard. DataCops cleans and sends what goes into your ads. It is not a multi-touch reporting layer.
- Your sales never leave one store checkout. If everything happens in one checkout, the platform's own pixel plus server events may be enough.
Sources and further reading
More on this: Home services offline conversions, and the complete guide to offline conversion tracking.
If you only send one thing, send the value of the signed job. It's the difference between finding leads and finding customers worth having.