I Don't Know Which of My Marketing Channels Is Actually Making Money

Add up the revenue Meta claims, plus what Google claims, plus what your email platform claims.

You will get a number larger than what Shopify recorded. Sometimes considerably larger.

This is not a bug in any of those platforms. It is what happens when several systems each measure influence over the same purchase and each report it as a conversion they drove. Nobody is lying. Everybody is counting.

The practical consequence is that you cannot allocate budget from those dashboards, because the thing they are reporting is not the thing you need to know.

Why the Numbers Don't Add Up

Three mechanisms, all working at once.

Every platform claims the full sale. A buyer sees your Meta ad on Monday, searches your brand on Wednesday, clicks a Google ad, and buys. Meta counts that as its conversion. Google counts it as its conversion. Neither is wrong within its own model. You made one sale.

View-through conversions inflate Meta specifically. Meta's default window counts purchases within 7 days of a click or 1 day of a view. Someone who scrolled past your ad without clicking, then bought later that day through any route, is credited to Meta.

Your analytics undercounts while the platforms overcount. GA4 loses events to ad blockers, consent declines, and session breaks at payment gateways. So you have platforms claiming too much and GA4 claiming too little, and the gap between them is where the budget argument lives.

Our explanation of why Meta and GA4 never show the same number covers the mechanics in detail.

Start With the Number That Cannot Lie

Before fixing attribution, get a figure that no platform can inflate.

MER (Marketing Efficiency Ratio) = total revenue ÷ total ad spend

Both numbers come from outside the ad platforms. Revenue from Shopify. Spend from your card statements or ad account billing. There is no attribution model involved, so nothing can be double-counted.

Typical operating ranges, though these shift by category and margin:


MER

What it suggests

3.0 and above

Efficient. Room to scale.

2.0 – 3.0

Workable. Optimise before scaling.

Below 2.0

Spend structure needs rethinking.

MER will not tell you which channel is working. What it will tell you is whether your marketing in aggregate is efficient — which matters more than any single platform's ROAS claim, and which prevents the situation where every dashboard looks green and the bank balance does not move.

Track it weekly. If platform ROAS is rising while MER is flat, the platforms are getting better at claiming credit rather than driving sales.

The Only Way to Know For Certain: Turn It Off

Attribution models estimate. Incrementality tests measure.

The question an incrementality test answers is the one you actually care about: if I switch this channel off, does revenue drop?

If the answer is no, that channel was not creating sales. It was claiming sales that would have happened anyway.

Three ways to run this without a third-party platform:

Geo holdout. Switch a channel off in two or three comparable cities for two to four weeks. Compare revenue there against similar cities where it kept running. The difference is your real lift.

Audience holdout. Exclude a percentage of your retargeting audience and watch whether their purchase rate differs. Retargeting is where over-attribution is most severe, because those people already intended to buy.

Spend reduction. Cut one channel's budget by half for three weeks and watch total revenue, not that channel's reported revenue. If total revenue holds, you just found savings.

Two things to expect. Incremental ROAS always comes out lower than platform ROAS — that is honest measurement, not a performance drop. And tests need real runtime, typically two to four weeks with enough volume to read a signal.

Start with retargeting. It is almost always the most over-credited line in the account, and it is the cheapest test to run.

What to Do at Your Stage

The right approach depends on how much you are spending, because the effort has to be proportionate.

Early stage, one or two channels. Track MER weekly. Use platform numbers to compare creative and campaigns within each platform, never across them. Do not buy an attribution tool yet.

Growing, three or four channels. Add a post-purchase survey asking "How did you hear about us?" It is imperfect, and it is the only signal that captures WhatsApp forwards, word of mouth, and offline conversations that no pixel will ever see. Run one incrementality test per quarter on your largest channel.

Scaling, significant spend across many channels. This is where a third-party attribution tool starts earning its cost, and where a simple regression of daily spend against daily revenue by channel begins to produce useful signal.

The pattern across all three: platform numbers for tactical decisions inside a platform, MER and incrementality for budget decisions across platforms. Nobody in 2026 treats platform-reported attribution as source of truth.

Fix the Cheap Leaks First

Before any of the above, close the gaps that are quietly misattributing revenue. These are fixable in an afternoon.

Payment gateway referral exclusions. When a buyer returns from Razorpay, Cashfree, or a UPI app, GA4 starts a new session and credits the purchase to the gateway rather than the campaign. Add every gateway domain under Admin → Data Streams → Configure Tag Settings → List Unwanted Referrals.

Untagged WhatsApp and influencer links. These land in direct / none, so channels that are genuinely working appear to drive nothing. A UTM-tagged link survives a WhatsApp forward perfectly well, the traffic goes dark only when the link was never tagged. Our guide to WhatsApp and influencer attribution covers the fixes.

Tighten Meta's attribution window. Switching retargeting campaigns from the default 7-day click / 1-day view to 1-day click / 0-day view will deflate reported ROAS sharply. That lower number is closer to the truth.

Reconcile monthly. Pull Shopify revenue, GA4 revenue, and each platform's claimed revenue into one sheet every month. Document the expected variance. Once you have a baseline, you are watching for changes rather than re-investigating from scratch. Our guide to reconciling Meta, GA4, and Shopify covers the process.

Two Things Indian D2C Brands Have to Add

WhatsApp is a real channel and usually invisible. Order nudges, restock alerts, abandoned cart messages, and campaign blasts all drive revenue that shows as direct traffic unless every link carries a UTM. For many brands this is a meaningful share of attributed revenue sitting in the wrong bucket.

RTO makes revenue figures optimistic. Neither your ad platforms nor GA4 deduct returned orders. If a channel drives a high proportion of COD orders that come back, its reported ROAS looks fine while its contribution to delivered revenue is far lower.

This one matters for channel decisions specifically. Measure RTO rate by traffic source. You will usually find one or two channels producing far more returns than the rest and reallocating away from them improves profit without touching conversion rate at all. Our post on RTO as a measurement problem covers how to track delivered orders rather than placed ones.

The Monthly Routine

Twenty minutes:

  1. Calculate MER - Shopify revenue ÷ total ad spend

  2. Log each platform's claimed revenue in the same sheet

  3. Sum the claims and compare against actual revenue, note the over-claim

  4. Check whether your variance moved from last month

  5. Review post-purchase survey responses for channels your tracking cannot see

  6. Once a quarter, run one incrementality test on your largest line item

What you are building is not perfect attribution. It does not exist. You are building a stable baseline, so that when something changes you notice it, and a way to check the platforms' claims against reality a few times a year.

The Honest Answer

You will never know with precision which channel drove which sale. Anyone selling you that certainty is selling a model, and every model has assumptions baked into it.

What you can know: whether your marketing in total is efficient, whether a given channel produces real lift when tested, and which channels you are systematically over-crediting. That is enough to allocate budget well.

The founders who get this right are not the ones with the best dashboard. They are the ones who stopped trusting platform ROAS as truth and started checking it against revenue that actually landed.

If your reconciliation is drifting or your reported numbers do not tie back to Shopify, start there, nothing above works reliably until it does. Our pre-CRO data audit guide covers the full validation sequence.

Can't tell which channels are actually working? Talk to FunnelFreaks, we reconcile your platforms against real revenue and fix the attribution gaps sending credit to the wrong places.