How to Track ROI on Your Marketing Campaigns (The Right Way)
Stop measuring vanity metrics. Here's the exact framework we use to track real ROI and make data-driven decisions that grow revenue.
Vanity Metrics vs Real ROI
Impressions. Reach. Followers. These are vanity metrics; they look impressive in a monthly report, but none of them pay your bills, and a campaign can post great numbers on all three while losing you money.
Real ROI metrics:
Cost Per Lead (CPL)
Cost Per Acquisition (CPA)
Customer Lifetime Value (LTV)
Return on Ad Spend (ROAS)
Marketing-attributed revenue
The Sunfield ROI Tracking Framework
Step 1: Define Your North Star Metric
For most service businesses, this is "booked appointments" or "qualified leads." Everything else (clicks, sessions, time on page) is secondary and only matters to the extent it moves that one number. Pick it once, and hold every channel accountable to it.
Step 2: Set Up Proper Attribution
You need to know exactly which channel, campaign, and ad produced each lead, not a rough guess. That requires:
UTM parameters on every outbound link, applied consistently: utm_source, utm_medium, and utm_campaign at minimum, utm_content when you're split-testing creative within the same campaign
Conversion tracking pixels installed correctly on Google and Meta
CRM integration so a lead's source travels with it all the way to closed sale
Call tracking for phone leads: for most local businesses, 60%+ of qualified leads come in by phone, and a business with no call tracking is flying blind on the majority of its pipeline
Picking an Attribution Model
Once the tracking is in place, you still have to decide how credit gets assigned when a customer touches multiple channels before converting, and the model you pick changes the story your data tells:
Last-click gives 100% of the credit to whatever channel closed the deal. Simple, but it systematically overcredits high-intent channels like branded search and undercredits the awareness channel that actually started the relationship.
First-click gives 100% of the credit to whatever channel introduced the customer. Useful for understanding what drives awareness, but it ignores everything that happened between first touch and close.
Linear splits credit evenly across every touchpoint. Fair in theory, but it treats a single social impression the same as a 20-minute sales call, which rarely matches reality.
Time-decay weights credit toward touchpoints closer to the conversion, which tends to be the most realistic default for a business with a multi-week sales cycle.
There's no universally "correct" model. The point is to pick one deliberately, apply it consistently, and revisit it if your sales cycle length changes, rather than silently defaulting to whatever your ad platform's dashboard shows you.
Step 3: Calculate True CPA
Total Marketing Spend ÷ Number of New Customers = CPA. If your CPA is meaningfully lower than your average customer value (and especially lower than your customer *lifetime* value), you are printing money and should be scaling spend, not second-guessing it.
Step 4: Optimize Based on Data, Not Instinct
Kill what genuinely doesn't work. Double down on what does. We review campaign performance weekly with clients and make adjustments based on what the attribution data actually shows, not on which ad "feels" like it should be working.
Tools That Make This Practical
You don't need a data science team to run this framework, but you do need the right pieces in place:
Analytics: Google Analytics 4 (or a comparable platform) for on-site behavior and conversion events.
Call tracking: a dedicated call-tracking platform (CallRail is a common choice) so phone leads carry the same source data as form fills instead of showing up as an anonymous, unattributed call.
CRM: something that stores a lead's original source on the contact record permanently, not just at first touch, so it survives the weeks or months between lead and closed sale.
A single source of truth: whichever of the above holds the real numbers, everyone on the team should be looking at the same dashboard, not three different platforms telling three different stories.
The specific tools matter less than the discipline of having one connected system instead of four disconnected ones that each show a partial, conflicting picture.
A Worked Example
Numbers make this concrete faster than theory does. Say a business spends $5,000 in a month across Google Ads and Meta, and that spend generates 50 leads, 10 of which become paying customers. That's a $100 CPL and a $500 CPA. On its own, "$500 to acquire a customer" sounds high. But if the average customer is worth $3,000 over their lifetime, that $500 CPA represents a 6x return, not a problem to fix. The CPA number alone never tells the full story; it only becomes meaningful once you put it next to what a customer is actually worth.
Common ROI Mistakes
Not tracking phone calls. As noted above, this alone can hide the majority of your real lead volume from your reporting.
Attributing everything to last-click. Last-click attribution credits whatever channel closed the deal and ignores everything that built trust beforehand, usually overcrediting search and undercrediting the awareness channel that actually started the relationship. See our Facebook Ads vs Google Ads breakdown for why search and social play such different roles in that journey.
Measuring too early. Some channels, particularly organic SEO, need 30–90 days to show their real ROI. Judging a compounding channel by its first-week numbers is how businesses kill strategies that were about to start working.
Ignoring lifetime value. A $100 lead that becomes a $10,000 customer over two years is a resounding win even if the CPA on paper looks high next to a competitor's $40 lead.
Ignoring sales cycle length. If your average deal takes 45 days to close, judging a campaign's ROI at the 30-day mark will always look worse than it actually is: you're measuring before most of that month's leads have had time to convert.
Treating "assisted" conversions as worthless. A channel that rarely closes the deal directly but consistently shows up earlier in the customer journey is doing real work. Pull an assisted-conversions report before you cut a channel that never gets last-click credit.
Setting a Budget That Actually Makes Sense
ROI tracking only means something once you have a baseline to compare it against. If you're not sure what a reasonable budget even looks like for your size of business, our budget framework breaks it down by revenue and business type so you're measuring against a realistic target, not an arbitrary one.
Get Your ROI Dashboard
We build a custom ROI dashboard for every client, so you can see exactly where every dollar goes and precisely what it returns: no more guessing, no more vanity metrics. Book a free strategy call to see how we'd set up tracking for your business.
Frequently asked questions
What's the difference between CPL and CPA?
Cost Per Lead (CPL) is what you pay to generate a lead: a form fill or a call. Cost Per Acquisition (CPA) is what you pay for an actual paying customer. A channel can have a low CPL and a high CPA if lead quality is poor, which is why tracking both matters.
How long before a campaign's ROI is trustworthy?
Paid search and social can usually be judged within 2–4 weeks once the algorithm has enough conversion data to optimize. Organic SEO needs 60–90 days minimum before the numbers mean anything.
Do I need call tracking if most of my leads come from a contact form?
If any meaningful share of your leads currently comes by phone (and for local service businesses that's usually the majority), skipping call tracking means your attribution data is systematically incomplete, regardless of how good your form tracking is.
Which attribution model should I use?
There's no universally correct answer. Last-click is simplest but overcredits closing channels; time-decay tends to be the most realistic default for businesses with a multi-week sales cycle. Pick one deliberately and apply it consistently rather than defaulting silently to whatever your ad platform shows.