How to Measure New Customer vs Returning Customer ROAS
by Trivas.ai
|
8 min read
Sep 26, 2026
Why Blended ROAS Is Lying to You
Blended ROAS feels like a clean number. It isn't. It's an average of two completely different economics smashed into one figure: what it costs you to convince a total stranger to buy, and what it costs you to sell to someone who already has your product in their closet and your emails in their inbox.
Here's a scenario that plays out constantly. A campaign reports a 3.5x blended ROAS. Looks solid. Scale it, right? But pull it apart and you might find a 1.2x new-customer ROAS getting dragged up by a 6x returning-customer ROAS, mostly from retargeting people who were already going to buy. The blended number is technically accurate and practically useless.
This is the core problem with treating blended ROAS as a scaling signal. Brands see 3.5x, pour more budget into the channel, and end up overspending on what's actually a retention play wearing an acquisition costume. The channel isn't bringing in new buyers at 3.5x. It's just really good at reselling to people who were never going to churn anyway. If you want a real answer to how to measure new customer vs returning customer ROAS, you have to stop trusting the average and start splitting the inputs.
Defining 'New' vs 'Returning' Before You Calculate Anything
Before any formula matters, you need airtight definitions. Get this wrong and every number downstream is wrong too.
A new customer is someone making their first-ever purchase, tied to a unique customer ID via email or phone match. Not their first session. Not their first click. Their first completed order. A returning customer is anyone placing an order against a customer ID that already has a prior completed purchase on record, regardless of what channel or campaign brought them back this time.
The mistakes here are predictable:
Using "new visitor" cookie data as a proxy for new customer. Cookies reset, devices change, people clear browsers. None of that has anything to do with purchase history.
Silently resetting the customer clock every 12 months (so someone who bought 13 months ago counts as "new" again) without ever deciding, on purpose, that this is the window you're using.
Pick a lookback window and an identity resolution method, write them down, and apply them the same way every time. This matters more than people think because Shopify, Meta, and Google Ads each define "new customer" differently in their own dashboards. Meta's "new customer" metric isn't Shopify's, and neither matches Google's. If you're reporting numbers from each platform natively, you're comparing three different definitions and calling it one metric.
NC-ROAS vs RC-ROAS: The Actual Formulas
Once definitions are locked, the math itself is simple.
NC-ROAS is revenue from first-time-purchase orders attributable to a channel or campaign, divided by spend on that channel or campaign. RC-ROAS is revenue from repeat-purchase orders attributable to that same channel or campaign, divided by the same spend.
The complication isn't the division. It's the attribution. A returning customer can click the exact same retargeting ad as a new customer in the same ad set, on the same day. Their order revenue still needs to get split by customer status, not lumped together just because the click came from one campaign. This is where most manual attempts fall apart, because ad platforms report clicks and conversions, not customer history.
Once you've done the split, run a sanity check: (NC revenue + RC revenue) / total spend should reconcile back to the platform-reported blended ROAS. If it doesn't, something in your join logic is off, usually a missing order or a duplicated customer ID. You can run a quick version of this check with the ROAS calculator before building out the full split.
Metric
NC-ROAS
RC-ROAS
What it measures
Efficiency of acquiring first-time buyers
Efficiency of reselling to existing customers
Revenue used
First-purchase order revenue
Repeat-purchase order revenue
Spend used
Channel/campaign spend
Same channel/campaign spend
Typical range
Lower, acquisition costs more
Higher, retention costs less
The Data You Need Before You Can Split It
To actually calculate this, you need three things sitting in the same place at the same time.
First, order-level data with customer ID, order timestamp, and a first-purchase flag, pulled from Shopify, WooCommerce, or Amazon. Second, ad spend and attributed revenue at the campaign or ad-set level from Meta and Google Ads, matched to orders through UTM parameters or pixel data. Third, and this is the part everyone underestimates, a join key that ties the ad click or impression to the actual order and customer record. Ad platforms don't natively know if the person who just converted is new or returning. They know a conversion happened. You have to bring the customer history to the table yourself.
This is exactly where most teams get stuck. Doing this join manually in a spreadsheet works fine when you're small, maybe a few hundred orders a month across two channels. It breaks the moment order volume climbs or you add a third or fourth ad platform. Someone's pulling CSVs from three dashboards, VLOOKUP-ing customer emails against order history, and hoping nothing shifted since last week's export. It's fragile, and it's usually wrong by the second month.
This is the actual reason a warehouse-backed reporting layer matters here, not as a nice-to-have but as the thing that makes the join reliable. Trivas runs this on Redshift, pulling order and ad data into one place so the new-vs-returning split happens automatically instead of getting rebuilt by hand every reporting cycle. If you're managing this across Shopify and multiple ad platforms, that's usually the point where spreadsheets stop being a viable long-term system.
Reading the Split: What Good NC-ROAS and RC-ROAS Actually Look Like
Once you have real numbers, don't panic at a low NC-ROAS. It's supposed to be lower than RC-ROAS. Acquiring a stranger costs more than reselling to someone who already trusts you. That's not a red flag, that's just how customer economics work.
The better question isn't "is NC-ROAS above 1x." It's whether NC-ROAS gets you to CAC payback inside an acceptable window, judged against your LTV:CAC ratio. A 1.5x NC-ROAS might be completely fine if your average customer buys three times a year and sticks around for two years. A 4x NC-ROAS might still be bad if your margins are thin and your product doesn't repeat.
RC-ROAS deserves its own kind of scrutiny too, just in the other direction. If it's drifting down over time while NC-ROAS holds steady, that's usually not an ad problem. It's a retention problem, often traced back to email and SMS flows quietly underperforming, weaker win-back sequences, or a lifecycle program nobody's touched in months.
Track both numbers weekly, broken out by channel, not just as a monthly rollup. A channel can shift from genuine acquisition into pure retargeting spend over a matter of weeks, and a monthly view will hide that until the quarter's already gone.
Common Mistakes That Skew the Split
A few errors show up constantly once brands start trying this, and they're worth naming directly.
Last-click attribution is the biggest one. It overcredits retargeting and branded search for "new" customers who actually found the brand somewhere else entirely, maybe a TikTok video three weeks earlier. The last click gets the win, the actual discovery channel gets nothing.
Ignoring cross-device behavior and guest checkout orders is the second. Someone browses on mobile, buys on desktop as a guest, and now they look like a brand-new customer even though they bought two months ago on a different device. That inflates your new-customer count and quietly deflates NC-ROAS in a way that isn't actually true.
Third: not stripping out discount-driven orders or wholesale/B2B revenue before running the calculation. A wholesale order skews both NC-ROAS and RC-ROAS revenue figures in ways that have nothing to do with your ad spend efficiency.
And fourth, comparing NC-ROAS or RC-ROAS across channels without normalizing for average order value. Amazon pricing and DTC Shopify pricing aren't the same animal, so comparing raw ROAS across the two without adjusting for AOV differences will send you chasing a channel that just happens to sell a pricier bundle.
Putting the Split to Work
NC-ROAS and RC-ROAS answer two different budget questions, not one. NC-ROAS tells you how much you should actually be spending to acquire. RC-ROAS tells you how much retargeting and retention spend is genuinely earning its keep, versus just collecting revenue that was coming in anyway.
If you're only looking at blended ROAS, you're answering neither question well. Start with a quick gut check using the ROAS calculator, then move toward a setup that splits new versus returning by channel automatically, rather than rebuilding the join in a spreadsheet every week. That's a much heavier lift for performance marketers managing budget across five or six channels than it sounds like on paper.
If you want to see what that split looks like running automatically across Shopify, Amazon, Meta, and Google Ads data, Trivas offers a trial worth a look. And if you're just getting oriented on ecommerce metrics in general, the data dictionary is worth bookmarking too.
Content author and contributor at Trivas.ai, sharing insights on e-commerce analytics, business intelligence, and data-driven strategies to help businesses grow.
Continue Reading
explore more insights
How to Calculate ROAS: The Formula, Examples, and What Counts as Good
3 min read
What UK Shopify Brands Actually Use for Analytics in 2025
3 min read
Ecommerce Analytics Software for Growing DTC Brands: A Real Guide