Skip to main content
The discrepancies between GA4 and SegmentStream user and session counts can arise due to several reasons:
  1. GA4 modelling — by default, GA4 uses machine learning to estimate metrics for users and sessions who have not given consent for analytics cookies. SegmentStream shows user and session metrics based on users who have given consent, and uses machine learning only for conversion-related metrics. To see the real number of tracked users and sessions in your GA4 reports, switch your “Reporting identity” to the “Observed” setting. For more details, see the GA4 modelling documentation.
  2. Filters in GA4 — your GA4 property might have filters applied, such as those filtering out internal traffic. See the GA4 filters documentation for details.
  3. Session definitions — GA4 and SegmentStream use different logic to define a session. In GA4, once a session starts, it continues until there is a 30-minute gap between events. SegmentStream can start a new session with a click to a paid channel with UTM parameters.
  4. Timezone discrepancies — your GA4 property and SegmentStream project might use different time zones.
To get a more consistent view, focus on the “users” metric. If you notice a difference greater than 1%, contact support via the admin panel.
This occurs because of how the source/medium is attributed to sessions. The source/medium is determined using the last non-direct click attribution model, which tracks the last source that brought the user to your site before a direct session.However, the landing page URL is captured from the session that appears within the selected date range. These two values can come from different sessions. You can explore all the sessions of a particular user by adding the User ID or Client ID dimension to your report and opening the user-journey exploration.
The “(not attributed)” label appears in ad platform dimensions (for example, account name, campaign name, campaign type) when traffic is recognised as coming from an ad platform but cannot be linked to a specific campaign, leaving the values unknown.It also appears when user or session data cannot be displayed due to privacy restrictions, or when custom conversions are reported without any associated tracked sessions. These conversions still contribute to the machine learning-based attribution model.
The “(not set)” label appears in ad platform dimensions (for example, ad group name, campaign type) when traffic is associated with an ad platform and campaign but the selected dimension is not available or supported by the platform. For example, Google Ads search campaigns do not support the “Ad” dimension but do support “Targeting Name (keyword)”, while Performance Max campaigns support neither.The label also appears in behavioural data dimensions when data cannot be displayed due to privacy restrictions or when the selected dimension is not available. For example, sessions from a URL without a utm_campaign parameter are reported as “(not set)” under the UTM Campaign dimension.
SegmentStream’s algorithm aims to identify traffic from each ad platform, even if it cannot be attributed at the campaign level. However, several factors can prevent proper attribution:
  1. Broken URLs — if campaign URLs contain typos or the website modifies or removes UTM parameters, tracking information might not be recorded.
  2. Uncommon URL shorteners — some URL shorteners prevent UTM tag extraction, disrupting campaign tracking. If you use an uncommon URL shortener, notify the support team.
  3. Auto-tagging without UTMs or utm_id — sessions may not be tracked if only gbraid or wbraid parameters are used without UTM tags. Follow the UTM tagging best practices to avoid this.
  4. Clicks from unconnected ad accounts — if you have multiple ad accounts and have not connected all of them in the SegmentStream data source, traffic from unconnected accounts will not be attributed to campaigns.
  5. Old UTMs, bookmarks, or link sharing — traffic from old UTM links, bookmarks, or shared links can affect data accuracy. Sessions can only be stitched to campaigns within 30 days of the last click.
  6. Unsupported tagging — incorrect use of tags, such as in product feed links, may prevent session tracking.
iOS 17 removes the click_id parameter (gclid, fbclid, etc.) from URLs. For example, a URL like:
https://site.com/?utm_source=google&utm_medium=cpc&utm_campaign=1467008&gclid=nvwieu5tryt5q9rut9wruqt33
becomes:
https://site.com/?utm_source=google&utm_medium=cpc&utm_campaign=1467008
What this means for analytics: The gclid (Google Click ID) is a parameter that lets Google associate specific conversions with ad clicks. Without it, there is no direct connection between a user action and an ad click. Data will be presented at a more aggregated level, potentially limiting insight depth.Solution: Implement utm_id in your tracking URLs to maintain maximum reporting granularity. Refer to the Facebook data source guide for implementation details.
SegmentStream auto-associates sessions with Google Ads when they include click parameters like gclid, wbraid, or gbraid.This can occur when:
  1. Other advertising platforms purchase Google Ads traffic, for example, affiliate marketing networks like AWIN.
  2. There is a human error leading to inclusion of Google-specific click ID parameters in ad links of other platforms.
SegmentStream reports do not display assisted or view-through conversions from individual platforms. Instead, SegmentStream offers a unique attribution model that highlights the incremental impact of each marketing channel. This model considers user behaviour on your website and brings together data about user engagement with your brand on platforms like Facebook, YouTube, and others.
The main reason is that users may not accept cookies when they engage with Facebook ads. Review your consent mode popup design to make it easier for users to accept cookies.Another reason is that users might click on ads multiple times. This is common with catalogue-type ads, where users click on several products. Facebook reports each click as an outbound click, but SegmentStream counts them as one user. Compare the unique outbound click metric in Facebook with the number of users reported by SegmentStream.
SegmentStream uses TikTok’s “Clicks (Destination)” metric to report clicks. This metric includes not only clicks that lead users to websites, apps, or app stores, but also interactions such as clicking on the profile picture, caption, profile name, CTA button, and sliding to the left. Many of these interactions do not result in website visits, causing a higher number of reported clicks compared to tracked users.