Every platform you advertise on has a dashboard, and every dashboard is confident. Google Ads reports its conversions. Meta reports its conversions. Yelp reports leads, Thumbtack reports contacts. Add them up and the total is comfortably larger than the number of people who actually called you.
Nobody is lying. They're each taking full credit for the same customer, because none of them can see the others. The result is a business owner with four sources of truth and no way to answer the only question that matters: if I cut this, what stops?
01Last click is a bad witness for local
The way most attribution works is simple to the point of being wrong. Whatever the customer touched last gets the credit.
For a home services business, the last touch is almost always the same thing: they searched your business name and clicked. So your branded search campaign looks phenomenal. Cost per lead of four dollars, conversion rate through the roof. It's the best-performing line in the account and it's mostly taking credit for demand something else created.
The actual path looked more like this. A garage door stops working. The homeowner remembers seeing your van in the neighborhood. They check Google, see you in the map pack with 200 reviews, glance at your site on their phone while standing in the driveway, then call.
Which channel gets that? Last click says branded search. Honestly, the van did most of it, the reviews closed it, and the site's job was to not be the reason they backed out.
"Branded search is where demand goes to get counted. It's rarely where demand gets created — and cutting the thing that created it will make branded search look great right up until the phone stops."
02A number per platform
The most reliable attribution in a phone-driven business isn't a pixel. It's a phone number.
Give each platform its own tracking number that forwards to your real line. Yelp gets one, Thumbtack gets one, Meta gets one, print and vehicle wraps get one. When a call comes in, the routing tells you where it came from before anyone says hello. No memory, no guessing, no "I think I found you on Google?"
Use dynamic insertion on your own website, not a hard-coded swap. The number a visitor sees on your site should change based on how they arrived, while the underlying number in your listings stays put.
Which brings up the trap. Do not replace your real business number with a tracking number across your Google Business Profile, your directory listings, or your site's schema. Consistent name, address and phone across the web is one of the inputs to local prominence. A tracking number pasted everywhere fractures it and can cost you the rankings the ads are trying to supplement. Your real number stays primary everywhere it's published. Tracking numbers go on the platforms and campaigns you're measuring.
03The number you should actually be watching
Cost per lead is the metric every dashboard shows you and it's close to useless on its own.
Two platforms deliver leads at $40 each. One of them sends people who booked and paid. The other sends price shoppers who wanted a number over the phone and were never going to hire anyone. Identical cost per lead. One is profitable and the other is a subscription to being annoyed.
What you want is cost per booked job, which means somebody has to close the loop between the lead and the outcome. That's an operational habit, not a software feature — every lead gets an outcome recorded: booked, quoted and lost, spam, wrong service area.
A month of that discipline is worth more than a year of dashboards. It reliably turns up things like: the platform with the worst cost per lead has the best cost per job, because the leads arrive further along and closer to buying.
Most attribution projects stall because they try to do everything at once. The order that works: one tracking number per platform forwarding to the real line; call recording or a call log you can actually review; an outcome field on every lead; dynamic numbers on the site; conversion tracking wired back into the ad platforms. Step one alone answers most of the question. The last two are refinements, and they're where people usually start.
04What "good" looks like after ninety days
Three months in, with the outcome field filled in consistently, you should be able to say something like this out loud without hedging:
Google Search brings the emergency jobs and the highest ticket, at a cost per booked job we're happy with. Thumbtack is cheap per lead and expensive per job, and half of it is out of our service area. Meta doesn't produce direct calls but branded searches climb the week we run it. Yelp pays for itself in one specific service and nothing else.
That's four decisions you can act on: scale, cap or drop, keep and stop judging on last click, narrow to what works.
None of it required better software. It required one number per platform and someone writing down what happened to each lead.
Where this lands
Most local businesses aren't wasting money because they picked the wrong platform. They're wasting it because they can't tell which platform is which, so budget gets moved on hunches and whatever the last dashboard said.
Attribution isn't about precision to the dollar. You will never get there and you don't need to. You need to know which channel to double and which to cut — and that's answerable in a quarter with tracking numbers and a spreadsheet.
We don't mark up ad spend, so we're indifferent to which channel wins. That tends to make this conversation easier.
Want to know where your leads actually come from?
Google Ads from $499/month, with call and form conversion tracking set up properly. Ad spend never marked up.