Key takeaways
- Use gross profit, not revenue, in the ROI formula: (gross profit from the source − total source cost) ÷ total source cost.
- Count every cost of a source: fees, agency time, discounts, staff time and the cost of leads that never book.
- Attribution is never perfect; combine tracking numbers with asking every caller, and judge sources over a full season.
- Reviews and referrals often look free but are not; customers check them before they call[1], so the work that earns them belongs in the calculation.
Why revenue-based ROI misleads
Most marketing reports show return on ad spend: revenue from a channel divided by what you spent on it. That number flatters every channel, because revenue is not what you keep. A $10,000 replacement with a 35% gross margin earns you $3,500 to cover overhead and profit; a $400 repair with a 65% gross margin earns $260. A channel that brings replacement leads and one that brings repair leads can have the same revenue per dollar and very different returns. Example figures.
Return on investment by lead source fixes this by using gross profit from the jobs the source produced. It answers the question owners actually have: for every dollar I put into this channel, how many dollars of gross profit come back to pay for the business? Demand is rarely the limit. In 2025, 53% of surveyed homeowners reported difficulty finding pros[2], so a channel that produces calls you cannot answer or book is wasting demand, not lacking it.
The formula
Lead source ROI = (gross profit from jobs attributed to the source − total cost of the source) ÷ total cost of the source.
Gross profit is invoiced revenue minus direct job costs: burdened field labor, materials, subcontractors and permits. If you do not have job-level costs yet, multiply revenue by the gross margin for that service line from your P&L. Our guide to gross margin targets by trade explains how to get those figures.
Total cost of the source is wider than the invoice from the platform. Include:
- Media or platform fees: ad spend, per-lead fees, directory subscriptions, mailer printing and postage.
- Agency or freelancer fees for managing the channel.
- Discounts and coupons offered through the channel.
- Office time to handle the leads, including the leads that never book. A source that sends many unqualified calls costs staff time even when it produces nothing.
- Tracking costs such as call tracking numbers and software, allocated across channels.
Attribution: knowing where each job came from
ROI is only as good as the attribution behind it. No method is perfect, so use two together.
Use a tracking number per channel
Give each paid channel its own call tracking number, and use tagged links for web forms. This records which number or link the customer used.
Ask every new caller
'How did you hear about us?' with a short pick-list in your intake form: search, map listing, a review site, a neighbor, a truck, a mailer, a previous customer. Customers often remember the source that persuaded them, not the number they dialed.
Record the source on the job
Make the source a required field on every new customer job, so revenue and costs can be tied back to it later.
Reconcile monthly
Compare tracking-number data with what callers said. Where they disagree, decide on a rule, such as tracking number first, and apply it consistently.
Separate new and repeat customers
A repeat customer who calls your tracking number from a mailer was not acquired by the mailer. Report new-customer ROI separately.
Answering matters to attribution too. A call that is missed has no source recorded and no job attached, so the channel that produced it looks worse than it is. If calls are answered by Ava, an AI Employee, or by an answering service, make the source question part of the intake script so the answer appears in the call summary.
Example: five sources over one season
| Source | Total cost | New jobs | Revenue | Gross profit | ROI |
|---|---|---|---|---|---|
| Paid search | $24,000 | 160 | $112,000 | $50,400 | 110% |
| Lead marketplace | $18,000 | 90 | $45,000 | $22,500 | 25% |
| Map listing and reviews | $6,000 | 140 | $84,000 | $42,000 | 600% |
| Direct mail to past customers | $9,000 | 60 | $54,000 | $24,300 | 170% |
| Radio | $15,000 | 25 | $40,000 | $14,000 | −7% |
Example reading: the lead marketplace looks busy, with 90 jobs, but after its fees and the office time spent on leads that never booked, it returns only 25 cents of gross profit per dollar. Radio does not cover its cost on new jobs in the season, although the owner may keep a small budget if it supports brand recognition for replacements later in the year. The map listing and review work is the best return by far, because the cost is mostly staff time spent asking customers for reviews and keeping the listing accurate.
Example decision: move part of the radio budget to direct mail to past customers, cap the marketplace at the hours when the office has capacity to call those leads within minutes, and give the review program a named owner.
Reviews and referrals are not free
Owners often mark reviews and referrals as zero-cost sources. They are not. Someone has to ask, follow up and respond to reviews, and the service that earns them costs money. They matter because customers check: 82% of US adults said they at least sometimes read online ratings or reviews before buying something for the first time, and 40% always or almost always did[1].
Source: Pew Research Center, 2016[1]
Show the data
| Item | Value |
|---|---|
| At least sometimes | 82% |
| Always or almost always | 40% |
Keep the program inside the rules. The Federal Trade Commission's rule on reviews prohibits offering compensation or incentives conditioned on a review expressing a particular sentiment[3]. Ask every customer, not only happy ones, and never pay for positive reviews. The cost of a compliant program is staff time and follow-up, which is what goes in the ROI calculation.
Speed changes the return
The same channel produces very different returns depending on how fast you respond. In a study of web-lead handling, firms that tried to contact leads within an hour were nearly seven times as likely to qualify them as firms that waited even an hour longer[4]. A lead marketplace that sells the same lead to several companies rewards whoever calls first. If your office cannot respond within minutes during the hours a channel sends leads, its ROI will be poor however good the leads are.
That is why lead source ROI belongs next to the call conversion funnel. A channel with weak ROI may have a booking problem, not a lead problem.
Decision rules
- Scale: ROI well above your other channels for two consecutive seasons, and you have the capacity to serve more jobs. Check capacity utilization before adding spend.
- Fix: ROI below target but the funnel shows a booking or follow-up problem. Fix the process before cutting the channel.
- Cap: ROI acceptable only at low volume, as with many lead marketplaces. Set a weekly cap that matches the office's ability to call back fast.
- Cut: ROI negative for a full season on new customers, with no clear role in supporting other channels.
- Test: a new channel gets a fixed budget, a tracking number and a review date. No open-ended spend.
Include lifetime value for sources that bring maintenance plan customers. A customer who joins a plan and renews for several years is worth far more than their first invoice. Our guide to membership metrics shows how to estimate it.
A quarterly ROI routine
- Export new-customer jobs for the quarter with source, revenue and service line.
- Apply job-level gross profit, or the service-line gross margin if job costs are not available yet.
- Total every cost per source, including office time spent on leads that did not book.
- Calculate ROI per source and compare it with the same quarter last year.
- Decide for each source: scale, fix, cap, cut or keep testing, and write down the review date.
Share the result with whoever manages marketing and whoever runs the phones. The phone team often knows why a channel underperforms, because they hear the calls it sends.
Common mistakes
Judging channels month by month is the most common error. Seasonal trades see channels swing with the weather, and a channel that looks poor in March may carry September. Judge over a full season and compare with the same season last year. The second error is crediting repeat customers to whatever channel they used to find your number again. The third is ignoring capacity: a channel can only show good ROI if you can deliver the jobs. When the schedule is full, more leads mean longer waits, more cancellations and worse returns everywhere. For trade-specific approaches, our appliance repair marketing guide applies the same method to a business with short jobs and fast decisions, and the technician efficiency guide shows how to make sure the jobs you win are delivered profitably.
Frequently asked questions
What is a good ROI for a marketing channel?
Any positive return covers its own cost, but you also need enough gross profit across all channels to pay overhead and profit. Compare channels with each other and against the return you need, not against a published average.
Should I use revenue or gross profit?
Gross profit. Revenue includes materials and labor you pass through, so revenue-based returns overstate every channel and favor sources that bring low-margin work.
How do I handle a customer who found us through several channels?
Pick a consistent rule, such as the source the customer names or the tracking number they called, and apply it to every job. Perfect attribution is impossible; consistency is what makes comparisons fair.
References
Pew Research Center (2016). Online reviews and ratings (opens in a new tab) ↑
Angi (2025). Angi's 2025 State of Home Spending Report Highlights (opens in a new tab) ↑
Federal Trade Commission (2024). Federal Trade Commission Announces Final Rule Banning Fake Reviews and Testimonials (opens in a new tab) ↑
Harvard Business Review (2011). The Short Life of Online Sales Leads (opens in a new tab) ↑