What a new customer really costs.
The most flattering number in ecommerce reporting is the one that counts your loyal customers as acquisitions. The least comfortable is the one growth actually depends on.
Who did you actually pay for last month?
Every ecommerce brand past its first year has a quiet partner in its ad account: the customers who already love it. They open the email, search the brand name, click the retargeting ad, and buy. The ads get the credit. The ROAS looks excellent. And a meaningful share of that revenue would have arrived with no ads at all.
That is not a scandal. It is how attribution works. But it means blended ROAS is partly a measure of your brand, not your media. If you want to know whether the ads are growing the business, you have to separate the people you acquired from the people you merely reminded.
Two numbers that look alike and are not
Cost per purchase divides spend by every order. New-customer CAC divides spend by first-time buyers only. The same split applies to return: blended ROAS credits all attributed revenue, while new-customer ROAS credits only revenue from first orders.
Here is a month as arithmetic. $40,000 of spend, $160,000 of attributed revenue, a 4.0x ROAS, and 800 purchases at $50 each. Matched against the customer list, 300 of those buyers were new, and they spent $54,000 between them.
| Metric | Blended | New customers only |
|---|---|---|
| Revenue | $160,000 | $54,000 |
| ROAS | 4.0x | 1.35x |
| Buyers | 800 | 300 |
| Cost per buyer | $50 | $133 |
Nothing about the account changed between the two columns. The first column describes the whole business passing through the ads. The second describes what the ads bought. If the first order carries $45 of contribution margin, every new customer starts about $88 underwater, and the plan relies entirely on them coming back. That may be a fine plan. It is a different plan from the one a 4.0x ROAS implies.
Why the pixel cannot do this alone
Ad platforms and pixels do offer a new-versus-returning view, and it is better than nothing. But a pixel can only call someone new if it has never seen them. Anyone who last bought on another device, before the pixel was installed, before they cleared their cookies, or through a marketplace reads as new. The error runs one way. Pixel-based new-customer figures are structurally optimistic.
Your customer list does not have that problem, or at least has much less of it. Match purchases against the people who have bought from you before, using email and phone identifiers hashed on the way in, and each sale can be classified as new, returning, or not yet identifiable. Google’s customer lifecycle goals work on a similar idea inside Google Ads, using your uploaded lists. The advantage of doing it on your own data is that the same classification applies to every platform.
The horizon problem
A customer list is only as long as its memory. If your records start two years ago, a customer who last bought three years ago looks new. So does anyone whose details changed. The honest way to handle this is to state when the history begins and to treat unmatched purchases from before that date as unknown, not as acquisitions.
This matters more than it sounds. The easiest way to manufacture a flattering new-customer number is to count every unmatched buyer as new. The number looks rigorous, carries a decimal point, and is wrong in the direction everyone wants.
How to build the split
You do not need new software to start. You need your customer list, a consistent way to match, and the discipline to label what you cannot see.
- Export every customer who has ever bought, with their email, phone, and the date of their first order if your store records it.
- Normalize and hash the email and phone identifiers, so the list can be matched without handling raw personal details any more than necessary.
- Write down the date your history begins. That is the earliest order your records reliably include.
- Match each purchase in the period against the list. A purchaser whose first known order is earlier than this purchase is returning. A purchaser with no earlier order, after the history date, is new. Anyone you cannot identify, or anyone before the history date, is unknown.
- Report new-customer CAC and new-customer ROAS by channel, with the unknown share printed beside them. A large unknown share is a tracking problem to fix, not a number to hide.
The first pass is usually humbling. It is also the most useful report most brands have never seen, because it separates the work the ads are doing from the work the brand has already done.
When a low new-customer ROAS is the right answer
A new-customer ROAS below 1.0x sounds alarming. It can be a perfectly sound plan, if the business knows what those customers do next.
Take the example above. Each new customer costs $133 and brings $45 of first-order contribution margin, so they start $88 short. If the brand’s own cohort history shows a typical new customer placing two more orders within six months at a similar margin, that is $90 more, and the customer pays back in about six months. Whether that is acceptable depends on cash, not on a benchmark. A brand with plenty of runway might accept it. A brand that needs payback inside ninety days cannot.
The point is not that any particular number is good. It is that the decision can only be made with the new-customer figure and a measured repeat rate. Blended ROAS answers neither question.
Subscription brands have the same problem, earlier
For a consumer subscription, the equivalent split is between new subscribers and people restarting, upgrading, or buying add-ons. A first-box discount can produce a flattering cost per subscriber that says nothing about month two. Judge acquisition on new subscribers matched against your own records, and on how many are still paying after the second and third billing cycle.
Where the unknown share comes from
Every honest version of this report has a third column, and the size of that column tells you where to work next. Unknown purchases usually come from a handful of places, and most of them can be reduced.
- Guest checkout without a captured email. If the store takes orders with no identifier the list can match, those buyers can never be classified.
- A customer list that starts late. Purchases from people whose history predates your records are unknown by definition, and a deeper export fixes them.
- Orders from marketplaces or wholesale channels that never pass through your store’s customer records.
- Tracking that loses the connection between the ad click and the order, so the purchase cannot be tied to a channel even when the customer is known.
A falling unknown share is progress even if the new-customer number gets less flattering along the way. Usually it does, because the easiest mistakes to fix are the ones that were counting returning customers as new.
What changes when you can see it
- Retargeting and brand search stop being judged on blended ROAS. They are often doing useful work, but the new-customer split shows how much of their performance belongs to the brand.
- Prospecting gets a fair hearing. A campaign with a mediocre blended ROAS and a strong new-customer ROAS may be the one actually growing the base.
- Budget increases get a real test. If extra spend raises revenue but new-customer counts stay flat, the money is renting loyalty, not buying reach.
- Payback becomes a plan instead of a hope. With first-order margin and measured repeat behavior by cohort, you can say when a customer pays back, and the CAC payback calculator turns that into months.
What to ask for
Ask whoever runs your ads for new-customer CAC by channel, measured against your customer list, with the date your history begins written next to it. If they can only give you the platform column, ask how it defines new. If nobody has ever asked for your customer list, that is the gap.
It is one of the fourteen questions your agency should be able to answer, and in my experience the one that changes the most decisions once it has an answer. The number is rarely comfortable. It is almost always useful.
What is a good new-customer CAC?
There is no universal figure. A good new-customer CAC is one the business can recover from first-order contribution margin plus measured repeat purchases within a payback period it can afford. Work it out from your own margin and repeat behavior rather than from a benchmark.
How is new-customer ROAS different from ROAS?
ROAS credits all attributed revenue, including purchases from existing customers. New-customer ROAS credits only revenue from first-time buyers. The gap between the two shows how much of the reported performance comes from customers the business had already won.
Can I trust the new customer column in Meta or Google Ads?
Treat it as optimistic. A platform or pixel calls someone new when it has not seen them before, so past buyers on other devices or from before tracking began are counted as new. Matching purchases against your own customer list is more conservative and applies the same rule across every platform.
How far back does my customer list need to go?
As far as your records reliably reach, and you should state the start date wherever the numbers are shown. A deeper history catches more returning customers. For brands where people buy once or twice a year, two or more years of history makes a noticeable difference.
Do I need to share raw customer emails with anyone to do this?
No. Emails and phone numbers can be normalized and hashed before matching, which is also how ad platforms accept customer lists. The match works on the hashed values.
Written by Sam Nouri, founder, adsrunner. If this resonated and you want to apply it to your own account, you can book a strategy call or run a free audit.
How we research, source figures, and handle corrections: editorial policy.