Case Studies

What does fixing conversion tracking look like in practice?

Real projects from my client work: the problem each business had, what I built, and how the technique works. Client names are kept private.

ServiceM8CallRailServer-Side GTMOffline Conversions

How does a Sydney plumber finally see which Google Ads clicks turn into paid jobs?

ServiceM8 + CallRail offline conversions to Google Ads, built server-side with Stape and no Zapier. Every booked job and every paid invoice now goes back to Google Ads, matched to the original ad click, including jobs the team creates while the customer is still on the phone.

November 5, 2026Read
ServiceM8Offline ConversionsGoogle AdsSmart Bidding

How did an Australian roofing company learn which Google Ads leads became paying jobs?

The business could see leads in Google Ads but had no idea which ones turned into paying jobs. I built a ServiceM8 to Google Ads offline conversion pipeline, so every job marked as a sale flows back to the right ad click and Smart Bidding optimizes on real revenue.

October 27, 2026Read
Call TrackingGoHighLevelMeta CAPIGoogle Ads

How did a UK dental implant clinic get its Google Ads calls counted as conversions?

The clinic was getting phone calls from Google Ads, but none of them counted as conversions. I set up dynamic number insertion, sent qualified calls into Google Ads, and connected the landing page form into GoHighLevel with Meta CAPI on top.

October 27, 2026Read
Cross-Domain TrackingGA4Google AdsBookings

How did a tourism operator fix broken attribution on an external booking platform?

Bookings happened on an external booking platform on another domain, so attribution broke at the handoff. I built cross-domain attribution so bookings now report the correct ad source in GA4 and Google Ads.

October 27, 2026Read

Have a tracking problem like these?

Tell me what is not adding up in your ad accounts and I will tell you where I would start.

Get in touch