Marketing attribution for a trade business answers one question: which marketing produced the jobs we completed and got paid for? Not the clicks, not the calls, the jobs. The tools that sell attribution mostly count what happens on a screen. The answer you want sits in your schedule and your invoices, and the work is making sure every lead carries its source all the way there.
This hub covers how that chain works, where it breaks for each channel, and the numbers to keep. The guides below go deeper on the GA4 setup for contractors and on calculating customer acquisition cost from completed jobs.
The attribution chain
Every paid job passes through five records. Attribution works when each one keeps the campaign of the one before it.
| Link | What happens | What must be recorded | Who usually breaks it |
|---|---|---|---|
| 1. Touch | Someone sees an ad, a mailer, a truck, a review | Nothing yet; it's invisible until they act | No one; this is normal |
| 2. Lead | They call, send a form, book online or message | The channel and campaign: tracking number, UTM tags, click id, or the lead service it came from | Forms that drop UTM tags; one main number on everything |
| 3. Booked job | The office schedules the work | The lead's campaign carried onto the job | CSRs booking from scratch instead of from the lead |
| 4. Completed job | The work is done and invoiced | Revenue before tax, on the job that kept the campaign | Jobs split or rebooked without the campaign |
| 5. Collected | The customer pays | Payment against that invoice | Rarely; but refunds and write-offs should flow back |
Ad platforms and web analytics live in links 1 and 2. Google Ads, for instance, credits conversions with data-driven or last-click models, and has retired first-click, linear, time-decay and position-based models.1 GA4 offers data-driven and last-click reporting models for its own key events.2 Both are useful for steering campaigns inside the platform. Neither can see a call from a number painted on a van, or the replacement sale three weeks after the form fill.
Where it breaks, channel by channel
| Channel | What carries the source | Common failure | Fix |
|---|---|---|---|
| Google Ads, Meta ads | Click id and UTM tags on the form; a tracking number on the ad | Booking tool on another domain drops the click id | Pass the click id through, or capture it before the redirect |
| Local Services Ads, lead services | The lead arrives from the service itself | Leads retyped by hand with no source | Bring leads into one inbox where the source is set automatically |
| Website and SEO | UTM tags on links you control; organic landing page | Google Business Profile link untagged, counted as direct | Tag the profile's website link |
| Direct mail, trucks, yard signs | A tracking number or short URL per drop | One main number on every piece | One number per campaign; retire it after the season |
| Referrals and repeat | The referrer on the lead; the customer's history | "Repeat" left blank, so it looks unknown | Make lead source a required field when booking |
Calls deserve a separate note. Google can count calls from its ads and from forwarding numbers on your site, but for a tap on a number on your mobile site it tracks the click, not the call.3 A tracking number tied to a campaign, with the booked job linked to the call, is what turns a ring into a job with a source.
The minimum setup
- A separate tracking number for each paid channel and each mail drop
- UTM tags on every link you control, in lowercase, from one naming sheet
- A website form that saves UTM tags and click ids on the lead, not just in analytics
- A required lead source when the office books a job by hand
- Jobs booked from the lead or the call, so the campaign carries over
- A quarterly review on completed revenue by channel, with unknowns shown
Click-based tools vs job-based attribution
| Click-based (ad platforms, web analytics) | Job-based (your field service records) | |
|---|---|---|
| What it counts | Clicks, sessions, form fills, call taps | Leads, booked jobs, completed jobs, invoiced revenue |
| Sees phone calls from mail and trucks | No | Yes, by tracking number |
| Sees repeat and referral customers | Rarely | Yes, from customer history |
| Knows what the job paid | Only if you send it back | Yes, from the invoice |
| Best for | Steering bids, keywords and pages | Deciding budgets between channels |
You need both. The ad platform needs to know which clicks became jobs so it can bid better; that's what offline conversion tracking does. You need the job records to decide where next quarter's money goes. Marketing platforms such as TradesForce approach it from the other side: once connected, they can record ad spend in TradesWork so cost sits next to the booked jobs and revenue instead of in a separate dashboard.
How to measure it from your jobs
Four numbers, per channel, each quarter.
Metric
Completed revenue by channel
Invoiced revenue from jobs whose lead came from each channel. The headline number for budget decisions.
Sum of completed job revenue (before tax) where job campaign's channel = X
Where the numbers come from: Jobs that kept the lead's campaign, completed in the period
Metric
Cost per completed job
What each channel spent for every job it produced that was finished and invoiced.
Channel spend ÷ completed jobs from that channel
Where the numbers come from: Spend from statements; completed jobs from the channel report. No spend means no figure, shown as a dash
Metric
Unattributed share
The share of completed jobs with no known source. The honesty check on every other number here.
Completed jobs with no campaign or channel ÷ all completed jobs × 100
Where the numbers come from: Jobs where the lead source is blank or unknown
If the unattributed share is high, every channel's numbers are understated by different amounts, and comparisons mislead. Fix the gaps in the chain first. The lead source attribution glossary entry is a one-paragraph version to share with your CSRs. Our post on marketing with your own job history covers the other half: using those same records to decide who to market to.
The per-channel numbers come from reports and dashboards, where each figure opens to the jobs behind it.
Free download · ExcelField Service KPI ScorecardTrack the 12 numbers that run a service business, week by week, with formulas already built in.Footnotes
-
Google Ads Help, "About attribution models." https://support.google.com/google-ads/answer/6259715 ↩
-
Google Analytics Help, "[GA4] Select attribution settings." https://support.google.com/analytics/answer/10596866 ↩
-
Google Ads Help, "About phone call conversion tracking." https://support.google.com/google-ads/answer/6100664 ↩