If you knew every $1 you spent on marketing brought back $6, would you cap it?
You wouldn't. You'd spend as much as you could — as fast as you could. The only reason
you're not already doing that is you can't trust the number for each channel.
Yelp, Google, Facebook, referrals — they don't all pay back the same, and right now there's
no honest way to tell which is the $6 and which is the $0.50. This system follows every lead
from the ad that produced it all the way to the paid job, so you finally know your real return
per channel — and can scale the winners with confidence.
The questions you'll finally be able to answer
$Where the money comes from
Which channel brings paying customers — not just leads?
Yelp might flood you with calls while Google quietly books the high-ticket jobs. You'll see the difference in dollars, not call volume.
%True cost per job
What does a booked job actually cost me on each channel?
Spend divided by booked, paid jobs — your real return on ad spend, channel by channel. No more guessing which ad is "working."
⚖Where to put the next dollar
What should I scale, and what should I cut?
Clear evidence for the budget call: double down on the channels that produce revenue, pause the ones that only produce activity.
How it works, start to finish
Four steps run automatically in the background — you just read the dashboard.
1 · Every lead source
GGoogle / LSA
MFacebook Ads
AAngi / Thumbtack
YYelp
RReferral / Repeat
→
2 · Tag where it came from
Website forms
Hidden source fields
The ad link quietly carries its source and campaign, and they're saved with the lead.
Facebook / Google forms
Automatic sync
Leads filled in on the ad platform flow straight in, tagged with the exact ad.
Phone calls
Tracking numbers
Each channel gets its own number, so the number dialed tells us where the caller came from.
→
3 · Match to the outcome
JOB
Lead → booked → paid
Each lead is tied to what actually happened next
Booked the job?
Matched
Tech showed up?
Matched
Job sold?
Matched
Revenue collected
Matched
→
4 · See it by channel
Your revenue dashboard
Leads · Booked jobs · Revenue · Return on ad spend — per channel
What we actually set up for you
It's done-for-you. Most of it runs in the background — your team's day-to-day doesn't change.
Your adsSource tags on every ad link
Every Google, Facebook, Angi and Yelp link is tagged so each click carries where it came from — no more "direct / unknown" leads.
Your siteHidden source capture on every form
Your booking and contact forms quietly record the channel, campaign and ad alongside the customer's details.
PhoneCall tracking numbers, one per channel
A unique number for each source, forwarded straight to your existing line. Nothing changes for the person answering the phone.
Lead intakeConnections to your forms & CRM
Facebook/Google lead forms and your field software (ServiceTitan, Housecall Pro, Jobber…) feed in automatically — no manual entry.
Behind itCleanup & job-to-revenue matching
We standardize source names, merge duplicate leads, and tie each lead to its booked job and the revenue it earned.
OutputYour hosted dashboard, kept healthy
A secure, always-on dashboard you log into — plus ongoing monitoring so the tracking keeps working as your ads change.
Why you can trust the numbers
A revenue report is only useful if it's accurate. Here's what keeps it honest.
Built-in safeguards
Accurate by design, not by guesswork
The source is captured the moment the lead arrives — never reconstructed weeks later from
memory. Every path in is covered, and the messy parts are cleaned up automatically so two
people looking at the dashboard see the same truth.
1Source captured at the moment of contact — not guessed afterward.
2Calls, web forms and platform leads all tracked — no blind spots.
3"Google", "google ads", "GOOGLE" merged into one clean channel.
4The same customer calling twice counts once, not as two leads.
5Revenue pulled from your actual jobs, not estimated.
6Untracked leads shown as "Unknown" — never hidden or faked.
Capture the source→Clean & match the data→Spend where the revenue is