Build a channel grouping taxonomy before you argue about attribution models
A channel grouping taxonomy is an ordered set of rules that maps each raw source and medium pair to one reportable channel, with a named bucket for anything that matches nothing. Rules are evaluated in order and the first match wins, so the order of the rules decides which channel a registration lands in.
Two people are arguing about first touch against last touch. Neither has noticed that the channel report underneath them puts a paid media partnership inside the email row, so whichever model wins, the answer will be wrong in the same way.
A channel grouping taxonomy is the layer beneath every attribution argument, and it is the layer nobody wants to own. It takes the raw source and medium pairs sitting on your registration rows and decides which of eight reportable channels each one belongs to. Get it wrong and every model built on top inherits the error, because the models redistribute credit between channels and the channels were assigned before the model ran.
Eight channels, and why eight
The eight I would use for a B2B show: paid search, paid social, organic search, organic social, email, partner and media, referral, and direct.
Eight is chosen against decisions rather than against tidiness. Paid search and paid social separate because they have different buying teams and different creative cycles. Organic social separates from paid social because one has a budget line and the other does not. Partner and media separates because that spend is negotiated annually and somebody has to defend the renewal. Referral is everything unpaid arriving from another site, and direct is the residue.
Fewer than six channels merges things you decide separately. More than ten gives you rows of forty registrations that swing by half on random variation, and edition on edition comparison stops meaning anything.
Why does rule order decide the answer?
Because the rules are evaluated in sequence and the first match wins, which makes the order a set of priorities you are declaring whether or not you meant to.
Look at how Google writes its own default groups, published in its analytics documentation and current in 2026, which are worth reading before you copy them. The email group matches when the source or the medium is one of email, e-mail, e_mail or email with a space. The paid search group requires the source to be in Google's list of search sites and the medium to match a pattern that accepts ppc, retargeting, anything starting with paid, and anything containing the letters cp. The direct group requires the source to be exactly (direct) and the medium to be (not set) or (none).
Two things follow. That paid search pattern takes any medium containing the letters cp, so cpm and cpa land there too, which is fine until somebody tags a display buy with cpm and a search source. And no default grouping anywhere can know that techweekly.com is a media partner you pay, because that fact lives in a contract rather than in a url.
So the partner newsletter arrives tagged with a source of techweekly and a medium of email. The email rule sits above the partner rule. Every one of those registrations is counted as email, and it stays that way for five editions because the number looks plausible.
Working the ordering problem
One edition, 6,400 registrations. The email channel shows 2,100. The partner and media channel shows nothing, which nobody queries because the partner links were tagged and somebody remembers tagging them.
Reorder the rules so the partner rule runs first, testing the source against a list of partner domains held in one place. Now 480 registrations move. Email falls to 1,620, a drop of 22.9 per cent, and partner and media goes from zero to 480.
The commercial consequence is the reason to care. The partnership cost 12,000 for the edition. Before the reorder, that spend delivered no measurable registrations and the renewal conversation would have been short. After the reorder, it delivered 480 registrations at 25.00 each, which is a number the person defending the renewal can actually use. Nothing about the campaign changed. The rule order changed.
The general principle: order rules from most specific to most general. Named partner domains first, then paid mechanisms, then owned mechanisms, then platform families, then the catch alls. Every rule you write should be tested against the pairs it steals from the rule below it.
The paid and organic split has the same shape and bites harder, because it decides which registrations get a cost attached. A source of linkedin with a medium of paid_social is paid social. The same source with a medium of referral, written by the analytics tool from a referrer rather than by a person building a link, is organic social. Both look like linkedin in the source column, and a rule that keys on source alone will price your organic reach as though you bought it, deflating every cost per registration figure the media team reports.
Effective dating is what keeps all of this honest between editions. When a rule changes, the historic reports built on the old rule do not agree with the new ones, and somebody will notice in the worst possible meeting. Storing a valid from date against each mapping lets you rebuild a prior edition's channel report under either rule set and say which comparison you are making. Restating history quietly is what turns a reporting layer into something people stop trusting.
The default rule nobody writes
Every taxonomy needs a rule at the bottom that catches everything, and it must have a name that appears on the report.
The temptation is to send unmatched pairs to other, or to fold them into direct, or to leave them out of the chart. All three hide the same thing, which is that your rules do not describe your traffic. A named unclassified bucket that appears on the report with a count against it is a data quality signal you get for free every week.
The size of that bucket is the thing to watch rather than its contents. Unclassified at 2 per cent is a normal tail of oddities. Unclassified at 14 per cent means a campaign went live with tags nobody told you about, and it usually appears within a week of the agency starting something new. Tracking that percentage as a metric each edition is B11's subject, and the taxonomy is what makes it computable at all.
Running the review queue
The taxonomy is a living object because your marketing keeps inventing sources. It needs one query and ten minutes a week.
The query returns every source and medium pair seen in the last seven days that has never been seen before, with a count. Most weeks it returns a handful of rows with two registrations each, and you ignore them. Occasionally it returns a pair with 300 registrations against it, and that is the week to find out who bought what.
Add rules by exception and never retrospectively rewrite the raw values, which belongs with the tagging vocabulary that B1 covers. Keep the mapping as data rather than as code, in a table with an effective date, so that a rule change is a row somebody can see rather than a deployment nobody remembers. When the channel mix moves between editions, the first question is whether the rules moved, and a dated mapping table answers it in seconds.
One taxonomy across the portfolio, or one per show?
One, with local exceptions held as data rather than as separate logic.
UFI's Global Exhibition Barometer, 36th edition, released on 29 January 2026, was built with 33 collaborating associations on responses from 378 companies across 57 countries and regions, and it reports results at the level of the operating company: 47 per cent of respondents saw activity in their domestic market up by more than 5 per cent in 2025, and 31 per cent reported operating profit up by more than 10 per cent. Those are company level readings, and a company level reading of acquisition needs the same treatment.
If each show maintains its own channel definitions, the portfolio roll up is arithmetic on incomparable rows, and the group marketing director's question about where registrations come from across eight shows cannot be answered without a week of reconciliation. The partner list differs by show, the search platforms differ by region, and both of those are lookup tables rather than different taxonomies.
Where a taxonomy stops
A taxonomy labels what arrived. It cannot repair a registration whose source column is empty, and it has no opinion about which touch deserves credit when a person saw four things before registering.
It is also a set of choices dressed as a standard. Somebody decided that a review site linking to your agenda is referral rather than partner, and somebody else will disagree in a meeting. The fix is a written definition next to each channel saying what belongs in it, so the argument happens once.
The largest limit is the direct channel, which in most registration files is the biggest row on the report and is four different things wearing one label, as B8 works through. A taxonomy that sends 30 per cent of registrations to direct has not classified 30 per cent of your acquisition, it has named the part it could not classify, and the honest report says so on the slide. The rest of that bucket, the part with no source at all, is B7's decomposition.
Take your current edition and list every distinct source and medium pair with a count, then map each one to a channel by hand in a spreadsheet, ordered most specific first. It usually takes under two hours and it produces the rule set as a by product. The pairs you argue about while doing it are exactly the ones your acquisition and attribution reporting has been silently guessing at.
Questions people ask about channel grouping taxonomy
- How many channels should an event channel grouping have?
- Eight is a workable number for a trade show: paid search, paid social, organic search, organic social, email, partner and media, referral, and direct. Fewer than six hides decisions you make separately, and more than ten produces rows so small that edition on edition comparison becomes noise. Anything unmatched goes to a ninth bucket named unclassified.
- Why does a partner newsletter show up as email?
- Because the rule that tests the medium runs before the rule that tests the source. A partner newsletter tagged with a medium of email matches the email rule first and never reaches the partner rule. Moving the partner rule above the email rule fixes it, and the same registrations then appear against the partner deal that paid for them.
- Should you use the default channel groups from your analytics tool?
- Use them as a starting point and expect to replace several. Default groupings are written for general websites and cannot know which domains are your media partners, which sources are exhibitor driven, or how your show tags its own email. The definitions are published, so read them before deciding which ones to keep.
Related reading
- The utm tagging conventions that survive five editions of one show
- What to do with the unattributed registrations sitting in your file
- Direct traffic registrations are four different problems wearing one label