
Two numbers sit at the top of every ad campaign report. One says the advertising worked. The other says the business made money.
They are not the same number, and the gap between them is where budgets disappear.
Return on ad spend measures revenue against ad spend. Return on investment measures profit against every cost that produced it. A campaign can post a 4:1 ROAS and still lose money once product, payroll and agency fees are paid. ESB Advertising builds campaigns for home services operators, retailers and restaurants who need to know which spend produced a booked job, so this guide covers both formulas, the costs each metric hides, and how CRM-connected attribution settles the argument.
What Return on Ad Spend Actually Measures
Return on ad spend answers one question: how much revenue came back for every dollar of ad spend. Nothing else. It ignores payroll, product cost and the software running the campaign.
That narrowness is useful. ROAS moves daily, so media buying teams read it in real-time and shift budget inside live ad campaigns, adjusting bidding and targeting the same afternoon. It is also the metric most agency reports stop at, alongside impressions, clicks and CTR. Those become vanity metrics the moment they arrive without a revenue number attached. For the wider set of campaign performance measures, start with the marketing metrics that actually matter.
The ROAS Formula: Revenue Divided by Ad Spend
The ROAS formula is revenue attributed to ads divided by advertising spend. Spend $25,000, generate $100,000 in attributed revenue, and the campaign posts a 4:1 return on ad spend.
Marketers express the result three ways: a ratio (4:1), a multiple (4x), or a percentage (400%). All three describe the same relationship between media spend and revenue. Platform dashboards sit a level below, reporting CPC, CPM and cost per acquisition. None of those metrics knows what a sale is worth.
Two inputs decide whether the number is real. What counts as advertising spend, and what counts as attributed revenue. Most arguments about return on ad spend are really arguments about those two definitions.
Attributed Revenue, Modeled Conversions, and What Google Ads Overstates
Google Ads reports conversions it did not always cause. Modeled conversions fill the gaps left by consent refusals and cross-device journeys with statistical estimates, and view-through windows credit impressions nobody clicked. Meta Ads does the same thing under different names.
Run three platforms at once and each one claims the same sale. Add the dashboards together and attributed revenue exceeds the money in the bank.
ESB runs Google Ads and Microsoft Ads management against conversion data that closes in the CRM rather than data the platform reports about itself. The gap shows up fastest in high-ticket service work, where one duplicated booked job distorts a week of reporting.
Why a 4:1 Return on Ads Can Still Lose Money
Take that $100,000 campaign again. Product, fulfillment, creative production and agency fees add $80,000. Total relevant costs reach $105,000 against $100,000 in revenue. The campaign posts a 400% return and a net loss of $5,000.
Nothing in the Meta Ads interface will tell you this. The platform sees media spend and conversion value. It never sees gross margin, payroll, or the cost of sending a truck to the address.
See exactly how much revenue your advertising generates for every dollar you spend
What Return on Investment Measures After Every Cost
Return on investment compares profit with the total cost of producing it. Where ROAS looks at one campaign, marketing ROI looks at the whole marketing investment: media, people, software, creative and the time it took to build the offer.
That makes ROI the slower metric and the honest one. It carries the payback period, which is why it belongs in long-term planning rather than Monday’s optimization call. It answers whether the business is further ahead than it was before it spent the money. ESB’s campaign strategy and cross-media measurement sits at this altitude, because budget allocation across broadcast TV, streaming and paid search cannot be decided from one channel’s dashboard.
The ROI Formula: Net Profit Against Total Relevant Costs
The ROI formula is net profit divided by total relevant costs, multiplied by 100. Revenue of $100,000 against total relevant costs of $105,000 returns negative 4.76%. That is a negative ROI on a campaign the ad platform scored at 400%.
Scope decides the answer. An ROI calculation that counts media spend and ignores cost of goods sold flatters itself. Costs that usually belong inside the calculation:
- Media spend across every channel in the campaign
- Cost of goods sold and fulfillment
- Creative production, from scripting to final cut
- Agency fees, software costs and operational expenses
- Overhead and the internal labor hours the campaign consumed
Define the scope once, write it down, apply it every month. A marketing ROI figure that changes definition between quarters measures nothing.
Gross Margin, Break-Even Targets, and POAS
Gross margin sets your break-even ROAS. A business keeping 25 cents on the dollar needs a 4:1 return before advertising pays for itself. A business keeping 60 cents breaks even near 1.7:1. Same campaign, opposite verdict.
POAS, profit on ad spend, replaces revenue in the numerator with gross profit. It answers what ROAS cannot: did this campaign add margin? Teams running several channels often track MER, the marketing efficiency ratio, alongside it, comparing total revenue with total marketing spend rather than judging one channel in isolation.
Calculate break-even ROAS before setting any target ROAS. Without it, a 4:1 benchmark borrowed from an ecommerce blog is a guess wearing a number.
Cost Per Lead, Cost Per Booked Job, and the Metric That Pays the Bills
Cost per lead is where most service businesses stop measuring. It is also where the money hides. Two channels can both deliver leads at $60 and build completely different businesses, because one converts at 15% and the other at 45%.
Customer acquisition cost and customer lifetime value decide whether an expensive lead is a problem at all. A $200 CAC against an LTV of $4,000 in repeat maintenance work is cheap. The same CAC against a single $600 average order value is not.
Cost per booked job carries the conversion rate inside it. At $60 per lead, a 15% booking rate means each booked job costs $400. Raise that booking rate to 45%, and the cost drops to roughly $133, without spending less on leads.
Google Local Service Ads management makes the point concretely. LSA bills per lead, disputes strip out the junk, and the surviving leads are the only ones that belong in the denominator.
Turn campaign spend into a clear revenue benchmark you can actually act on
Closed-Loop Attribution: Connecting Digital Advertising to Your CRM
Neither metric resolves from inside an ad platform. ROAS needs revenue the platform can verify. ROI needs costs the platform never sees. Closed-loop attribution fixes both by treating the CRM record, not the pixel, as the source of truth.
The mechanics are unglamorous. Every call, form and chat carries a source. The CRM writes the sale value back when the job closes. Revenue attribution then runs backwards from the invoice to the keyword, the creative and the daypart that produced it.
ServiceTitan, HubSpot, and Salesforce Integrations
ServiceTitan holds the dispatch record. HubSpot and Salesforce hold the pipeline. Mackdata, ESB’s proprietary AI marketing software, reads all three and writes campaign-level revenue back against the spend that produced it.
Offline conversions are the piece most accounts miss. A booked job that closes over the phone three weeks after the click never reaches Google Ads unless something uploads it. Conversion tracking that stops at the form submission undercounts exactly the revenue that matters most.
Conversion tracking problems are rarely exotic. Duplicate tags. An untracked phone number. A thank-you page that fires again on refresh.
Multi-Touch vs Last-Click: Crediting Every Touchpoint
Last-click reporting hands the entire sale to the final touchpoint. On a home services journey that runs from a streaming TV spot to a branded search three weeks later, last-click credits the brand search and zeroes the campaign that created the demand.
Multi-touch attribution distributes credit across touchpoints. A cross-channel attribution model shows the whole path. That matters most in programmatic and OTT advertising, where the first impression rarely converts and incrementality tells you more than the click does.
The sequence that makes both metrics trustworthy:
- Tag every channel with a source that survives the handoff to the CRM
- Push offline conversions back to Google Ads and Meta Ads inside the attribution window
- Compare blended ROAS across channels before judging any single campaign
- Test incremental ROAS by holding one market dark and measuring the difference
Connect every advertising dollar to real leads, sales and revenue inside your CRM
Run an Ad Campaign that Reports The Metrics That Matter
At ESB Advertising, we build ad campaigns around the metrics that genuinely matter to your business. We look beyond surface-level impressions and clicks to focus on meaningful performance, including leads, conversions, cost per acquisition and return on ad spend.
By tracking the right data from the start, we can see what is working, identify opportunities to improve and make informed decisions. Our reporting gives you a clear view of campaign performance and the impact your advertising is delivering.