TL;DR
Self-reported attribution, GA4 last-non-direct click, incrementality tests, or MMM — which fits depends on your monthly lead volume and ad spend, not agency p
→ See how this applies to your business (free 30-min call)The best marketing attribution method for a US service business is the one your lead volume can actually support. Under ~150 leads/month: self-reported attribution ("How did you hear about us?") plus call tracking with dynamic number insertion, sanity-checked with geo holdout tests. At 150–600 leads/month: add last-non-direct click in GA4 with offline conversion imports pushed back into Google Ads. Above 600 leads/month and $50,000+ in monthly ad spend: incrementality testing and lightweight media mix modeling. Multi-touch attribution — the method most agencies lead with — is the wrong fit for nearly every service business under $10M in revenue, because the tracking it depends on broke in 2021 and the statistics it depends on need volume you don't have.
The Five Methods, Ranked By What They Actually Cost You
Run The Volume Math Before You Buy A Model
This is the number nobody sells you, so here it is. To detect a 20% lift in conversions between a treatment market and a control market at 95% confidence and 80% power, you need roughly 430 conversions in each group — about 860 total. At 40 leads/month, that is an 11-month test per arm. You will change your offer, your budget, and possibly your agency before it finishes.
Loosen the bar and the math opens up fast. To detect a 50% lift, you need roughly 80 conversions per group. At 40 leads/month split across two matched metros, that's a readable test in about 8–10 weeks.
The practical takeaway: small service businesses can only measure *big* effects. Chasing 10% channel-level precision at 40 leads/month is arithmetic you cannot win. Test whether a channel works at all, not whether it works 14% better than the other one.
If your monthly lead count is smaller than the sample size your test requires, you are not doing attribution. You are doing astrology with a dashboard.
The Phone Call Problem No Model Solves On Its Own
Attribution platforms measure the *lead*. Service businesses get paid on the *job*. Between those two events sits a 20–40% no-show rate, a quoting process, and a close rate that varies by channel by 2–3x.
Real pattern we see repeatedly: a Meta lead form campaign produces leads at $28 while Google Search produces them at $95. Track it to revenue and Meta closes at 9% for an average ticket of $1,400, while Search closes at 34% at $2,600. Cost per *dollar of revenue* is $0.22 for Meta and $0.11 for Search. The channel that looked 3.4x cheaper is 2x more expensive.
Fixing this requires closing the loop, not buying a better model:
That last step is where the money is. Our lead generation engagements typically see blended cost per booked job drop 25–40% within 90 days of switching bidding targets from lead volume to closed revenue — with zero change to ad creative or budget. Plug your own numbers into the ROI calculator before you assume this applies to you.
Why The Tracking You're Comparing Is Already Broken
Attribution vendors rarely mention that the substrate degraded years ago:
Server-side tagging recovers a meaningful slice of this. Budget $50–$150/month in Google Cloud costs plus a one-time $3,000–$8,000 implementation. It's worth it above roughly $25,000/month in ad spend and hard to justify below $10,000.
When Attribution Isn't Worth It — And Who Should Not Buy This
Plainly, because this costs us work:
Under ~30 leads per month, skip formal attribution entirely. At that volume, a spreadsheet with two columns — source and closed revenue — beats any $2,000/month platform. Month-to-month swings of ±35% are pure noise at n=30, and a dashboard will encourage you to react to every one of them. Spend the money on more leads instead.
If you have one channel, don't attribute it. Businesses running only Google Local Services Ads already know where every lead came from. Adding GA4 goals, DNI, and a modeling layer buys you nothing but a report to read.
If your sales cycle exceeds 6 months, expect attribution to be structurally wrong. Commercial HVAC, legal matters, and B2B facilities contracts routinely run 4–14 months from first touch to signed work. Every ad platform's default window is 7–30 days. You will attribute to the last coupon-code search and miss the trade show 9 months earlier that actually caused it.
Attribution will not fix a demand problem, a pricing problem, or a close-rate problem. If your CSRs answer 62% of inbound calls, no model will make the other 38% appear. We've walked into accounts where a $2,400/month attribution stack was measuring a funnel that was losing $18,000/month at the phone. Fix the phone.
Failure modes to expect even when it works:
The 30-Day Build Order That Actually Works
Week 1: make source a required field on every form and every call script. Week 2: install call tracking with DNI and pass the click ID into your CRM. Week 3: stamp job status and revenue on every closed record, then start weekly offline conversion uploads. Week 4: set one 6-week geo holdout on your largest-spend channel and leave it alone until it ends.
That sequence costs under $300/month in tooling for most operators and outperforms a $4,000/month attribution platform sitting on dirty CRM data. If you want a second set of eyes on which stage you're actually at, our free marketing audit checks the tracking layer before it recommends spend, and the glossary defines every term above if you're briefing a team on it.
The honest summary: measure incrementality when you can afford the test, measure self-reported source always, and treat every platform-reported ROAS number as a vendor's opinion about its own performance.
Frequently Asked Questions
What is the best marketing attribution method for a small business?
Under roughly 150 leads per month, self-reported attribution — a required "How did you hear about us?" field — plus call tracking with dynamic number insertion. Geo holdout tests sanity-check the results. Statistical models need lead volume that small businesses do not generate, so simpler methods stay more accurate.
Why doesn't multi-touch attribution work anymore?
Multi-touch attribution depends on cross-site tracking that broke in 2021 when Apple's App Tracking Transparency and browser third-party cookie restrictions took effect. It also requires large conversion volume for its statistical weighting to be stable. Most service businesses under $10M in revenue lack both the tracking coverage and the volume.
How many leads do you need before incrementality testing is worth it?
Roughly 600 leads per month and $50,000 or more in monthly ad spend. Below that, holdout groups are too small to detect lift with statistical confidence, and the revenue you pause during a test costs more than the measurement insight is worth. Use self-reported attribution instead.
Is self-reported attribution accurate?
It is directionally accurate but biased toward the last memorable touchpoint, and customers often credit brand channels over the ads that reached them first. Treat it as a channel-level signal, not exact numbers. Pairing it with call tracking and geo holdout tests corrects most of the bias.
Free Weekly Briefing
One AI Marketing Tactic.
Every Tuesday. Free.
What's actually working across our client accounts right now — ROAS moves, follow-up sequences, creative angles. The stuff that isn't in any blog post yet.
No spam. Unsubscribe anytime. 1,200+ business owners already in.