Attribution Model for Contractors: Why Your Ads Look Better Than They Actually Perform
An attribution model decides which marketing touchpoint gets credit for a job. Most contractors run last click attribution by default, which hands full credit to the final interaction before the form fill. Service journeys run several days across search, reviews and phone calls, so last click overstates bottom funnel ads and hides the touchpoints that actually moved the homeowner forward.
What is an attribution model, and why does the default one mislead contractors?
An attribution model is a method for deciding which interactions in a customer's journey deserve credit for a conversion. As Stape explains in its breakdown of attribution models, the Last Interaction model gives full credit to the last touchpoint before the conversion, assuming it was the deciding factor in the purchase. For an ecommerce store selling a phone case in one session, that assumption mostly holds.
It does not hold for a roof replacement. The homeowner sees a Google Ad on Tuesday, reads your Google reviews on Thursday, asks a neighbor on Saturday, compares two competitors on Sunday, and calls you the following Wednesday after searching your business name directly. Last touch credits the branded search. The branded search did not create the job. It was just the door the homeowner walked through after the work was already done.
TruLata builds marketing data and attribution tooling for local service businesses: contractors, plumbers, electricians, roofers, HVAC companies and the trades around them. The core principle is simple and unfashionable: lead counts come from your own forms and phone records, not from the ad platform's self reported conversion column.
The ecommerce assumption baked into every default setting
Analytics platforms were designed around same session purchase behavior. The measurement window, the default model, the conversion definition: all of it assumes a short, contained path. Quantum Metric's overview of attribution notes that the distribution of credit directly shapes how marketing channels get evaluated and funded, and that a channel looking ineffective under one model may look essential under another. Contractors inherit those defaults and then make budget decisions on top of them.
How long is the real sales cycle for a service business?
Emergency work closes fast. A burst pipe at 11pm is a same hour decision, and for that slice of demand last touch is defensible. Everything else is not. Planned work (a panel upgrade, a bathroom remodel, a full HVAC system, a re-roof) involves comparison, quotes, and usually a spouse. That stretches the decision across days, frequently a week or two.
Supermetrics makes the same point about longer cycles in a different market, noting that last click may credit a single interaction that occurred after months of engagement, missing the touchpoints that educated and influenced the buyer. Shorten "months" to "days" and you have the contractor version of the problem exactly.
The practical consequence: if your conversion window is shorter than your sales cycle, ads that started jobs will show zero conversions. You will cut them. Your cost per lead will get worse, and the report will not tell you why. This is the mechanism behind the pattern described in PPC Management: Why Your Cost Per Lead Is Double What It Should Be.
Three symptoms that your attribution model is lying to you
- Branded search looks like your best campaign. Branded terms almost always win under last touch. They rarely create demand.
- Platform conversions exceed your actual lead count. If Google Ads reports 40 conversions and your form inbox shows 26 submissions, the gap is view through credit and modeling, not jobs.
- Cutting a "poor" campaign makes total leads drop more than that campaign was producing. Classic sign you cut an awareness touchpoint that was feeding everything downstream.
Which attribution model should contractors actually use?
There is no single correct model. HockeyStack's comparison notes that single touch models like first click or last click work well for simpler journeys with fewer channels and direct paths. Contractor journeys are neither simple nor direct, which is why multi touch attribution is the right family. The question is which variant.
Position based (U shaped) for most planned work
Give roughly 40 percent of credit to the first touch, 40 percent to the last, and split the remaining 20 percent across the middle. This matches how contractor demand actually forms: something created awareness, something closed the decision, and the middle was reassurance. It is defensible, easy to explain to anyone in your office, and it stops branded search from eating the whole budget.
Time decay for shorter, urgency driven categories
If your average job closes in three to five days and most demand is semi urgent (water heater, AC failure in July), weight recent touchpoints more heavily. Credit decays as you move back in time. This preserves the reality that the last few days matter most without zeroing out the first click entirely.
Custom rules when your channels do specific jobs
Stape describes the custom approach as one where marketers set rules for how credit is distributed, adjusted to a business's specific goals. For contractors this often means treating a review page visit or a Google Business Profile interaction as a consideration touchpoint with real weight, because that is where the trust decision happens. Combine that with search visibility: rankings, queries and reviews and the consideration stage stops being invisible.
How do you actually set up attribution tracking for service businesses?
Model choice matters less than data quality. A sophisticated model on bad inputs produces confident nonsense. Work in this order.
1. Count leads from your own forms and phones
Your form submissions and tracked calls are the ground truth. Platform conversion counts are estimates shaped by modeling and attribution windows. Start with lead tracking counted from your own forms, then reconcile platform numbers against it. When they disagree, your forms win.
2. Capture the first touch and hold it
Store UTM parameters, referrer and landing page in a first touch cookie with a window that exceeds your sales cycle, then write those fields into the form submission alongside the last touch values. Every lead should arrive carrying both ends of its journey. Without this, multi touch attribution is not possible regardless of which vendor you use.
3. Extend the conversion window past your close time
If jobs close in 5 to 14 days, a 7 day window truncates half your data. Set the window to at least twice your average cycle and check it against reality quarterly. Pair that with Google Ads reporting with a daily account watch so window changes and campaign shifts are visible the day they happen.
4. Track calls with dynamic numbers
Phone is still the decision channel in the trades. If your call tracking does not swap numbers by source, every call collapses into "direct" and your model loses the touchpoint that closed the job.
5. Close the loop with job value
Leads are not revenue. Push closed job value back against the lead record so you can score channels by booked work rather than form fills. A channel producing many cheap leads that never close is not a good channel. That accounting is covered in How to Calculate Marketing ROI for Service Businesses.
Where does attribution stop being enough?
Even a well built multi touch model has limits. Funnel's analysis argues that attribution modeling alone only shows part of the picture, and recommends triangulation: combining attribution with approaches like incrementality testing rather than trusting one method. For a contractor, the practical version of incrementality testing is cheap and useful. Pause one campaign or one geography for two weeks and watch total lead volume, not just that campaign's reported conversions. If total volume holds, the campaign was harvesting demand somebody else created. If it drops by more than the campaign's own numbers, it was creating demand across the board.
Run that test one channel at a time, outside your peak season, with a long enough window to cover the sales cycle. Two or three of these a year will teach you more than any model change.
The touchpoints attribution misses entirely
Referrals, truck wraps, yard signs and answer engine mentions rarely leave a trackable parameter. AI assistants in particular now recommend local businesses by name with no click at all, which is why AI visibility tracking across four answer engines belongs next to your paid reporting. Ask on the intake form how the customer heard about you and store the answer. Self reported attribution is imperfect, but it is the only signal you will get for the untracked half of your pipeline.
What does a working attribution setup look like day to day?
It looks like one screen where lead counts come from your forms, ad spend is current, and the freshness timestamp tells you when each number last updated. Live marketing data, refreshed when you open it matters here because attribution decisions made on a three day old export are decisions made about last week. You should be able to answer, without exporting anything: how many real leads came in this week, which campaigns touched them first, which touched them last, and what closed.
See the model applied to a specific timeline in Attribution Modeling for Contractors: Credit the Right Channel When Leads Take 8 Days to Close.
Stop funding the wrong half of your budget
If your ads look better in the platform than they feel in your bank account, the gap is almost always your attribution model. Open the live demo and see leads counted from your own forms, first and last touch stored on every record, and honest freshness on every number. Take the live demo and compare what TruLata reports against what your ad accounts claim this month.





