By Ben Millar · Technical lead
How to calculate marketing ROI by lead source
To calculate marketing ROI by lead source, match a source's acquisition cost to the gross profit from the jobs you attribute to it. Subtract acquisition cost from that gross profit, divide by acquisition cost, and multiply by 100. Define the period and attribution rule before combining the inputs.
On this page
Keep the calculation traceable
Build the analysis so another person can reproduce it from the same records. Label the source, period, attribution method and costs before calculating a return. If a key input is missing, show the gap instead of treating it as zero. Unknown costs can make an apparently precise ROI misleading.
For an earlier-stage acquisition measure, see cost per booked job. It can help describe the booking process, while ROI needs the economics of the attributed work. Keep those measures separate and connect them through clear job records. This approach lets you distinguish a channel that attracts inquiries from one that produces completed work with enough contribution to support the business.
Create a source-level worksheet
Use one row for each source and a consistent set of columns: acquisition spend, eligible leads, booked jobs, completed jobs, attributed revenue, included direct costs and resulting gross profit. Some columns describe the sales process; others belong in the ROI calculation.
Record where each input came from. Revenue records do not automatically contain advertising bills or all delivery costs. Keep an unknown source category rather than forcing every job into a channel. The marketing ROI guide explains the broader decision. A worksheet with honest gaps is more useful than a precise-looking return built from assumptions nobody can trace.
Choose period reporting or a lead cohort
Period reporting compares activity within calendar dates. A lead cohort follows inquiries acquired during a defined period through later booking and completion. Either can be useful, but they answer different questions. Label which approach you are using.
A roof replacement inquiry received in March may become completed work in May. Comparing only March advertising cost with March completed revenue can miss that connection. Conversely, May revenue may include work acquired earlier. For a cohort review, allow time for jobs to mature and keep incomplete work visible. Do not describe pending estimates as realized return.
Apply one attribution policy
Decide how a job receives its lead source. You might use the recorded initial source for an acquisition review or another documented approach that fits your records. Keep that choice consistent across channels and periods.
A customer may see an advertisement, receive a neighbor's recommendation and later call directly. Assigning the full job to every touchpoint overstates total attributed revenue. Separate attribution uncertainty from arithmetic accuracy. Review blank or inconsistent source entries with the office team, and document any corrections. If you change your rule, flag the break in the series rather than treating the resulting movement as a marketing improvement.
Work through the calculation
Suppose a hypothetical source costs $2,000 for the selected group of leads. Their completed jobs produce $10,000 of revenue and $6,000 of included direct costs. Gross profit is $4,000. Marketing contribution after acquisition is $4,000 minus $2,000, or $2,000.
Divide that $2,000 contribution by the $2,000 acquisition cost and multiply by 100. ROI is 100% under this definition. The calculation excludes any remaining overhead. The revenue-to-spend ratio is five to one, but that is a different measure. If acquisition spend is zero, this ROI formula is undefined; report the dollars and explain the source instead.
Include costs without counting them twice
Acquisition cost may include media spend, agency fees, campaign-specific creative and other costs under your policy. Allocate shared costs using a written method. If a fee supports several channels, do not charge the entire amount to each channel and then add the totals.
Likewise, keep acquisition costs separate from direct delivery costs if the formula subtracts them afterward. Otherwise the same expense may be deducted twice. Use the profit per job calculator to check delivery economics for a sample job. Then reconcile the worksheet's total revenue and costs to the records used for that period or cohort.
Compare sources with their operating context
A source supplying small plumbing repairs and one supplying larger installations may differ in close time, labor needs and payment timing. Compare completed-job contribution alongside job count and available capacity. A percentage alone can favor a tiny channel with little room to grow.
Investigate missing data before changing budgets. A source may look weak because costs are current but jobs are unfinished, or strong because job costs are late. Record the action you take, the person responsible and when the next cohort can be assessed. This calculation supports a decision; it does not establish that a campaign caused every job attributed to it.
Use your Housecall Pro records in the review
ServicePro IQ adds business reports built from your Housecall Pro data. The Revenue page shows total and year-to-date revenue, a running-total line against the revenue goal, revenue by lead source, the job list and cancellations. Those details give you records to review alongside your own operating calculations.
Reports can be filtered by date range, by day, week, month or year, and by tag, tag combination, lead source and employee. Filters stay in place as you move between report pages. Use the same period and selection when comparing related figures. A report filter does not by itself establish that two groups performed equivalent work.
The Housecall Pro integration requires a Housecall Pro MAX account. ServicePro IQ reads your data without changing anything in Housecall Pro. Job and revenue figures refresh once an hour, at 20 minutes past the hour. After connection, your contact lets you know when reports are ready. See pricing and start the free 7-day trial with a specific set of jobs you want to understand.
Frequently asked questions
Does ServicePro IQ calculate this exact formula?
The approved report details establish revenue by lead source and daily marketing-spend refresh where connected. Use the formula here with the necessary cost and attribution records; do not assume a particular automated ROI calculation.
Should repeat jobs stay with the original source?
Choose a policy that matches your question. An acquisition-cohort review can track later work from acquired customers, while a current-demand review may use a different approach. Label the policy and avoid double counting.
How should refunds affect the calculation?
Use a consistent net revenue treatment and match adjustments to the relevant source or cohort where possible. Explain material timing differences so one period does not appear stronger simply because its credits arrived later.
Give your source ROI calculation firmer inputs
Start your marketing ROI worksheet with source-level job evidence from ServicePro IQ. The Revenue report shows revenue by lead source from your Housecall Pro data, and you can filter the Profit report by source to review recorded job economics alongside your acquisition costs. Build your next source comparison around that evidence with a free 7-day trial, no credit card needed.