I spent the last two weeks building detailed growth reports for eight roofing companies across the country. Different markets. Different revenue. Different team sizes. Texas, California, Pennsylvania, New Jersey, Indiana, Colorado, Minnesota.
Every single one had the same blind spot.
They're spending real money on marketing — and they have no idea which dollars are actually producing jobs.
Not leads. Not clicks. Jobs. Money in the bank.
Here's what I kept hearing
These aren't bad companies. Most of them have great reputations — 4.8 stars and up. Solid websites. Real budgets. Some are writing checks for $30K, $40K, even $55K a month across Google, LSA, Yelp, Angi, Facebook, and organic.
And when I asked the question — "Where are your best jobs coming from?" — every single one gave me some version of the same answer.
"I think it's Google."
"Probably Facebook."
"Honestly? I'm just throwing money at stuff and hoping it works."
That's not a strategy. That's a guess.
Why this is costing you more than you think
Here's what this looks like in real numbers. I'm not naming names — but this is a composite from what I saw across all eight.
One company was spending $11,500 a month on Yelp. When I dug into it, that channel was producing about $14,000 in revenue. That's barely breaking even once you back out labor and materials.
Same company was spending $8,500 on Local Service Ads. Revenue from that channel? $98,000.
The obvious move is to shift dollars from the channel that's barely breaking even to the one that's returning 11x. But they couldn't see it. Same phone number on everything. No way to tell which call came from where. So they just kept writing both checks. Every month. Same amount. For years.
Sound familiar?
The thing nobody's tracking
When I build these reports, I look at five areas: your reputation, your website, your Google Business Profile, how well you turn visitors into leads, and whether you can actually tell where your jobs are coming from.
Here's the pattern across all eight roofers.
Reputation? Strong — these guys have earned trust. Reviews, ratings, the whole deal.
Websites? Solid — they look professional, they show up in search.
Knowing where their jobs come from? Almost nonexistent.
The thing that should drive every marketing dollar you spend is the weakest part of almost every roofing business I looked at.
You built the engine. You just can't see the gauges.
The three things every roofer was missing
After eight reports, the gaps were the same almost every time.
Same phone number on everything. Trucks, yard signs, website, GBP, Yelp, LSA — all the same number. So when a call comes in, you have no idea what triggered it. You're asking the customer "how'd you hear about us?" and half the time they say "Google" whether they found you on a map listing, a search ad, or your organic page. That's not data you can act on.
And here's the thing I hear a lot — "I'd have to reprint my truck wraps to fix this." No, you don't. You keep your main number on the physical stuff. The places where it's easy to swap — your website, your GBP listing, your LSA, your Yelp page, your Facebook ads — those get tracking numbers. It's not a huge lift. It just hasn't been wired up.
No idea which leads actually close. Getting a lead is half the story. The other half is knowing which leads turn into jobs — and at what rate. I saw companies where Facebook was generating the most leads but the worst close rate. And companies where organic Google was bringing in fewer leads but way more revenue per lead. If you're only looking at which channel sends the most calls, you're making decisions with half the picture. You need to know which channel sends the most closed jobs.
Nobody's measuring how fast they call people back. This one was eye-opening. Almost none of them knew how quickly their office was getting back to new inquiries. The data is ugly — a lead you call back in five minutes is 8x more likely to become a job than one you call back in thirty minutes. Some of these companies had leads sitting for hours. Overnight. A few never got called back at all. That's not a marketing problem. That's jobs walking out the door while your team doesn't even know they were there.
What this actually means
Here's what hit me after doing all eight. None of these companies need more leads right now. They need to see what's already happening.
Most of them could pick up 2 to 4 more closed jobs a month just by tracking where their jobs come from, shifting spend to what's actually working, and getting back to people faster. At a $15K average ticket, that's $30K to $60K a month. No new ad spend. Just stop flying blind.
You're not underspending on marketing. You're spending without a scoreboard.
Fix the scoreboard before you buy more ads.
One thing to do this weekend
Pull up your marketing invoices from last month. Every platform — Google, Yelp, Angi, Facebook, LSA, whatever. Write down the dollar amount next to each one.
Now try to put a revenue number next to each line item. Not a lead count. Actual closed job revenue.
If you can't — that's the problem. Not your ads. Not your website. Not your reviews. The problem is you're making $30K, $40K, $50K decisions every month and you can't tell what's working.
That's fixable. And it's the single highest-ROI fix in your business right now.
Take the 2-minute quiz to find where your business is leaking revenue: rivetops.io/f/revenue-leak
Or book a free strategy call and let's look at the numbers together: calendly.com/hello-rivetops/30min
P.S. All eight companies are in different markets. None of them compete with each other. But they're all leaving money on the table in the exact same way. If you're spending more than $10K a month on marketing and you can't tell me which channel is producing the most closed jobs — not leads, jobs — you're one of them. The good news? The fix isn't expensive. It's just invisible until someone shows you where to look.