Your dashboard says the campaigns are working. Clicks are up, cost per lead is down, and the monthly report from your agency looks clean. Meanwhile, your sales team keeps saying the leads are junk, and you can't tell which side of the house to believe.
I sat down with Ryan Wheelock, our Director of Service Operations here at StringCan, to walk through three real client stories that explain the gap, and you'll come away with the one question Ryan asks before touching any campaign setting, a clear picture of why connected data beats a bigger ad budget, and the math one client used to learn that every move-in was worth six times what they paid for the lead.
This post is based on Episode 70 of Revenue Rewired | Ep 70: Fixing Paid Media Attribution and Finding Real Revenue with Ryan Wheelock.
If you'd rather listen than read, find the full episode on Apple Podcasts, YouTube, Spotify, or Amazon. It's worth your time.
Ryan's first example is a veterinary surgery practice that does spay and neuter procedures and specialty surgeries for pets around the valley. They weren't struggling to generate leads at all. Their question was sharper than that: which channel actually produces paid appointments and surgeries, and where should the next dollar go?
On paper, they'd done everything right. HubSpot gathered the leads, Meta and Google Ads drove traffic to landing pages, CallRail tracked the phone calls, and separate systems handled tickets and appointment scheduling. Ryan's summary stuck with me: they had all the bones. What they didn't have was any connection between those systems, so nobody could trace a completed surgery back to the campaign that started it.
Before he'll touch a campaign setting, Ryan asks every client the same thing: define what brings the company revenue, then work backward from that answer. For this practice, revenue meant a completed appointment. Not a click, not a form fill, not even a booking inquiry. Once you name that end point, you know exactly what data your systems need to capture, and suddenly the channel report from Google Analytics stops looking like an answer.
I pushed Ryan on this during the episode, half playing devil's advocate: there are plenty of tools like Zapier that connect things, so what's the big deal? He gave me a look. Connectors are easy. Understanding what flows through them is the actual work.
Take the CallRail integration with HubSpot. Activating it takes about three button clicks. But out of the box, it pushes data you never wanted, like every outgoing call your own team makes. Nobody needs their CRM cluttered with internal dials. You have to decide which records equal potential revenue before you wire anything together, and that means reading documentation and working with support, not just flipping the switch.
The payoff for the veterinary client made the effort obvious. With everything feeding into HubSpot, a single contact record showed the phone call, the form fill, the booked appointment, and the campaign and keyword that produced that person in the first place. Then came the part I loved: they built segments of their highest-value clients by procedure type and fed those back to Google Ads as audiences, so the platform started optimizing toward people who resemble actual paying customers. A one-way reporting stream turned into a loop that gets smarter every month.
A senior living operator with communities across the country gave us the cleanest head-to-head test I've seen. They run paid media with us for a subset of communities and with another partner, Company B, for others. Over a six-month window with roughly equal spend, the click-through rates on both sides came out identical. Company B racked up far more impressions and clicks, which kept their reported lead cost impressively low, because volume was exactly what their campaigns were built to chase.
Here's what separated the two engagements. Company B's reporting stopped at the lead. Nobody could say how many of those leads sales ever spoke to, how many booked a tour, or how many became residents. Ryan called it half a loop. At the start of our engagement, we asked a different question: what's the metric your sales team actually cares about? The answer was move-ins. So we mapped the funnel backward, from move-in to completed tour to scheduled tour to qualified lead, and asked for the data at each step.
That mapping let us tell the client something company B structurally couldn't: every move-in returned roughly six times its acquisition cost. On paper, more eyeballs saw company B's ads, and a spreadsheet comparison would crown them the winner. The business comparison tells the opposite story, and only one partner could even participate in that conversation.
The third story is a client we've worked with for about twelve years, an aluminum extrusion manufacturer with a tiny addressable market. Only a handful of companies on earth need what they sell, so every wasted media dollar hurts. For years, the education has centered on lead quality: the client vets each lead in HubSpot and marks the real ones as sales-qualified, and we optimize campaigns toward the leads he's flagged. He challenged us on every request along the way, always asking whether the juice was worth the squeeze, and two days before we recorded, he recited the whole lifecycle back to Ryan from memory.
A recent audit of his tech stack's AI readiness opened the door to the next layer: marking which SQLs became customers, then tiering customers by value. Ryan's example of why this matters is the sharpest thing in the episode. Imagine keyword campaign A brings in 20 leads while campaign B brings in three. Google sees A winning and shifts budget toward it. But suppose all three of campaign B's leads became customers while A produced none. Without that first-party data, the platform keeps pouring money into the campaign that generates zero revenue, forever, because it has no way to know better. Feeding customer outcomes back into the ad platforms is how a niche manufacturer finds needles in a haystack without burning the field down.
Q: Is cost per lead a good metric for paid media campaigns?
A: It's a useful diagnostic, but it's dangerous as a goal. Campaigns optimized purely toward cheap leads will deliver exactly that, cheap leads, with no guarantee any of them buy. Anchor your campaigns to a revenue event instead, like completed appointments or move-ins, and let lead cost be context rather than the scoreboard.
Q: My marketing tools all advertise integrations. Why is connecting them still hard?
A: The connector itself usually takes minutes to activate. The hard part is knowing what data flows through it and whether that data maps to revenue, since default settings often push junk like your team's outgoing calls into the CRM. Plan the data model first, then activate.
Q: What data should I feed back into Google Ads?
A: First-party outcomes the platform can't see on its own: which leads sales qualified, which became customers, and which customers are high value. You're not sharing dollar figures, just categories, and those audiences let the algorithm optimize toward buyers instead of clickers.
Q: How do I compare two paid media agencies fairly?
A: Demand the same visibility from both, down to a revenue outcome, before comparing anything. Matching CTRs can hide completely different business results, as one of our clients discovered. If a partner's reporting stops at raw leads, you're comparing half a funnel against a whole one.
Q: Do I need to replace my tech stack to get revenue attribution?
A: Probably not. The veterinary client in this episode already owned every tool they needed: HubSpot, CallRail, ad platforms, and appointment software. The missing piece was integration and a clear definition of the revenue event, not new software.
This work sits at the center of what StringCan does. We help mid-market companies wire their tech stacks together so marketing spend traces all the way to closed revenue, then we optimize campaigns against the outcomes that matter to the sales team, whether that's surgeries, move-ins, or a niche manufacturer's next great customer. The tools you already own can probably do this. The strategy and the plumbing are what's usually missing.
If any of these stories sounded uncomfortably familiar, listen to the full conversation with Ryan and then reach out through stringcaninteractive.com to talk it through. We'd love to hear what your dashboard isn't telling you.