How to Measure New Customer vs Returning Customer ROAS (NC-ROAS vs RC-ROAS)
by Trivas.ai
|
7 min read
Sep 08, 2026
Why Blended ROAS Is Lying to You
Here's a campaign that looked fantastic on paper: 4.2x blended ROAS. Someone screenshots it, sends it to Slack, everyone's happy. Except when you split it out, that same campaign is running 1.8x on new customers and 9x on returning ones. The blended number is real. It's also hiding a real problem.
Blended ROAS answers one question: did this campaign make money. It doesn't answer the question that actually matters for growth, which is whether the campaign is bringing in new customers or just re-selling to people who already know your brand. Those are two very different jobs, and lumping them together is how brands end up scaling ad spend into audiences that were going to buy anyway.
The fix is a split most dashboards never show you. NC-ROAS is revenue from first-time buyers divided by ad spend. RC-ROAS is revenue from repeat buyers divided by ad spend. Same denominator logic, completely different signal.
If you're doing $1M to $10M+ a year on Shopify or Amazon, this isn't an optional nice-to-have metric. It's a gate you need to pass before trusting any decision to scale a campaign. Learning how to measure new customer vs returning customer ROAS is what separates "the ads are working" from "the ads are actually growing the business."
NC-ROAS vs RC-ROAS: The Actual Definitions
NC-ROAS
What it measures: Revenue generated from customers with zero prior orders at the time of purchase, divided by ad spend attributed to that purchase
What it tells you: Whether your acquisition spend is actually acquiring anyone
RC-ROAS
What it measures: Revenue from customers with at least one prior order, divided by the ad spend attributed to that purchase
What it tells you: Whether you're paying to remind existing customers to buy again, and how efficiently
The tricky part is the attribution window. A customer who looks "new" in a 7-day click window might turn out to be a repeat buyer once you look at their full order history. Platforms don't always catch that. If someone bought from you eight months ago and your window only looks back a week, the platform will happily label them new.
This is also why the split doesn't show up by default anywhere. Meta and Google report blended purchase ROAS out of the box. Neither one natively separates new from returning without you matching pixel or click data against your actual CRM and order history. The platforms know who clicked. They don't know who's a repeat customer. Only your order data knows that.
What Data You Need to Split the Metric
Three things, and none of them come pre-joined.
First-purchase flag. This has to be a timestamp check against complete order history, not whatever the ad platform's pixel guessed. If a customer's very first order in your system was three years ago, they're not new today no matter what Meta thinks.
Customer ID matching. You need a reliable join key, usually email or a hashed customer ID, that connects Shopify or Amazon order records to ad platform click and view data. Without this join, you're comparing two datasets that don't talk to each other.
Order-level ad spend allocation. Spend has to get tied to the specific order, either through last-click or a multi-touch model. Campaign-level totals aren't granular enough. You can't split ROAS by customer type if your spend data only exists at the campaign level.
Shopify's built-in customer tags ("First-time" vs. "Returning") are a decent starting point if you're running Shopify, but they stop short of what you actually need. They tell you who's new and who's not. They say nothing about spend. You still have to do the join yourself to turn that tag into a ROAS number.
Step-by-Step: Calculating It Manually
If you want to do this by hand, here's the process.
Step 1: Pull every order for your date range and tag each one as first-time or returning, using order sequence number per customer (order #1 = new, order #2+ = returning).
Step 2: Sum revenue separately for each group. You now have two revenue totals instead of one blended figure.
Step 3: Pull ad spend for the same window and allocate it between the two groups, either proportionally by order count or by attributed revenue share.
Step 4: Divide each group's revenue by its allocated spend. That gives you NC-ROAS and RC-ROAS.
The weak link is step 3. Unless you have true order-level attribution, that spend split is an estimate, not a fact. This is where most spreadsheet builds fall apart: someone builds the VLOOKUP once, it's accurate for a week, then a new campaign structure or a UTM change breaks the join and nobody notices until the numbers stop making sense.
Automating the Split with a Redshift-Backed Dashboard
This is exactly the kind of join that shouldn't live in a spreadsheet. Trivas joins Shopify and Amazon order history with ad platform spend at the order level inside Redshift, so NC-ROAS and RC-ROAS update on their own instead of depending on someone rebuilding a lookup table every Monday.
The Wingman AI layer sits on top of that and flags when NC-ROAS drops below a threshold you set, say under 1x, even while blended ROAS still looks fine. That's the exact scenario from the intro: healthy-looking headline number, quietly broken acquisition engine underneath. Wingman catches that gap before it turns into three months of wasted prospecting budget.
This matters most for brands running Meta or Google alongside Amazon, because Amazon's ad reporting doesn't split by customer type at all natively, and neither platform talks to the other. If you want to see the split live across all three without stitching it together yourself, that's what our BI reporting product is built for.
Before you get into the full split, it's worth sanity-checking your blended ROAS math first. The ROAS calculator is a fast way to confirm your baseline number is right before you start dividing it further.
How to Use the Split to Make Budget Decisions
Once you have the split, the decisions get a lot more obvious.
Low NC-ROAS, strong RC-ROAS. Your creative or targeting isn't converting cold traffic. That's a signal to test new angles or new audiences, not to cut the campaign entirely, since the account clearly can convert, just not new people.
RC-ROAS carrying the blended number. Ask whether paid spend deserves credit at all. A lot of repeat purchases happen regardless of ads, driven by email and SMS flows. Check what's happening in Klaviyo before assuming the ad dollars caused that repeat order.
Benchmark. Many DTC brands hold NC-ROAS to somewhere above 1.5x to 2x before continuing to fund acquisition spend, adjusted for their margin. Below that, you're often paying more to acquire than the first order is worth.
Budget shifts. Use the RC-ROAS trend to decide how much budget moves from prospecting into retargeting or retention. If RC-ROAS keeps climbing while NC-ROAS stalls, that's your cue to rebalance.
Common Mistakes When Measuring This
Trusting the platform's "new customer" label. Meta's estimate is a guess based on its own pixel history, not your full order history. It will call people new who aren't.
Recalculating monthly instead of continuously. A month is long enough for acquisition efficiency to swing hard in both directions. Checking once a month means you find out about a problem four weeks late.
Crediting ads for organic or email-driven repeat purchases. If a customer would have reordered anyway because they got a Klaviyo flow, that revenue shouldn't inflate your RC-ROAS story about ad performance.
Comparing NC-ROAS across channels with different attribution windows. A 7-day click window on Meta and a 30-day window on Google aren't measuring the same thing. Normalize the windows before you compare the numbers, or you're comparing noise.
Get This Split Without Building It Yourself
Blended ROAS tells you if a campaign is profitable today. NC-ROAS and RC-ROAS tell you if it's actually growing the business, or just monetizing customers you already had.
Once you know how to measure new customer vs returning customer ROAS, blended ROAS stops being the number you lead with in a budget meeting. It becomes the summary, not the decision.
Trivas's BI reporting layer builds this split automatically across Shopify, Amazon, and your ad platforms, no manual joins required. If you want to see your own NC-ROAS vs RC-ROAS numbers instead of estimating them in a spreadsheet, start a trial and take a look.
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
Ecommerce Analytics for International Shopify Plus Brands: The BOFU Buying Guide
3 min read
Ecommerce Analytics for a European Shopify Brand Doing $10M
3 min read
Ecommerce Analytics for European Shopify Plus Brands: The BOFU Buyer's Guide