Channel Groupings
We provide a custom channel grouping to go alongside the default one. Rather than attempt to map closely to the GA4 numbers we've added some additional channel groupings.
Please customise to whatever works for your site!
Where is this in the Pipeline Interface?
What are you setting up here?
This page allows you to customise an extra channel grouping using a case statement.
How does this work?
Channel groupings are created by taking by looking at traffic source fields and applying a set of rules.
This categorisation is based on the:
- Source
- Medium
- Campaign
- Source Category
Our default channel grouping attempts to mimic the default channel grouping in the GA4 interface. (So your numbers match the GA4 interface.)
Our extra channel grouping is an improved version of this. The default channel grouping makes some strange decisions/has some issues and so we have an improved version.
Once you're comfortable that your data is correct, we strongly recommend altering our extra traffic grouping for your website and using that.
How can I alter the extra channel grouping?
On the channel grouping config you'll be able to see our current rules.
We use a case statement to categorise traffic.
You might recognise these from Looker Studio or perhaps you already know what one is.
If you've never seen one before we have a starter guide on case statements here.
Let’s go through some examples of how to adjust it.
Example 1: Adding tiktok to organic social
Let’s adjust the Organic Social categorisation to match more specific sources.
The current conditions are as follows:
How can we add tiktok to this? We can change the first line in this case.
It’s using regexp_contains
to match source against a list of values.
You don’t need to know exactly what this does, you just need to extend the pattern.
We can adjust as follows:
Remember you can always reach out to support if you're struggling to update this.
What are all the fields available for categorisation?
These are all the fields. The first 3 are relatively self explanatory.
- dim__source
- dim__medium
- dim__campaign
Then we move onto these 4. What are they and why are they useful:
- dim__source_category
- dim__campaign_source
- dim__platform_click_id_type
- dim__cross_channel_default_channel_group
dim__source_category
Google has a big list of websites. They've bucketed these into groups and that's what source category is.
So something like this:
- when dim_source_category = 'SOURCE_CATEGORY_SOCIAL' then "social"
Says when you get traffic from a website, check what bucket Google has put that website into. If it's SOURCE_CATEGORY_SOCIAL then return the channel grouping "social".
In the future you'll be able to customise this as well, but that isn't possible at the moment.
dim__campaign_source && dim__cross_channel_default_channel_group
We've listed these together because they're both trying to do the same thing.
If you don't fancy the explanation the TL;DR is:
- Use dim__cross_channel_default_channel_group to see what Google thinks the channel grouping for ad edge cases.
- Probably don't use dim__campaign_source beyond how it is already used, it is harder to use.
- Hopefully you shouldn't have to use either because we've done it for you to fix the paid side.
The history is as follows:
- Google sometimes generates it's channel grouping based on other sources (e.g. adwords)
- They didn't originally export this to BigQuery and eventually started exporting some of this data.
- For example this is how the GA4 interface shows you PPC campaign names, but BigQuery couldn't historically do this.
Why would I want to use the extra channel grouping?
GA4 (and Pipeline) use rules in order to categorise traffic into different default channel groupings.
These groupings, though, can be misleading or sometimes, just wrong.
Example: in GA4 traffic coming from gmail is classified as “Organic Search.” 🤷♂️
Broadly speaking, we think we have some more sensible defaults.
Should you personalise ours/the default channel grouping?
In general, we would say yes.
You know your traffic much better the Engineers at Google who have needed to make channel grouping which are generic for everyone.
We've tried to improve the default channel grouping, but it's still unlikely to perfectly match your unique traffic.
With the GA4 categorisation, many cases:
- The domain classification is wrong.
- Extra channel grouping could improve how your traffic is categorised (i.e a Default Channel for AI).
- You can categorise more specifically your referral traffic.
Do you have a recommended traffic grouping?
Yes above, though do customise it.
How does Google's default channel grouping work?
Pretty much exactly as we've described above and you can see in the case statement.
It runs through a series of rules to categorise traffic.
- The first one which matches will be used.
- The rules are largely based on the medium & source.
For example in order for traffic to be grouped as Organic Social it needs to be:
- Medium is one of (“social”, “social-network”, “social-media”, “sm”, “social network”, “social media”) OR
- The source matches a defined list of sites such as facebook.com etc.
The full list of rules is based on the rules found in this Google Documentation
Channel Grouping FAQs
There are several Channel Groups on GA4 including:
- Organic Search
- Audio
- Organic Social
- Paid Search
- Paid Video
These categories are rule-based.
This means that the traffic medium or source would need to match specific rules.
The easiest way to see what you should update is by looking at your data and looking at the default channel groupings. You can then break down by medium & source to see which ones are being attributed to the wrong channels.
This will likely due to:
- The order of the case statement. Case statements read from top to bottom, so make sure the most important channels are listed first. If you match something twice the first one to match will be selected.