Google Analytics 360 integrations are an upgraded feature
Google Analytics 360 integrations are an upgraded feature that’s available during the free trial or for customers on an Advanced or Premium plan.
For more info about Stitch Advanced, contact the Stitch Sales team.
Google Analytics 360 is currently in beta. The info in this guide is subject to change.
This integration is powered by Singer's Google Analytics 360 tap and certified by Stitch. Check out and contribute to the repo on GitHub.
For support, contact Stitch support.
Google Analytics 360 integration summary
Stitch’s Google Analytics 360 integration replicates data using the BigQuery API. Refer to the Schema section for a list of objects available for replication.
Google Analytics 360 feature snapshot
A high-level look at Stitch's Google Analytics 360 (v1) integration, including release status, useful links, and the features supported in Stitch.
STITCH | |||
Release status |
Beta |
Supported by | |
Stitch plan |
Advanced |
API availability |
Available |
Singer GitHub repository | |||
REPLICATION SETTINGS | |||
Anchor Scheduling |
Supported |
Advanced Scheduling |
Supported |
Table-level reset |
Unsupported |
Configurable Replication Methods |
Unsupported |
DATA SELECTION | |||
Table selection |
Supported |
Column selection |
Supported |
Select all |
Supported |
||
TRANSPARENCY | |||
Extraction Logs |
Supported |
Loading Reports |
Supported |
Connecting Google Analytics 360
Google Analytics 360 setup requirements
To set up Google Analytics 360 in Stitch, you need:
- A Stitch Advanced plan.
-
A Google BigQuery and Google Analytics 360 account. You need to have your BigQuery account configured to export to Google Analytics 360. To learn how to configure this export, use Google’s step-by-step instructions.
Step 1: Locate your Project ID and Dataset ID
- Login to Google and go to your Google Cloud Console.
- To locate your list of projects, click on the navigation menu in the upper left-hand corner of the page.
- Hover over IAM & Admin to pop open its menu. Select Manage Resources.
- On this page, navigate to the project that includes the dataset you want to replicate data from and click on it.
- Your Project ID and all of your Dataset IDs will be visible. Make note of the Project ID and Dataset ID that you want to replicate and keep it readily available for the Google Analytics 360 integration configuration page.
Step 2: Create a GCP IAM service account
Step 2.1: Define the service account details
- Navigate to the IAM Service Accounts page in the GCP console.
-
Select the project you want to use by using the project dropdown menu, located near the top left corner of the page:
- Click + Create Service Account.
- On the Service account details page, fill in the field as follows:
- Service account name: Enter a name for the service account. For example:
Stitch
- Serivce account description: Enter a description for the service account. For example:
Replicate Stitch data
- Service account name: Enter a name for the service account. For example:
- Click Create.
Step 2.2: Assign service account permissions
Next, you’ll assign permissions to the service account.
- On the Service account permissions page, click the Role field.
- In the window that displays, select one of the following BigQuery roles:
- BigQuery Data Viewer
- BigQuery Job User
- BigQuery User
- Click + Add Another Role.
- Repeat steps 2 and 3 until all BigQuery roles have been assigned.
- Click Continue.
Step 2.3: Create a JSON project key
The last step is to create and download a JSON project key. The project key file contains information about the project, which Stitch will use to complete the setup.
- On the Grant users access to this service account page, scroll to the Create key section.
- Click + Create Key.
- When prompted, select the JSON option.
- Click Create.
- Save the JSON project key file to your computer. The file will be downloaded to the location you specify (if prompted), or the default download location defined for the web browser you’re currently using.
Step 3: Add Google Analytics 360 as a Stitch data source
- Sign into your Stitch account.
-
On the Stitch Dashboard page, click the Add Integration button.
-
Click the Google Analytics 360 icon.
-
Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.
For example, the name “Stitch Google Analytics 360” would create a schema called
stitch_google_analytics_360
in the destination. Note: Schema names cannot be changed after you save the integration. - In the GA 360 Dataset ID and GA 360 Project ID fields, enter the Project and Dataset IDs you retrieved in Step 1.
- In the Service Account JSON field, paste the JSON project key you obtained in Step 2.3.
Step 4: Define the historical replication start date
The Sync Historical Data setting defines the starting date for your Google Analytics 360 integration. This means that data equal to or newer than this date will be replicated to your data warehouse.
Change this setting if you want to replicate data beyond Google Analytics 360’s default setting of 1 year. For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.
Step 5: Create a replication schedule
In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.
Google Analytics 360 integrations support the following replication scheduling methods:
-
Advanced Scheduling using Cron (Advanced or Premium plans only)
To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.
Step 6: Set objects to replicate
The last step is to select the tables and columns you want to replicate. Learn about the available tables for this integration.
Note: If a replication job is currently in progress, new selections won’t be used until the next job starts.
For Google Analytics 360 integrations, you can select:
-
Individual tables and columns
-
All tables and columns
Click the tabs to view instructions for each selection method.
- In the integration’s Tables to Replicate tab, locate a table you want to replicate.
-
To track a table, click the checkbox next to the table’s name. A blue checkmark means the table is set to replicate.
-
To track a column, click the checkbox next to the column’s name. A blue checkmark means the column is set to replicate.
- Repeat this process for all the tables and columns you want to replicate.
- When finished, click the Finalize Your Selections button at the bottom of the screen to save your selections.
- Click into the integration from the Stitch Dashboard page.
-
Click the Tables to Replicate tab.
- In the list of tables, click the box next to the Table Names column.
-
In the menu that displays, click Track all Tables and Fields:
- Click the Finalize Your Selections button at the bottom of the page to save your data selections.
Initial and historical replication jobs
After you finish setting up Google Analytics 360, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.
For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.
Initial replication jobs with Anchor Scheduling
If using Anchor Scheduling, an initial replication job may not kick off immediately. This depends on the selected Replication Frequency and Anchor Time. Refer to the Anchor Scheduling documentation for more information.
Free historical data loads
The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.
Google Analytics 360 replication
For each day of export in Google Analytics 360, Google Analytics 360 creates a table with the format ga_sessions_YYYYMMDD
. The YYYYMMDD
portion of the table’s name corresponds to the date the data is for.
Stitch uses the YYYYMMDD
portion of the table’s name to incrementally replicate data. When a new export with a YYYYMMDD
value is greater than the previous export, Stitch will replicate the data for that day in full.
Google Analytics 360 imports data into daily session tables several times throughout the day. For the current day, data isn’t final until the daily import is complete. Refer to Google’s documentation for more info on this process.
Because Google Analytics 360 performs data imports several times a day, you may notice differences between your data in Google Analytics 360 and the data replicated by Stitch. Allow a full day to see complete updates for the previous day’s data.
Google Analytics 360 table reference
Schemas and versioning
Schemas and naming conventions can change from version to version, so we recommend verifying your integration’s version before continuing.
The schema and info displayed below is for version 1 of this integration.
This is the latest version of the Google Analytics 360 integration.
Table and column names in your destination
Depending on your destination, table and column names may not appear as they are outlined below.
For example: Object names are lowercased in Redshift (CusTomERs
> customers
), while case is maintained in PostgreSQL destinations (CusTomERs
> CusTomERs
). Refer to the Loading Guide for your destination for more info.
ga_session_hits
This table contains information about Google Analytics session hits.
Key-based Incremental |
|
Primary Keys |
visitId fullVisitorId visitStartTime hitNumber |
Useful links |
Join ga_session_hits with | on |
---|---|
ga_sessions |
ga_session_hits.visitId = ga_sessions.visitId ga_session_hits.fullVisitorId = ga_sessions.fullVisitorId ga_session_hits.visitStartTime = ga_sessions.visitStartTime |
appInfo OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
contentGroup OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
contentInfo OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
customDimensions ARRAY
|
||||||||||||||||||||||||||||||||||||||||||||||
customMetrics ARRAY
|
||||||||||||||||||||||||||||||||||||||||||||||
customVariables ARRAY
|
||||||||||||||||||||||||||||||||||||||||||||||
dataSource STRING |
||||||||||||||||||||||||||||||||||||||||||||||
eCommerceAction OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
eventInfo OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
exceptionInfo OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
experiment ARRAY
|
||||||||||||||||||||||||||||||||||||||||||||||
fullVisitorId STRING |
||||||||||||||||||||||||||||||||||||||||||||||
hitNumber NUMBER |
||||||||||||||||||||||||||||||||||||||||||||||
hour NUMBER |
||||||||||||||||||||||||||||||||||||||||||||||
isEntrance BOOLEAN |
||||||||||||||||||||||||||||||||||||||||||||||
isExit BOOLEAN |
||||||||||||||||||||||||||||||||||||||||||||||
isInteraction BOOLEAN |
||||||||||||||||||||||||||||||||||||||||||||||
isSecure BOOLEAN |
||||||||||||||||||||||||||||||||||||||||||||||
item OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
latencyTracking OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
minute NUMBER |
||||||||||||||||||||||||||||||||||||||||||||||
page OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
product ARRAY
|
||||||||||||||||||||||||||||||||||||||||||||||
promotion ARRAY
|
||||||||||||||||||||||||||||||||||||||||||||||
promotionActionInfo OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
publisher OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
referer STRING |
||||||||||||||||||||||||||||||||||||||||||||||
refund OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
social OBJECT |
||||||||||||||||||||||||||||||||||||||||||||||
sourcePropertyInfo OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
time NUMBER |
||||||||||||||||||||||||||||||||||||||||||||||
transaction OBJECT
|
||||||||||||||||||||||||||||||||||||||||||||||
type STRING |
||||||||||||||||||||||||||||||||||||||||||||||
visitId NUMBER |
||||||||||||||||||||||||||||||||||||||||||||||
visitStartTime NUMBER |
ga_sessions
This table contains information about general Google Analytics sessions.
Key-based Incremental |
|
Primary Keys |
fullVisitorId visitId visitStartTime |
Replication Key |
date |
Useful links |
Join ga_sessions with | on |
---|---|
ga_session_hits |
ga_sessions.visitId = ga_session_hits.visitId ga_sessions.fullVisitorId = ga_session_hits.fullVisitorId ga_sessions.visitStartTime = ga_session_hits.visitStartTime |
channelGrouping STRING |
||||||||||||||||||||||
clientId STRING |
||||||||||||||||||||||
customDimensions ARRAY
|
||||||||||||||||||||||
date DATE-TIME |
||||||||||||||||||||||
device OBJECT
|
||||||||||||||||||||||
fullVisitorId STRING |
||||||||||||||||||||||
geoNetwork OBJECT
|
||||||||||||||||||||||
socialEngagementType STRING |
||||||||||||||||||||||
totals OBJECT
|
||||||||||||||||||||||
trafficSource OBJECT
|
||||||||||||||||||||||
userId STRING |
||||||||||||||||||||||
visitId NUMBER |
||||||||||||||||||||||
visitNumber NUMBER |
||||||||||||||||||||||
visitStartTime NUMBER |
||||||||||||||||||||||
visitorId NUMBER |
Related | Troubleshooting |
Questions? Feedback?
Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.
hasSocialSourceReferral
STRING
socialInteractionAction
STRING
socialInteractionNetwork
STRING
socialInteractionNetworkAction
STRING
socialInteractionTarget
STRING
socialInteractions
NUMBER
socialNetwork
STRING
uniqueSocialInteractions
NUMBER