Campaign attribution: from UTM tags to a budget decision
Fix the tags first, then read the Unassigned share, then ask whether the campaign's order count is big enough to act on. GA4 treats UTM values as case sensitive and sorts channels by fixed rules.
By Joris van Huët, Founder & CEOPublished 4 min read
Run the numbers for your store: the free UTM builder.
A campaign-level number is only as good as its tag, and GA4 treats parameter values as case sensitive, so utm_source=google and utm_source=Google are different rows. Fix the tags first, read the Unassigned share second, and only then ask whether the number is big enough to act on: in 25 field experiments with major US retailers and brokerages, the median confidence interval on return on investment was over 100 percentage points wide (Lewis and Rao, Quarterly Journal of Economics, 2015).
What makes a UTM tag reliable?
Google's guidance is short. Always use utm_source, utm_medium and utm_campaign; missing UTM parameters result in (not set) values in reporting. Keep one unique medium per channel, such as paid_social, and one unique campaign name that matches the exact campaign name, which stops a single effort from splitting into several rows. Use lowercase as a standard, because SpringSale and Spring_Sale are considered distinct.
Auto-tagging adds a wrinkle. If you use manual and auto-tagging together, GA4 uses the auto-tagged values for source, medium and other traffic-classification dimensions, and where the click ID can't be used but any UTM parameter is present, it derives all source dimensions from the UTM parameters alone. So if you set one UTM parameter, set all the relevant ones.
Which channel does a tag land in?
GA4's default channel group sorts traffic by rules that aren't case sensitive and can't be edited. Paid Social needs a social source and a medium matching ^(.*cp.*|ppc|retargeting|paid.*)$, which cpc and paid_social satisfy. Organic Social accepts a social source or a medium of social. An ad tagged utm_medium=social therefore lands in Organic Social, whatever was spent on it.
How much of your traffic lands in Unassigned?
Google defines Unassigned as the value used when no channel rule matches the event data, and it describes (other) as an aggregated row caused by cardinality limits. Read both: open Reports, Acquisition, Traffic acquisition, divide Unassigned sessions by total sessions, and open the row to see which source and medium sit behind it. A clean scheme leaves little to explain.
When is a campaign number too noisy to act on?
A campaign number is too noisy to act on when its normal week-to-week swing is larger than the change you want to detect. Lewis and Rao also report that individual-level sales are very volatile, with a coefficient of variation of 10 common, and that informative experiments can easily require more than 10 million person-weeks. For illustration: if orders arrive at random, a campaign credited with 16 orders a week has a typical swing of about 4 orders from chance alone, because the square root of 16 is 4, and 4 is 25% of 16. The smaller the count, the larger that share, and real order counts swing more than chance alone.
How do you audit your tags in one sitting?
- Export. Take the last full quarter of session source, medium and campaign from Traffic acquisition.
- Sort. Put campaign names in order and mark names that differ only by case, separators or spelling.
- Land. Paste each paid link into the UTM builder and GA4 channel checker, or click it once and read the channel GA4 assigns.
- Count. List weekly credited orders per campaign from Shopify's Performance by UTM campaign report, then divide each campaign's highest week minus its lowest week by its average week.
Pass: one name per campaign, every paid link in the channel you intended, and a weekly range smaller than the change you want to detect. Fail: variants of one campaign, rows in Unassigned, or a range larger than the change, in which case the campaign number can't carry the decision and you step up to the channel level.
Sources, 30 September 2026: URL builders: Collect campaign data with custom URLs, Traffic-source dimensions, manual tagging, and auto-tagging and Default channel group (Google, Analytics Help); Marketing reports (Shopify Help Center); The unfavorable economics of measuring the returns to advertising (Lewis and Rao, Quarterly Journal of Economics, 2015, peer-reviewed).
Related answers
Frequently asked questions
Are UTM parameters case sensitive in GA4?
Yes. Google says parameter values are case sensitive, so utm_source=google and utm_source=Google are different values, and SpringSale and Spring_Sale are distinct campaigns. Google's guidance is to use lowercase as a standard.Why is my paid social traffic showing as Organic Social?
GA4's default channel group counts traffic as Paid Social only when the medium matches its paid pattern, such as cpc, ppc, retargeting or paid_social. A medium of social lands in Organic Social. Retag the ad links, then check the channel column.How much Unassigned traffic is acceptable?
Treat any fixed target with suspicion. Unassigned means no channel rule matched the event data, so aim to name the source and medium behind every Unassigned row and fix the tags behind the largest ones first.
Go deeper: Incrementality testing, explained.
Sixty-second versions of these ideas: Causality Engine on YouTube Shorts.
Keep reading
Terms in this article
- AnalyticsAnalytics is the systematic computational analysis of data. It reveals customer behavior and measures campaign performance.
- Confidence IntervalConfidence Interval is a statistical range of values that likely contains the true value of a metric. In marketing analytics, it quantifies uncertainty around estimates, indicating the precision of an outcome or causal effect.
- ExperimentsExperiments are scientific procedures that test hypotheses or demonstrate facts. In marketing, experiments like A/B tests determine the causal effect of campaign changes, enabling data-driven decisions.
- MatchingMatching is a statistical technique that reduces bias in observational studies. It pairs treated subjects with similar control subjects.
- RetargetingRetargeting is online advertising that targets users who have previously interacted with your website or content. Attribution analysis shows the causal role of retargeting in driving conversions and improving ad spend.
- SessionA Session is a group of user interactions with your website within a given timeframe. It can include multiple page views, events, and transactions.
- ShopifyShopify is an ecommerce platform for creating online stores and selling products. Attribution modeling shows which marketing channels drive traffic and conversions within Shopify.
- UTM ParametersUTM Parameters are URL tags marketers use to track campaign effectiveness across traffic sources. They provide data for accurate campaign tracking and attribution in analytics platforms.