What it actually is
Normal Google Ads tracking stops at the form fill. The moment a homeowner submits your contact form, Google records a "conversion" and moves on — it never finds out what happened next.
Offline conversion tracking continues the story. When that lead books an inspection or signs a contract, you send the outcome back to Google. Now the platform can connect actual dollars to the exact click, keyword, and ad that produced them — instead of treating every form fill as equal. That's the whole game: telling Google what a good lead looks like, in hindsight.
Why roofers need it more than most
Three things make roofing a textbook case. The sales cycle is long — days or weeks from click to signed contract. The ticket is big — a replacement is five figures. And the quality spread is enormous — a renter wanting a $200 patch and an owner needing a $25,000 replacement look identical at the form.
The longer and more valuable the journey, the more the algorithm needs to be told the outcome — otherwise it optimizes for the cheap, easy form fills. (That's the deeper "why your leads are tire-kickers" story, covered here.)
GCLID vs. Enhanced Conversions for Leads
The older method captured a GCLID — a click ID Google appends to your ad's URL — stored it in a hidden form field, passed it into a CRM, and uploaded it back when the job sold. It works, but it's fragile: cookie restrictions and cross-device behavior (clicking on a phone, signing on a laptop) often strip the ID and break attribution.
The newer method, Enhanced Conversions for Leads, matches your sold jobs back to ad clicks using hashed first-party data — the email and phone you already collect, scrambled with SHA256 before it leaves the browser. It's more durable, holds up over long sales cycles, and is privacy-safe.
What it takes to set up
Done by hand, the checklist looks like this:
- Turn on auto-tagging so clicks carry an ID you can match later.
- Install the Google tag and enable Enhanced Conversions for Leads on your site, mapped to your form fields.
- Capture the click and first-party data at submission — email and phone, hashed.
- Store the lead and upload the outcome when its status changes to booked or sold, with the dollar value.
- Normalize the data — lowercase email, phone in E.164 format — or match rates suffer.
- Run an observation period (about two to four weeks) before you trust the data, then switch bidding from volume to value.
The honest catch
That's a website tag, a CRM, a Zapier or Data Manager connection, data normalization, and ongoing maintenance — plus a June 15 migration to stay ahead of. Most roofing companies don't have a marketing hire to build it and keep it healthy. And because a broken pipe fails quietly, you can spend months optimizing toward nothing without realizing it.
How WonFlo handles it
WonFlo runs the whole loop for you. It captures the ad click at the funnel, verifies and scores the lead, and reports outcomes back to Google on the Data Manager API automatically — both the early "qualified lead" signal that feeds the algorithm and the booked/sold value that teaches it what a job is worth. No tag wiring, no Zapier, no CRM project, nothing to migrate before June 15.
See what a booked job really costs you
Before you optimize anything, know your real number. The calculator shows your cost per booked job — not the vanity cost-per-lead — in about 30 seconds.
Quick answers
What's the difference between offline conversion import and Enhanced Conversions for Leads?+
What changes on June 15, 2026?+
Do I need a CRM to do this?+
Is this worth it for a small roofing company?+
Keep reading
If you haven't yet, start with why your Google Ads keep finding tire-kickers — the bigger picture this fix slots into.
Offline conversion tracking is the difference between ads that get cheaper over time and ads that just get more expensive. The mechanism isn't the hard part — keeping it running is.
If you'd rather not build and babysit the pipe, see the funnel that does it for you.
— The WonFlo team
Try the funnel →