[GA4] BigQuery Export Service Level Agreement

This feature is currently in beta and the Service Level Agreement will apply in future. 

The following article details the Google Analytics 360 Service Level Agreement (SLA) for BigQuery Export.

Analytics guarantees when the BigQuery Export data will arrive each day for premium properties categorized as “Normal” or “Large” based on the number of events collected. Learn more about property categories.

Users who wish to utilize the SLA for BigQuery Export must select the Fresh daily option when setting the frequency for BigQuery Export. Learn more.

Note: The Fresh daily option is not available for premium “XLarge” properties.

It can happen that data arrives within the time specified by the SLA for BigQuery Export, but Google Ads attribution data wasn't available for the Fresh daily export option. When this occurs, the following fields will contain the value Data Not Available:

  • traffic_source.source
  • traffic_source.medium
  • traffic_source.name

In this scenario, users may use a fallback option of using the Google Ads API, Google Ads Scripts, or the BigQuery Data Transfer Service for Google Ads to look up values by Google Click ID (GCLID).

You may see differences between the results from the Google Analytics Data API and the BigQuery Export if the Data API is subject to data sampling, high cardinality, or other factors. To learn more about what causes these differences, see Bridging the gap between Google Analytics UI and BigQuery export.

Use the Google Ads API

Users can look up fallback values by querying the click_view resource of the Google Ads API. Below is a sample query that retrieves all GCLIDs for the previous day. Use the Google Ads Query Builder to build or modify this query as needed.

SELECT

click_view.gclid,

campaign.name,

segments.ad_network_type

FROM click_view

WHERE segments.date DURING YESTERDAY

Use the results of this query as a fallback source for Data Not Available values by joining rows where the collected_traffic_source.gclid in Analytics BigQuery Export data matches the click_view.gclid in the Google Ads data. The results from the query map to the export schema as follows:

click_view field Event schema field Notes
click_view.gclid collected_traffic_source.gclid Use these fields to join records in the two data sets.

segments.ad_network_type

traffic_source.source Refer to the Google Ads API reference docs for possible values of segments.ad_network_type.
N/A traffic_source.medium Fallback to a value of cpc on joined records.
campaign.name traffic_source.name The campaign.name will contain the complete Google Ads campaign name.
Note: The Google Ads API only supports querying the click_view resource for a single date value for segments.date. To query data for a specific day instead of the previous day, modify the WHERE clause above to segments.date = 'YYYY-MM-DD' and replace YYYY-MM-DD with any date within the last 90 days.

Use Google Ads Scripts

Users can issue the click_view query above using the reporting feature of Google Ads Scripts. Results of the query can be exported to a spreadsheet or incorporated into query processing within a script.

Use the BigQuery Data Transfer Service for Google Ads

Users who have set up the BigQuery Data Transfer Service for Google Ads can join the collected_traffic_source.gclid from GA4 event data to the click_view_gclid field of ads_ClickStats_CUSTOMER_ID from the Google Ads transfer, then map fields to the export schema as follows:

ClickStats field Event schema field Notes
click_view_gclid collected_traffic_source.gclid Use these fields to join records in the two data sets.
segments_ad_network_type traffic_source.source Refer to the Google Ads API reference docs for possible values of segments.ad_network_type.
N/A traffic_source.medium Fallback to a value of cpc on joined records.
campaign_id traffic_source.name The ClickStats.campaign_id field contains the ID of the campaign. Use this ID to look up the campaign name in the Campaign match table.

 

Note: The GA4 event data export creates a table for each day, while the Google Ads transfer populates a single ads_ClickStats_CUSTOMER_ID table per customer.

Was this helpful?

How can we improve it?
Search
Clear search
Close search
Main menu
17323182470427580024
true
Search Help Center
true
true
true
true
true
69256
false
false