ROI
How to Tell If Your Ads Are Actually Making Money: ROAS, ACoS, and ROMI
Your agency sends a report: more clicks, more reach, a lower cost per lead. Yet there’s no more money in the bank. This guide shows you how to check whether your ads pay off — three formulas, one table based on your margin, and worked examples for different kinds of businesses.
Contents
"Are my ads paying off?" is really three questions
When business owners ask whether their ads are working, they’re usually asking one of three things:
- How much revenue did the ads bring in? ROAS and ACoS answer that.
- How much profit is left after paying for marketing? ROMI answers that.
- What did each customer cost, and how much could I have afforded to pay? Customer acquisition cost and your maximum cost per lead answer that.
The trouble starts when someone answers the second question with a number from the first. A 400% ROAS sounds like a win, but it measures revenue — not the money your business actually keeps. Let’s take them one at a time.
Four numbers you need before you calculate anything
No formula works without four numbers about your business. Your ad account can’t give you these — only you, your bookkeeper, or your CRM can.
- Average order value — what a customer pays, on average, per purchase.
- Margin — the share of each sale left after the cost of goods and per-order costs like shipping, platform fees, and payment processing. For a service business, it’s what’s left after paying staff or subcontractors and materials.
- Lead-to-customer rate — how many out of every 100 inquiries become paying customers.
- Repeat purchases — how many times a typical customer buys from you.
Not sure about your margin? Use a reasonable estimate and treat it as an assumption. Running the numbers with an approximate margin beats not running them at all — being off by 5 percentage points won’t turn a losing campaign into a winner.
ROAS: how much revenue each ad dollar brings back
ROAS (return on ad spend) tells you how many times over your ad revenue exceeds your ad spend. It uses revenue and ad spend only — no salaries, software, or creative production.
ROAS = revenue from ads ÷ ad spend × 100%
Example. You spent $150,000 on ads and they brought in $600,000 in revenue. ROAS = 600,000 ÷ 150,000 × 100% = 400%. Every ad dollar brought back four dollars in revenue.
You’ll see the same number written different ways: 400%, "4," or "4x." They all mean the same thing. What matters more is this: ROAS tells you nothing about profit until you compare it with your margin.
ACoS: how much of your revenue goes to ads
ACoS (advertising cost of sale) is the same idea viewed from the other side: what percentage of your ad-driven revenue was spent on the ads themselves. It’s especially popular in e-commerce because you can compare it directly with your margin.
ACoS = ad spend ÷ revenue from ads × 100%
Example. The same $150,000 in ads with $600,000 in revenue: ACoS = 150,000 ÷ 600,000 × 100% = 25%. Ads eat a quarter of the revenue. For a store with a 40% margin, that’s fine. With a 20% margin, you’re losing money.
ROAS and ACoS are two sides of one coin: a 400% ROAS is a 25% ACoS, and a 200% ROAS is a 50% ACoS. Pick one and stick with it from report to report.
ROMI: how much profit is left after marketing
ROMI (return on marketing investment) is based on profit and includes all your marketing costs, not just ad spend: agency or freelancer fees, tools, and creative production. That makes it a more honest number than ROAS.
ROMI = (profit from marketing-driven sales − marketing costs) ÷ marketing costs × 100%
Example. $150,000 in ad spend plus $30,000 for the agency and creatives — $180,000 total. The ads brought in $600,000 in revenue at a 40% margin, which is $240,000 in profit before marketing. ROMI = (240,000 − 180,000) ÷ 180,000 × 100% ≈ 33%. For every marketing dollar, the business made an extra 33 cents.
A negative ROMI means your ads are losing money — even if the ROAS looks great.
ROAS vs. ACoS vs. ROMI vs. ROI
| Metric | What it compares | Which costs it includes | The question it answers |
|---|---|---|---|
| ROAS | Revenue to ad spend | Ad spend only | How much revenue does each ad dollar bring in? |
| ACoS | Ad spend to revenue | Ad spend only | What share of revenue goes to ads? |
| ROMI | Profit to marketing costs | All marketing costs | Did marketing actually make the business money? |
| ROI | Profit to investment | Every investment, not just marketing | Did the investment pay off overall? |
For a monthly check-in on your ads, two numbers are enough: ROAS or ACoS to track the trend, and ROMI to see whether you’re actually keeping any money.
Break-even ROAS: the number that matters for your margin
This is the most useful formula in the article. It tells you the minimum ROAS you need so your ads don’t lose money.
Break-even ROAS = 1 ÷ margin. Maximum ACoS = your margin.
With a 25% margin, every ad dollar needs to bring back at least four dollars in revenue — a ROAS of 400% or higher. Anything below that is a loss, even if "sales are coming in." Here’s a quick reference:
| Margin | Break-even ROAS | Maximum ACoS |
|---|---|---|
| 20% | 500% | 20% |
| 25% | 400% | 25% |
| 30% | 333% | 30% |
| 40% | 250% | 40% |
| 50% | 200% | 50% |
| 60% | 167% | 60% |
That’s the point where your ads only pay for themselves. For the business to make money, your actual ROAS has to be well above it — enough to cover payroll, rent, and the profit you want.
If you sell services, start with what a customer is worth
In services, B2B, and real estate, revenue doesn’t show up right away — it comes after an inquiry, a call, and a signed deal. So instead of ROAS, it’s easier to work out how much you can afford to pay for a customer, and then for a lead.
- Take the profit from one customer. For example, a $1,200 job at a 50% margin is $600.
- Decide how much of that you’re willing to spend to win the customer. Say half — so a customer can cost up to $300.
- Multiply by your lead-to-customer rate. If 1 in 5 people who reach out end up buying (20%), a lead can cost up to $300 × 20% = $60.
Then compare that with reality: if a lead costs you $45, you have room to spare. If it costs $80, your ads are losing money — no matter how "cheap" that looks next to industry averages. You can run these numbers for your own business in the cost per lead calculator.
Three businesses, three calculations
To make the formulas feel natural, let’s run them on three hypothetical businesses. The numbers are made up for illustration, but the proportions are typical.
Online store. Average order $80, 35% margin after shipping and fees. Break-even ROAS = 1 ÷ 0.35 ≈ 286%. The ads deliver a 350% ROAS: $10,000 in ad spend brings in $35,000 in revenue and $12,250 in profit before ads. Subtract the ad spend and you’re left with $2,250. It pays off, but barely — any rise in ad costs wipes out the profit. This store should work on order value and repeat purchases.
Home renovation contractor. A $4,000 job at a 35% margin leaves $1,400 in profit. The owner is willing to spend up to $600 to win a customer. Half of all leads are qualified, and one in four qualified leads signs a contract. So a lead can cost up to $600 × 50% × 25% = $75. If the agency brings the cost per lead down to $45 but lead quality drops by half, each customer gets more expensive — not cheaper.
Real estate. A brokerage earns $6,000 in commission per deal, and 2% of leads end up closing. Even if a third of the commission — $2,000 — goes to acquisition, a lead can cost up to $2,000 × 2% = $40. Deals take months to close, so ROI here is measured by cohort: you compare March’s leads with the deals they turned into by summer, not with sales from the same month.
Repeat customers change the math
If customers come back, the first purchase isn’t the whole story. A coffee shop regular spends $5 a visit, comes in four times a month, and sticks around for two years. Over that time, they bring in $480 in revenue — about $288 in profit at a 60% margin. Paying $8 to win that customer is a great deal, even if the first cup of coffee doesn’t cover the ad.
The ratio of a customer’s lifetime profit to the cost of acquiring them is LTV:CAC. A healthy benchmark is around 3:1. Below 1:1, you lose money on every customer. Well above 4–5:1, you may be underinvesting in ads and leaving the market to your competitors.
When it’s fine for ads to lose money
Not every unprofitable campaign is a mistake. There are three situations where ads can run at a temporary loss as a deliberate choice, not a failure:
- Launch and learning. In the first few weeks, the algorithm is learning and you’re testing ideas. Set a test budget and a success criterion up front: what result do you need to keep going?
- Cheap first purchase, profitable repeat business. If customers come back, the first sale may not cover the ad. Measure payback on customer profit over several months, not on the first order.
- Long sales cycles. In real estate, B2B, and high-ticket services, the money arrives months later. This month’s ads will pay off down the road — and you’ll only see it in cohort data.
In all three cases, one thing matters: the loss should be calculated and capped in advance. "It’s not profitable yet, but it will be soon" with no numbers behind it isn’t a strategy.
Measure ROI by channel, not just overall
Your overall ROI can look fine while one channel carries the business and another burns money. That’s why you should calculate ROAS or customer acquisition cost separately for each platform: Meta, Google, TikTok.
That said, don’t jump to conclusions. Channels support each other: someone might discover you on Instagram and then buy through a Google search. Cut Instagram based on a last-click report, and your Google sales may drop too. Before you shut off a channel, look at how total sales changed — not just that channel’s own numbers.
A quick sanity check: if total revenue stayed the same after you turned a channel off, it really wasn’t working. If revenue dropped, that channel was bringing in people who bought through other channels.
Example: calculating ROMI for a quarter
Once a quarter, it’s worth calculating your return with every marketing cost included. Here’s a hypothetical service business:
| Line item | Quarterly total |
|---|---|
| Ad spend | $9,000 |
| Agency fees | $4,500 |
| Photo, video, and ad design | $1,500 |
| Total marketing costs | $15,000 |
| New customers from ads (per CRM) | 36 |
| Profit per customer | $700 |
| Profit before marketing | $25,200 |
ROMI = (25,200 − 15,000) ÷ 15,000 × 100% = 68%. Customer acquisition cost with everything included is $15,000 ÷ 36 ≈ $417. If you counted ad spend alone, a customer would seem to cost $250 — and you’d think you had far more room than you really do.
Six mistakes that make ads look profitable when they aren’t
- Counting revenue instead of profit. A 400% ROAS at a 20% margin is a loss.
- Taking sales numbers from the ad platform. Every platform takes credit for the sale: Meta, Google, and your analytics combined will report more sales than actually happened. Your CRM or point-of-sale system is the source of truth.
- Not subtracting refunds, discounts, and shipping. Revenue looks bigger and margin looks better than they are.
- Judging a long sales cycle by a single month. September’s ads may produce deals in December.
- Lumping channels together. A blended ROAS hides the fact that one channel carries the business while another wastes budget.
- Not separating branded search. People searching for you by name would have bought anyway — that’s not the campaign’s doing.
How to check your ad ROI every month
A simple spreadsheet with one row per month per channel is all you need. You can keep it yourself or ask your agency to:
| Column | Where the number comes from |
|---|---|
| Ad spend | Ad account |
| Leads and sales | CRM, not the ad account |
| Revenue from those sales | CRM or point of sale |
| Profit before ads | Revenue × margin |
| ROAS or ACoS | Revenue ÷ spend, or spend ÷ revenue |
| Customer acquisition cost | Spend ÷ number of new customers |
| Profit after ads | Profit before ads − spend |
Once a quarter, add agency fees and creative production to your spend and you’ll have ROMI.
What to do if your ads aren’t paying off
- Make sure the math is right. Sales come from your CRM, the margin is real, and the sales cycle is accounted for.
- Find where the money leaks. Sometimes the problem isn’t the ads — it’s that leads wait a day for a reply, or the site is hard to use on a phone.
- Work out your maximum cost per lead and compare it with the actual cost for each channel separately.
- Change one thing at a time and judge the result on enough data — not after two days.
If you’d rather not dig into this yourself, that’s exactly what a free ad audit is for: I review your ad account, tracking, and what happens after someone becomes a lead, then show you where the money is leaking. You keep the findings either way.
FAQ
Frequently asked questions
What is a good ROAS?
There’s no universal answer — it depends on your margin. Break-even ROAS = 1 ÷ margin. At a 25% margin, ads pay for themselves at 400% and up; at a 50% margin, at 200% and up. A good ROAS is one that sits well above your break-even point.
What’s the difference between ROAS and ROMI?
ROAS is based on revenue and counts ad spend only. ROMI is based on profit and includes all marketing costs. ROAS can be high while ROMI is negative if your margin is thin.
What is ACoS?
ACoS (advertising cost of sale) is the share of ad-driven revenue that went to pay for the ads. A 25% ACoS means $25 of every $100 in revenue went to ads. If your ACoS is higher than your margin, your ads are losing money.
How do I measure ad ROI before I have any sales?
Work out your maximum cost per lead: profit per customer × the share you’re willing to spend on acquisition × your lead-to-customer rate. That’s the benchmark to compare your ads against from day one.
Why don’t the numbers in my ad account match my CRM?
Each platform uses its own attribution model and takes credit for sales. For anything involving money, pick one source of truth — your CRM or point-of-sale system — and use the ad account to manage the ads themselves.
Do business owners need to understand every metric?
No. It’s enough to know your ROAS or ACoS relative to your margin, your customer acquisition cost, and your maximum cost per lead. The rest is your marketer’s job — but they should be able to explain their work in those terms.