Two Dashboards, Two Truths
Loomis Home Fitness sells treadmills and rowers direct. Last month Google Ads reported 640 conversions against $61,400 spend (a 4.8 ROAS), GA4 reported 410 conversions from paid search, and Shopify recorded 455 orders for $129,000 in revenue. The campaign URLs are inconsistent: some use utm_source=facebook, others facebook-ads or FB, and the branded search campaign carries no UTMs at all. Conversion tracking also differs - Ads counts a 'begin checkout' event as a conversion while GA4 counts purchase only. Ads uses a 30-day window; GA4 uses 30 days but models consent-denied traffic, which is roughly 25% of sessions. The CFO sees a blended marketing efficiency ratio of 2.1 and wants to cut paid spend by 30%.
1. Explain why the three numbers differ and identify the defensible source of truth for orders.
Read the worked answer
All three are measuring different events. Google Ads at 640 is counting 'begin checkout' plus purchase, so it inflates by design; it also includes modelled conversions for users who declined consent, which never appear in analytics. GA4 at 410 is purchase-only but undercounts: consent-denied and ad-blocked sessions produce no identifier, the branded campaign with no UTMs lands in direct or organic rather than paid search, and cross-device journeys break. Shopify at 455 is the only figure that reflects money received.
Shopify is the source of truth for order count and revenue; it is not a source of truth for channel, because it cannot tell you which click caused the order. The reconciliation uses Shopify as the anchor and asks whether the analytics gap is explainable: a 410 versus 455 gap of about 10% is within the range that consent denial and tagging gaps produce, but that tolerance has to be checked campaign by campaign rather than assumed.
Practical rule: use Shopify revenue for reporting and finance, use platform data for in-flight optimization only, and fix the tagging before drawing any channel conclusion, because part of the apparent paid-search shortfall is branded traffic being filed as direct.
2. The CFO wants a 30% cut. What analysis do you present, and what would you refuse to defend?
Read the worked answer
Do not defend the 4.8 ROAS; it counts checkout starts and will not survive scrutiny. Start with margin. A MER of 2.1 means $2.10 of revenue per $1 of marketing spend; if gross margin is 40%, break-even MER is 1 ÷ 0.40 = 2.5, and the business is already spending past the point of profitability on a fully loaded basis. If margin is 60%, break-even MER is 1.67 and the spend is defensible. So the first deliverable is the gross margin figure and the break-even MER, not a channel argument.
Second, measure incrementality rather than attribution. Run a geo holdout: pause the weakest 20-30% of spend - typically non-brand prospecting - in matched markets for four weeks, and compare total Shopify revenue in test versus control markets. That yields marginal cost per order, the number that answers 'what happens if we cut 30%?' Cutting the least incremental spend first may cost far less revenue than the flat percentage implies.
Present the answer as a range with a decision rule: cut in tranches, hold four weeks, measure total revenue and margin, continue or stop. Refuse to defend platform ROAS as a measure of truth.
3. Write the UTM standard and the QA step you would put in place.
Read the worked answer
Standard: every paid or owned URL uses exactly five parameters - utm_source, utm_medium, utm_campaign, utm_content, utm_term - all lowercase, hyphenated, no spaces, no mixed cases. utm_source is the platform (google, meta, klaviyo, newsletter); utm_medium is the channel type (cpc, paid-social, email, organic-social); utm_campaign follows a year-quarter-objective pattern such as 2025-q3-brand-search. Enforce a picklist in a shared spreadsheet so nobody types a free-form value; the current facebook / facebook-ads / FB spread is exactly what happens without one.
Tag branded search campaigns. The absence of UTMs there is actively corrupting the direct channel and making paid search look weaker than it is.
QA before launch: open every ad URL with a redirect checker to confirm the final URL survives the click, check the real-time report in analytics for each new campaign, and verify that no parameter is duplicated. QA monthly: audit the source/medium report for anything not matching the picklist, and reconcile paid platform clicks against analytics sessions within a stated tolerance. Treat UTM discipline as a launch checklist item with an owner, not a convention people are trusted to remember.