Skip to content

How to calculate blended ROAS, step by step

Take one month of Shopify net sales from the channel your ads sell through, add that month's spend from every ad platform and divide. Then repeat the sum for first-time customers only, and set both results against the sales the platforms claimed.

By , Founder & CEOUpdated 8 min read

Run the numbers for your store: the free blended ROAS (MER) calculator.

Usually in four moves. Take one month of Shopify sales from the channel your ads sell through. Add that month's spend from every ad platform and divide. Then repeat the sum with first-time customers' sales only, and set both against what the platforms claimed. Each result answers a different question.

The division is the easy bit. Collecting one honest month from four dashboards takes the rest of the morning.

Step by step

  1. Filter Shopify's sales to the channel your ads sell through. The Total sales over time report includes every sales channel, so a shop till or a wholesale order would pad the top line. Add a Sales channel filter set to Online Store, then pick last month in the date range. Menu path: Analytics > Reports > Total sales over time > Filters > Sales channel > Online Store.
  2. Read net sales and say so. Net sales is gross sales minus discounts and sales reversals. Total sales stacks taxes, duties, shipping and fees on top, none of which your ads earned. Menu path: the same report, with a Net sales column added if it is not showing.
  3. Total your Google Ads cost for the same month. Open All campaigns under the Campaigns icon and set the date range by hand. Its default view covers the last 30 days, which is rarely the calendar month you want. Menu path: Campaigns icon > Campaigns > date menu > totals row at the bottom of the table, Cost column.
  4. Add Meta's amount spent and its claimed sales. In Ads Manager, click Campaigns, open the Columns drop-down and choose Customize columns. Tick Amount spent and Purchases conversion value, then save them as a column preset. Menu path: Ads Manager > Campaigns > Columns > Customize columns > Save as a column preset.
  5. Gather every other platform's spend in one place. GA4 can pull Meta and TikTok campaign costs into its Ads cost metric, next to linked Google Ads costs. Both connectors want your paid traffic tagged with one utm_source and one utm_medium per platform. Menu path: GA4 Admin > Product links > Meta Links or TikTok Links > Link.
  6. Divide. Blended ROAS is net sales from step 2 divided by the total spend from steps 3 to 5. The free blended ROAS calculator shows the working if you would rather not. Menu path: none, this step is arithmetic.
  7. Repeat it for first-time customers only. Shopify's Customer cohort analysis groups customers by the date of their first order. Set the Metric menu to net sales and read the first-orders column in last month's row. Divide that by the same spend. Menu path: Analytics > Reports > Category > Customers > Customer cohort analysis > Metric > Net sales.
  8. Add up what the platforms claim. In Google Ads, add Conv. value from the Conversions columns. Take Meta's Purchases conversion value from step 4, plus any other platform's claimed sales. Set the total against Shopify's net sales. Menu path: Google Ads > Columns > Modify columns > Conversions.
  9. Hold both ratios against your break-even line. Divide 1 by your margin after product, shipping and payment costs. Shopify's Gross profit by product report supplies the margin side, for products with a cost recorded when they sold. Menu path: Analytics > Reports > Category > Profit Margin > Gross profit by product.

A worked example

For illustration, here is one invented month in round numbers.

Line (invented)Amount
Shopify net sales, Online Store€90,000
Net sales from first orders€36,000
Google Ads cost€12,000
Meta amount spent€9,000
TikTok spend€3,000
All ad spend€24,000
Google Ads conversion value€51,000
Meta purchases conversion value€42,000
TikTok claimed value€9,000

In this worked example, blended ROAS is €90,000 divided by €24,000, or 3.75. In this worked example, first orders brought €36,000, so the new-customer version is 1.5.

Now the claims. In the worked example, the three platforms claim €102,000 between them, €12,000 more than the store sold. So in this worked example, at least €12,000 of sales sits in two claims at once. It is more if some buyers came with no ad at all.

One store's export shows the same habit inside GA4. Its touched view sums to 110.4% by design (Channels sheet): a journey that touched two channels counts in both. Every tool that gives full credit to each touch will add up to more than the till.

Then the line. One store's Break-even sheet does the arithmetic for a 40% margin: 1 divided by 0.40 is 2.5x. In this worked example, blended ROAS of 3.75 clears 2.5x with room to spare, and the new-customer figure of 1.5 does not.

That is not a verdict on the ads. If your margin is 40%, first orders alone cannot pay for the spend, so repeat orders have to. The later columns of the same cohort row show whether those customers come back.

What should I check when the numbers look wrong?

  • Shopify's Growth page shows no cost for Google or Meta. That is by design. Shopify's help says Facebook and Google campaigns show no cost or ROAS there. It sends you to Meta Ads Manager or your Google campaigns account instead.
  • The platforms claim less than the store sold. That does not clear them. Sales no ad touched can fill the gap while two platforms still share an order.
  • GA4's return on ad spend sits far above yours. GA4 divides the revenue for your selected key events by the ad costs it knows about. If Meta or TikTok costs never reached it, the bottom of its fraction is too small.
  • GA4's ad cost doubled after a connector went live. Google's help warns that the TikTok connector next to older manual cost uploads can duplicate data, because Analytics does not de-duplicate the two. Delete the old upload for the overlapping dates.
  • Google Ads and GA4 disagree about the same month. GA4 reports in the property's time zone and Google Ads in the account's time zone. If the two differ, sales near midnight on the last day can land in different months.
  • Meta's spend moved after you copied it. Meta describes amount spent as an approximate total. Copy it again a few days after the month closes, then freeze the month.
  • The new-customer sales look too high. You may be reading period 0, which holds the same customers' repeat orders in their first month. Use the column for first orders.

What to do this week

  1. Fill in three months, not one. Run steps 1 to 8 for each of the last three months, with the same definitions every time. Pass: blended ROAS, new-customer blended ROAS and the claim total sit side by side for each month. Fail: a single month, which gives you a level but no direction.
  2. Connect Meta and TikTok costs to GA4. In GA4 Admin, under Product links, open Meta Links or TikTok Links and click Link. Pass: Advertising > Planning > All channels shows Ads cost on your paid social rows. Fail: Ads cost still covers Google Ads only, so GA4's ROAS divides by part of your spend.
  3. Turn the claim total into shares. Divide each platform's claimed sales by Shopify's net sales for the same month. Pass: the shares add up to well under the whole, leaving room for sales no ad touched. Fail: they add up to more than the whole, so at least the excess is counted twice.

Check the homework. Your GA4 Attribution paths export already holds the evidence. Causality Engine reads that one file and shows what each channel caused next to what last-click gave it, in 1 to 2 minutes, for €99 once (excluding VAT), refundable within 30 days. Check the homework

Sources, 1 October 2026: Filtering and editing your reports (Shopify Help Center); Sales reports (Shopify Help Center); Account, campaign, and ad group performance (Google Ads Help); Customize columns in Meta Ads Manager (Meta Business Help Center); Amount spent (Meta Business Help Center); Connect Meta to Google Analytics (Google Analytics Help); Connect TikTok to Google Analytics (Google Analytics Help); Customers reports (Shopify Help Center); About Target ROAS bidding (Google Ads Help); Profit reports (Shopify Help Center); Measuring marketing performance (Shopify Help Center); Select attribution settings (Google Analytics Help); All channels performance report (Google Analytics Help).

Frequently asked questions

  • Where do I find new-customer sales in Shopify?
    In the Customer cohort analysis report. Go to Analytics, then Reports, filter the Category to Customers and open it. Set the Metric menu to net sales: the first-orders column for each month's cohort shows what new customers spent on their first order.
  • Can GA4 calculate blended ROAS for me?
    Partly. GA4's All channels report divides the revenue for your selected key events by the ad costs it knows about. Those are linked Google Ads plus any imported or connected costs. It uses GA4's revenue, not Shopify's, so treat it as a cross-check rather than the figure for finance.
  • Why is my new-customer blended ROAS below break-even?
    Often because first orders are small and repeat orders carry the profit. That is fine if customers come back, which the later columns of Shopify's cohort report show. It is a problem if few return, because then the ads only pay through buyers you already had.

Go deeper: Causal attribution, explained.

Sixty-second versions of these ideas: Causality Engine on YouTube Shorts.

Keep reading

Terms in this article

Browse the full glossary

Your platforms guess.
We run the math.

Upload a GA4 export and see what each channel caused, next to last-click, in 1–2 minutes. The read is yours to keep.

Free, in your browser: your file is not uploaded. The full read is €99, refundable within 30 days. Prices exclude VAT.
Or book a 30-min call.