Data doesn't match the UI

Funnel fetches Google Analytics data from the Analytics Reporting API v4 (Universal Analytics) and GA4 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:

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:

Naming conventions

A suffix has been added to all Google Analytics fields in Funnel to better distinguish the two Google Analytics versions from each other when both are connected. Universal Analytics fields are suffixed with UA and Google Analytics 4 fields are suffixed with GA4.

If you have built logic depending on the field name in your Google Sheets exports those might break. For example if you use the field name "source" you now have to update the export to use "source UA" or "source GA4".

Universal Analytics

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 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:

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.

Google Analytics 4

Metrics returning zero values

If you have selected any of the the following Attribution dimensions on your data source, the Google Analytics API will return 0 for the metrics Sessions, Views, Item views and Add-to-carts:

  • Source

  • Medium

  • Campaign

  • Campaign ID

  • Default channel grouping

  • Event campaign creative ID

  • Google Ads account name

  • Google Ads ad group ID

  • Google Ads ad group name

  • Google Ads ad network type

  • Google Ads campaign type

  • Google Ads keyword text

  • Google Ads query

  • Manual ad content

  • Manual term

  • Source platform

  • Traffic origin

In this case we suggest that you either replace the Attribution dimensions with corresponding Traffic source dimensions, or remove the metrics from the data source and connect a second data source for these metrics, without any Attribution dimensions selected.

Missing Events

The metric New Users can cause some event types to be filtered out. If your metric values are lower than expected, or you're missing values for Event name, try removing New Users from your data source.

Sessions are too high

A data source setup with both Sessions and Event name will in most cases multiply the number of sessions. This is because every event will be counted as one session even though several events belong to the same session. To tackle this Event name can be filtered on "session_start". This will often not match the numbers exactly between Funnel and Google Analytics UI but could be close enough. If you need exact numbers we recommend to connect several data sources, one with Event name when you want to look at the names and one without it when looking at sessions totals.

Sessions will also be too high when the data source setup includes either Page Path or Page Title. This is because every page that was visited during a session will be counted as an individual session. Unfortunately, for these cases, there are no current workarounds.

Ecommerce purchases are to high

The dimension Item Name can in some cases multiply the totals of Ecommerce purchases.

Did this answer your question?