Unassigned Traffic in GA4 and how to fix it
Are you seeing a lot of unassigned traffic in GA4 especially after implementing server-side tracking and don't know how to fix it? Well there are several factors which result in unassigned traffic:
UTM tags (Urchin Tracking Module tags) are like little breadcrumbs you add to the end of your website links. These tags help you understand how people are finding your website and which marketing efforts are most effective. Think of them as labels that allow you to track your website traffic with precision.
The Problem with Missing UTM Parameters
Each UTM tag contains several key parameters:
utm_source: Identifies where your traffic comes from (e.g., Google, Facebook, Newsletter).
utm_medium: Indicates the type of traffic (e.g., CPC for paid search, email, social).
utm_campaign: Specifies the particular marketing campaign or promotion (e.g., summer_sale, product_launch).
When you miss out on including these parameters, you create gaps in your data:
Traffic Misattribution: If you don't tag a link with the correct source and medium, the traffic might get lumped into a generic category like "direct" or "referral." This hides the true origin of those visitors.
Difficulty Analyzing Campaign Effectiveness: Without the utm_campaign parameter, you can't differentiate traffic from specific promotions. This makes it hard to determine which campaigns are driving the most valuable results.
Limited Optimization Opportunities: If you can't see the detailed breakdown of where your traffic is coming from and what's working, you miss out on chances to improve your marketing strategy.
The Solution: Tagging Every Campaign Thoroughly
Make sure to include all relevant UTM parameters on every link you use in your marketing campaigns. This allows you to:
Accurately attribute traffic: Know exactly where each visitor comes from and which marketing channels are working best.
Measure campaign ROI: Calculate the return on investment for individual campaigns to see which ones are the most profitable.
Optimize your marketing strategy: Make data-driven decisions to improve your campaigns and allocate your budget more effectively.
Prioritize firing your GA4 configuration tag (also called the "Google Tag") before any event tags in Google Tag Manager (GTM). The configuration tag establishes the connection between your website and GA4 and sets crucial parameters. If event tags trigger before the configuration tag loads, they may not have access to this information, leading to:
Data Loss: Events may not be tracked or attributed correctly in GA4.
naccurate Reports: Your analytics data could be skewed, making it difficult to make informed decisions.
Solution:
GTM Setup: Configure your GTM tags so the GA4 configuration tag fires first. You can do this using either:
Tag Sequencing: In your GA4 event tags, add the configuration tag as a "setup tag" under Advanced Settings. This ensures the configuration tag fires before the event tag on the page.
Trigger Order: Set the trigger for your configuration tag to a high priority, such as "trytagging_user_data" and place it before the triggers for your event tags.
Verify with GTM Preview: Use GTM's preview mode to test your website and confirm that the configuration tag fires before any event tags on each page. This helps ensure accurate data collection in GA4.
Add page_view parameter to false:
The pageview parameter within your config tag should be set to false. To measure the page_view event, you will have to create a new event tag as “page_view”. Secondly, make sure you don’t have any other page_view tag firing within your GTM web container or directly in the website code.
When you transition to server-side tracking in GA4, it's crucial to disable any client-side tracking that was previously in place. Running both types of tracking simultaneously will lead to the same events being recorded twice, causing:
Data Discrepancies: Your reports will show inflated numbers and inaccurate metrics, making it difficult to understand your website's true performance.
Unassigned Traffic: Duplicate events can create confusion in attribution, making it hard to identify the actual sources of your traffic and conversions.
Solution:
Once you've successfully implemented server-side tracking, follow these steps to prevent duplicate data:
Remove Client-Side Tags: In Google Tag Manager (or your website's code), disable or delete any GA4 tags that were previously set up for client-side tracking. If you’re using Shopify, make sure the GA4 integration is turned off from your Google App and also verify no other app is sending data to GA4. In case of WordPress, remove the GTM4WP or site-kit plugins and remove any tracking codes added directly to the site code.
Review Third-Party Integrations: Check if any third-party tools or plugins are sending data to GA4 on the client side. Disable their GA4 tracking functionality if possible.
Verify Data Collection: After making these changes, carefully monitor your GA4 reports to ensure that events are being tracked accurately and only once.
If your website uses a cookie consent mechanism (e.g., a banner or pop-up asking users to accept cookies), it's crucial to configure your GA4 event tracking to respect user choices. This means:
No Tracking Without Consent: GA4 event tags should not fire or collect any data until the user has explicitly given consent to the use of cookies (particularly those used for analytics or tracking).
Tracking After Consent: Once the user grants consent, your GA4 event tags can start firing and sending data to your GA4 property.
Cross-Domain Tracking: Careful Configuration for Seamless Measurement
In server-side tracking, accurately measuring user journeys across multiple domains can be a bit more complex than with client-side tracking. If not implemented correctly, you might encounter issues where:
Sessions Split: A single user session could be fragmented into multiple sessions, one for each domain they visit.
Unassigned Traffic: Conversions and other events might not be attributed to the correct source or campaign if the user moves between domains.
Inaccurate Reporting: Your overall website analytics data can become misleading, making it harder to assess your marketing efforts and understand user behavior.
Solution: Careful Server-Side Setup
To ensure smooth cross-domain tracking with server-side GA4, take these steps:
Configure in GA4 Admin: Enable cross-domain tracking within your GA4 property settings. This involves specifying the domains you want to track together.
Link Domains: Implement server-side code to link user interactions across the different domains. This typically involves passing a unique identifier through the Measurement Protocol or using custom subdomains.
Verify Data Collection: Carefully test and monitor your GA4 reports to ensure that cross-domain sessions are tracked as a single, continuous journey. Look for any discrepancies or gaps in the data.
Chances are there will be some other reasons as well which will lead to unassigned traffic. You can always use GTM preview mode, GA4 debug view and dataLayer checker to debug issues.
1. Missing UTM Parameters:
UTM tags (Urchin Tracking Module tags) are like little breadcrumbs you add to the end of your website links. These tags help you understand how people are finding your website and which marketing efforts are most effective. Think of them as labels that allow you to track your website traffic with precision.
The Problem with Missing UTM Parameters
Each UTM tag contains several key parameters:
utm_source: Identifies where your traffic comes from (e.g., Google, Facebook, Newsletter).
utm_medium: Indicates the type of traffic (e.g., CPC for paid search, email, social).
utm_campaign: Specifies the particular marketing campaign or promotion (e.g., summer_sale, product_launch).
When you miss out on including these parameters, you create gaps in your data:
Traffic Misattribution: If you don't tag a link with the correct source and medium, the traffic might get lumped into a generic category like "direct" or "referral." This hides the true origin of those visitors.
Difficulty Analyzing Campaign Effectiveness: Without the utm_campaign parameter, you can't differentiate traffic from specific promotions. This makes it hard to determine which campaigns are driving the most valuable results.
Limited Optimization Opportunities: If you can't see the detailed breakdown of where your traffic is coming from and what's working, you miss out on chances to improve your marketing strategy.
The Solution: Tagging Every Campaign Thoroughly
Make sure to include all relevant UTM parameters on every link you use in your marketing campaigns. This allows you to:
Accurately attribute traffic: Know exactly where each visitor comes from and which marketing channels are working best.
Measure campaign ROI: Calculate the return on investment for individual campaigns to see which ones are the most profitable.
Optimize your marketing strategy: Make data-driven decisions to improve your campaigns and allocate your budget more effectively.
2. Fire Config Tag Before Events Tags:
Prioritize firing your GA4 configuration tag (also called the "Google Tag") before any event tags in Google Tag Manager (GTM). The configuration tag establishes the connection between your website and GA4 and sets crucial parameters. If event tags trigger before the configuration tag loads, they may not have access to this information, leading to:
Data Loss: Events may not be tracked or attributed correctly in GA4.
naccurate Reports: Your analytics data could be skewed, making it difficult to make informed decisions.
Solution:
GTM Setup: Configure your GTM tags so the GA4 configuration tag fires first. You can do this using either:
Tag Sequencing: In your GA4 event tags, add the configuration tag as a "setup tag" under Advanced Settings. This ensures the configuration tag fires before the event tag on the page.
Trigger Order: Set the trigger for your configuration tag to a high priority, such as "trytagging_user_data" and place it before the triggers for your event tags.
Verify with GTM Preview: Use GTM's preview mode to test your website and confirm that the configuration tag fires before any event tags on each page. This helps ensure accurate data collection in GA4.
Add page_view parameter to false:
The pageview parameter within your config tag should be set to false. To measure the page_view event, you will have to create a new event tag as “page_view”. Secondly, make sure you don’t have any other page_view tag firing within your GTM web container or directly in the website code.
3. Client Side vs Server-Side:
When you transition to server-side tracking in GA4, it's crucial to disable any client-side tracking that was previously in place. Running both types of tracking simultaneously will lead to the same events being recorded twice, causing:
Data Discrepancies: Your reports will show inflated numbers and inaccurate metrics, making it difficult to understand your website's true performance.
Unassigned Traffic: Duplicate events can create confusion in attribution, making it hard to identify the actual sources of your traffic and conversions.
Solution:
Once you've successfully implemented server-side tracking, follow these steps to prevent duplicate data:
Remove Client-Side Tags: In Google Tag Manager (or your website's code), disable or delete any GA4 tags that were previously set up for client-side tracking. If you’re using Shopify, make sure the GA4 integration is turned off from your Google App and also verify no other app is sending data to GA4. In case of WordPress, remove the GTM4WP or site-kit plugins and remove any tracking codes added directly to the site code.
Review Third-Party Integrations: Check if any third-party tools or plugins are sending data to GA4 on the client side. Disable their GA4 tracking functionality if possible.
Verify Data Collection: After making these changes, carefully monitor your GA4 reports to ensure that events are being tracked accurately and only once.
4. Cookie-Consent:
If your website uses a cookie consent mechanism (e.g., a banner or pop-up asking users to accept cookies), it's crucial to configure your GA4 event tracking to respect user choices. This means:
No Tracking Without Consent: GA4 event tags should not fire or collect any data until the user has explicitly given consent to the use of cookies (particularly those used for analytics or tracking).
Tracking After Consent: Once the user grants consent, your GA4 event tags can start firing and sending data to your GA4 property.
5. Cross-Domain Tracking:
Cross-Domain Tracking: Careful Configuration for Seamless Measurement
In server-side tracking, accurately measuring user journeys across multiple domains can be a bit more complex than with client-side tracking. If not implemented correctly, you might encounter issues where:
Sessions Split: A single user session could be fragmented into multiple sessions, one for each domain they visit.
Unassigned Traffic: Conversions and other events might not be attributed to the correct source or campaign if the user moves between domains.
Inaccurate Reporting: Your overall website analytics data can become misleading, making it harder to assess your marketing efforts and understand user behavior.
Solution: Careful Server-Side Setup
To ensure smooth cross-domain tracking with server-side GA4, take these steps:
Configure in GA4 Admin: Enable cross-domain tracking within your GA4 property settings. This involves specifying the domains you want to track together.
Link Domains: Implement server-side code to link user interactions across the different domains. This typically involves passing a unique identifier through the Measurement Protocol or using custom subdomains.
Verify Data Collection: Carefully test and monitor your GA4 reports to ensure that cross-domain sessions are tracked as a single, continuous journey. Look for any discrepancies or gaps in the data.
Chances are there will be some other reasons as well which will lead to unassigned traffic. You can always use GTM preview mode, GA4 debug view and dataLayer checker to debug issues.
Updated on: 16/08/2024
Thank you!