Insights · Paid Media
Your ROAS Looks Good. So Why Is Profit Going Down?
If the dashboard says the ads are working and the bank account says they are not, your dashboard is lying to you. Maybe your agency is too. Here is where to look.
Written by Daniel Cunningham, founder of North Track Digital. Twelve years in digital marketing, agency-side since 2019, from media buyer to Director of Paid Social to running a profit-first ecommerce agency.
A True Story
The Brand That Was "Winning" While Losing Money
When we met the team behind Tossits, the website was doing a couple hundred dollars a month. Almost all of it came from existing customers coming back. The agency before us was charging $6K a month to make videos that got no views and no sales, and their plan was simple: keep making videos, because "one of these will go viral and make up for it." Spray and pray, billed monthly.
Nobody was lying on purpose. There was just nobody holding any of it against the P&L. And underneath the surface, the leaks were everywhere. The site was on WooCommerce and underbuilt. The one, two, and three packs were listed as separate products, which capped the average order. And here is the one almost nobody catches: some of the brand's own retail partners were running Google Shopping ads on the Tossits name, showing up above the brand's own site, and taking the traffic Ben had earned.
The turnaround was not a secret bidding trick. We moved the site to Shopify and rebuilt it for search and conversion. We rebuilt the product page with the Amazon reviews the brand had already earned, better photos, cleaner variants, and a subscription option. We restructured pack sizes to raise the average order, defended the brand name with branded search, and set up tracking properly so every number could be trusted. Because Tossits is mostly a one-time impulse purchase, we set the targets so every first order was profitable on its own.
Twelve months later, Tossits crossed $1.5M a year, profitably. Same product. Different scoreboard.
If your ROAS looks healthy while profit shrinks, your money is almost always leaking from one of five places. Here they are, in the order we check them.
The Diagnosis
The Five Profit Leaks
1. Your Tracking Is Inflating the Numbers
This is the first thing we check on every call, and it is the sneakiest leak of all. We recently audited a Google Ads account where the previous agency had two purchase conversion events firing. Every sale counted twice. The reports looked amazing. Half of it was not real.
It gets worse with multiple channels: Meta and Google will both claim the same order because their attribution windows overlap. Add them up and your dashboards report more revenue than your store took in.
The check: confirm one purchase event per account, deduplicated server-side or API tracking, and hold every platform's claims against actual store revenue.
2. Branded Search Is Hiding Your Real CAC
Branded campaigns capture customers who already decided to buy from you. Their ROAS is always beautiful. As branded spend becomes a bigger share of the account, blended ROAS holds steady while the cost of winning a truly new customer quietly climbs.
Branded spend has a real defensive job, as the Tossits story shows. Just never let it hide what non-branded is doing.
The check: split every report into branded and non-branded, and separate new customers from existing ones. Optimize for new customer acquisition.
3. Discounts Are Eating Your AOV
Constant discounting trains your buyers to wait for the next code. Sitewide sales lift conversion rate and ROAS while lowering the value of every order. Ads look better while each sale is worth less.
The check: track average order value and margin per order next to ROAS. Do the math on whether you can afford the discount at projected volume. Save discounts for holidays and moments that earn them, and test creative offer framing instead of a bare percentage off.
4. Your Costs Crept and the Targets Didn't
Product costs rise. Shipping rates change. Platform fees go up. If your ROAS target was set when your landed costs were lower, the same ROAS that used to be profitable now is not. The dashboard did not change. The math under it did.
The check: re-run your break-even ROAS from current landed costs every quarter, not from last year's spreadsheet.
5. Ads Are Re-Buying Customers You Already Own
Retargeting and broad campaigns love to claim your returning customers. Those sales were coming through email or a direct visit anyway. The platform charges you for them and books the revenue as a win.
This matters double when your product is a one-time purchase. For Tossits, lifetime value was basically the first order, so paying twice for the same customer was pure loss.
The check: look at the new versus returning split on ad-attributed orders. Know your real LTV before you assume repeat purchases will bail out a high CAC.
The Common Thread
Every leak survives for the same reason: the scoreboard stops at the ad account. Profit lives in the P&L, and nobody in the reporting loop is looking at it.
Most agencies report on the metrics and manage a channel. Almost nobody pulls the whole picture, because almost nobody is paid to.
Wider Than Ads
The Leaks That Are Not in the Ad Account at All
Sometimes the ads are fine and the business is still leaking. The other places we look, in rough order of how often they pay off:
- The offer. The offer is one of the biggest levers most brands never pull. Everyone obsesses over the ads and ignores what is actually being offered and what happens after the click.
- An undefended brand name. If someone else outranks you for your own name, every branded sale pays a tax. Check who shows up when you search your brand, including your own retail partners.
- A product page with no proof. Weak sales copy, no objection handling, no reviews. Traffic is expensive; a page that cannot close is a leak on every visit. That is a conversion problem, not a media buying one.
- Organic content that never becomes ads. Your best organic posts already proved they earn attention. Not running them as paid creative is leaving your cheapest winners on the bench.
- No email or SMS working your existing customers. If repeat revenue only arrives when an ad recaptures someone, you are renting customers you already paid for.
- Nobody watching the account. Budgets overspend and campaigns break quietly. There is AI-based monitoring now that can watch accounts automatically, so there is no excuse for finding a problem at the weekly report.
One more thing worth knowing if you sell on Amazon: strong visibility off Amazon tends to lift Amazon sales too. In accounts we manage, that halo is commonly in the range of a 20 to 30 percent lift, and other operators we compare notes with report the same. If you only credit the click, you will undervalue the ads that create demand everywhere else.
The Fix
The Scoreboard That Cannot Lie to You
ROAS is just a vanity metric inside the ad platform. What really matters is how much the ads are contributing to profit. Here is the scoreboard we set up for every brand we work with:
- First, verify the tracking. One deduplicated purchase event, server-side or API connected, cross-checked against store revenue. Until this is true, every other number is a rumor.
- Contribution margin, from a CFO's seat. Pull real sales from Shopify and your channels, pull ad spend from the platforms, subtract product cost, shipping, and fees. Money that actually stays.
- New-customer CAC vs first-order margin. Tells you if growth is being bought at a loss, and whether your payback depends on repeat purchases your product may not get.
- Total revenue against total ad spend. The blended sanity check on everything the platforms claim. It cannot be inflated by attribution, because it does not use attribution.
Set the targets from your real margins, then manage the ad accounts inside those targets. ROAS earns a seat back at the table only after the foundation is in: you know your break-even ROAS from your actual AOV and margin, your tracking is verified, and new customers are segmented from existing ones. At that point it becomes a useful scaling benchmark inside the account. Before that point, it is a bedtime story.
Sometimes the fix means spending less on a campaign with a great ROAS, because the contribution math says it is a mirage. That decision is easy for us and hard for most agencies, and the difference is the pricing model. An agency paid on your ad spend cannot afford to find these leaks. We priced ourselves so we have to: here is how agency pricing models shape behavior. The full-funnel view is how we run Meta ads for every brand we manage.
Common Questions
ROAS and Profit FAQ
Why is my ROAS good but my profit going down?
Because ROAS only compares ad revenue to ad spend. It ignores your product costs, shipping, fees, returns, and discounts, and it often counts sales twice across channels or takes credit for sales that would have happened anyway. Profit usually leaks in one of five places: rising acquisition costs hidden by branded campaigns, discounts quietly lowering average order value, product or shipping costs creeping up, ads re-capturing existing customers, and inflated tracking.
What metric should I track instead of ROAS?
Track contribution margin from a P&L perspective: pull real sales from Shopify and your channels, pull ad spend from the platforms, and calculate what is left after product costs, shipping, and fees. Separate new customers from existing customers and optimize for new customer acquisition. Then sanity-check everything by holding total revenue against total ad spend, a blended number that attribution cannot inflate.
How do I know if my ad tracking is lying to me?
Audit it. Check whether you are running server-side tracking or API connections, whether events are deduplicated, and whether more than one purchase conversion event exists in the account. We recently audited a Google Ads account where the previous agency had two purchase events firing, so every sale was reported twice. Also check whether Meta and Google are both claiming the same orders because of overlapping attribution windows.
Should I stop running branded search campaigns?
No, but measure them honestly, and know why you run them. Branded campaigns capture demand you already created, so their ROAS will always look great. They also protect you: we have seen a brand's own retail partners run Shopping ads on its brand name and steal the traffic. Defend the brand, but never let branded performance hide what non-branded spend is really doing.
Can an agency fix this, or is it a business problem?
Both. Better media buying helps, but the durable fix is running paid ads against profit targets set by your real margins. That means someone has to look at the P&L, not just the ad account. That is the work we do at North Track Digital, and it is why we price on a percentage of net sales rather than on your ad spend.
Founder, North Track Digital. Twelve years in digital marketing, agency-side since 2019: media buyer, campaign strategist, and Director of Paid Social before founding a profit-first ecommerce agency on performance-based pricing.
Want Us to Find Your Leak?
Book a discovery call and we'll look at your tracking, margins, acquisition costs, and channel mix, then show you exactly where the profit is going.