This article describes issues related to Google Universal Analytics, if your issue concerns Google Analytics 4 please read the Google Analytics 4 – Troubleshooting.
If you cannot find the reason for your mismatch in this article, you can try troubleshooting your data source using the Query Explorer as described in this article.
Data doesn't match the UI
Funnel fetches Google Universal Analytics (UA) data from the Analytics Reporting API by querying the dimensions and metrics you select upon connecting a data source. Depending on the selected dimensions and their values, the API can sometimes filter data. The Google Analytics API will in some cases only return data for rows that have values for all dimensions queried. When data is missing for one or more of the dimensions, Google will not return that row, hence filtering of the data occurs. The API should however be consistent with the UI. This means that you can confirm if the data for a certain Google Analytics data source in Funnel is correct by creating a custom report containing the same dimensions in the UI that you selected when connecting your data source.
If the custom report matches the numbers you are seeing in Funnel we suggest that you either remove the dimension(s) that are filtering the data from your data source, or if these dimensions are necessary for your reporting, that you connect another data source without them. If you choose to connect a new data source, please be mindful of double counting and remember to filter your data on data source if you choose overlapping metrics.
Missing recent data
If the numbers for the last two days are too low that can be due to Google's data freshness (the delay before the data is available). The same delay applies to the Google Analytics UI but depending on when you look in GA vs Funnel or if Funnel hasn't received that data yet this can still happen. For standard properties this delay is up to 48h before all data has stabilised. For a 360 property it's up to 4h when looking at today and up to 24h when looking at previous days.
Read about the limits limit in Google help article here: https://support.google.com/analytics/answer/7084038
Multi-Channel Funnels (MCF) reports
MCF data collection is delayed by up to two days in Google Analytics, meaning that data from today and yesterday is typically not available in the reports. Read more about MCF data in this support article from Google:
Dimensions affecting metric totals
The dimensions in the list below are most likely to affect metric totals, but other dimension can have this effect too. As described in the Data doesn't match the UI section above, please create a custom report using the same dimensions as in the data source when troubleshooting data mismatches.
Age
Age does not include data for users younger than 18 years.
Age, Gender, and Search query
Age, Gender, and Search query are likely to cause Google Analytics to filter rows because of privacy reasons. The more dimensions you select and the more specific report you create the more rows will be filtered. Read more about the Data Thresholds that are protecting the users' privacy here: https://support.google.com/analytics/answer/2799357#thresholds
Custom dimensions
Custom dimensions will filter data that don't have any values for the dimension in question. This means that if you don't assign a custom dimension to a user/session or hit, then it won't be included if you look at that user/session or hit in Funnel. Choosing two custom dimensions means that each row must have some set value for both of these dimensions. If one is missing the row will not be part of the segment of data returned. This is the same behaviour as in the Google Analytics UI. Read more in our help article about custom dimensions in Google Analytics.
Mobile Device
Choosing any of the Mobile Device dimensions below might lead to unexpected total values, as they will not include data for desktop users. This is the same behaviour as in Google Analytics' UI, and has to do with the fact that data is only returned for rows where these dimensions have values:
Mobile Device Model
Mobile Device Branding
Mobile Device Marketing Name
Mobile Device Info
Event Label
Event metrics may be affected if the optional dimension Event Label has been included in Funnel, but some or all events do not send Event Label to Google Analytics. This is due to how Google filters data with no values for a dimension, meaning that when a report is created which includes the Event Label, any events that do not have values for that dimension will be filtered out.
Client ID
Client ID may affect metric totals as Google Analytics can only deliver the top 10,000 unique Client IDs per day. If you have more visitors than that per day it will result in exceeding data being omitted.
Other dimensions that might affect metric totals
Selecting any of the dimensions listed below will lead to all rows not containing a value for the dimensions in question being filtered out. Only rows containing a value for the dimension will be returned by the API. This might lead to unexpected metric totals, or that no data at all is returned by the API.
Transaction ID
Order coupon code
Campaign code
Missing or too few goal completions
Goal completions based on events will not be viewable per Page. This is because events can fire multiple times per session while goals only can fire once, meaning that a goal completion can be spread out on multiple pages.
Missing goal metrics
Smart goals are not included per default, because of a limitation in the Google Analytics API we can't see beforehand if a user has any or not. If you need this metric please write to the Funnel support and ask us to toggle it for your data sources.
Metric values being slightly off (Sampling)
If you have a lot of data GA might read some of it and then estimate the rest. This sampling is done in the UI as well, look for if the shields becomes yellow in GA (see picture below). Read more about sampling for GA here. In Funnel Data Explorer you can select Samples Read Rate field to see if you have sampled data. If you see a value of 100% your data is not sampled. A lower percentage, for example 70%, means that 30% of your data is estimated by GA, which may cause some minor data mismatches.
Data sources with segments included
When adding multiple Segments you will get all data in segment A plus all data in segment B. This means that you have to include the Segment dimension in your queries when looking at segments with overlapping data to not get too high values.
Read more about Google Analytics segments in Funnel here.
Segment is not supported through the API
If your data source has an error saying "Segment your_segment_id
is not supported in the API " it means that there is something about how the segments is set up in Google Analytics that is not compliant with the constraints that Google enforces when it comes to using it through the reporting API. Google explains in their documentation what these constrains are:
A maximum of 10 dimension or metric conditions per segment. (i.e
ga:city[]city1|city2|...|city10
)
The maximum expression length for dimension conditions is 1024 characters.
If you have this error on your data source you can either edit the configuration of the data source and remove the segment, or you will need to review how the segment is set up in Google Analytics and either remove some dimension or metric conditions so that there are a maximum of 10, or remove some conditions if the segment definition exceeds 1024 characters. You can then connect the data source again in Funnel.
Comparing Funnel data with the Google Ads report
The Google Ads report in Google Analytics filters the data on the source and medium values "google / cpc". You have to filter on the same thing in Funnel to not include data from other traffic sources or else you will see higher values in Funnel.
Performance Max campaigns
Including Keyword, Ad content, or other related fields can cause your Performance max campaigns to be filtered out of the report, as they are not compatible with those fields.