Understanding how your users interact with your business both online and offline can be valuable but also challenging. You can use several Google Analytics 4 (GA4) features to help you start to piece together these on- and offline user journeys.
In this article:
Record online and in-app events that indicate propensity for store visit
If your website or mobile app encourages users to visit a physical location where they can transact, be sure to track significant events such as looking up your address, viewing a map, or getting directions. You may want to mark these actions as conversion events, since they signal a heightened level of engagement towards an action that you want users to take: namely, visiting your physical location.
Use the Measurement Protocol to send offline conversions
The Measurement Protocol for Google Analytics 4 allows developers to make HTTP requests to send events directly to Google Analytics servers. This allows developers to measure how users interact with their business from any HTTP-enabled environment. Notably, this makes it easy to measure interactions that happen server-to-server.
Developers can use the Measurement Protocol to:
- Tie online to offline behavior
- Measure interactions both client-side and server-side
- Send events that happen outside standard user-interaction (e.g. offline conversions)
Learn more about the Measurement Protocol for Google Analytics 4.
Measurement Protocol example
Let’s consider a car dealership as an example of how the Measurement Protocol can connect online and offline activity:
- A user clicks through from a Google Ads ad to the dealership’s website.
- The user asks to test drive a new car model.
- The user arrives at the dealership and proceeds with the test drive.
- The user returns to the dealership the following day and purchases the car.
How to join online and offline data
A developer could configure the dealership CRM (customer relationship management software) to send a Measurement Protocol event to Google Analytics at the time the CRM's purchase record is created. To associate the offline and online activity, the developer could use one of the following approaches:
- Option 1) For pseudonymous users, include the Google Analytics device ID when the user submits the test drive booking, and configure the Measurement Protocol event to include this ID when sending the event to GA.
- Option 2) For signed-in users, on the test drive booking confirmation page, pass a unique, privacy-safe ID that you generated via the website login process as a User-ID into Google Analytics, and configure the Measurement Protocol event to include the ID.
Using either the device ID or User-ID as a "shared ID" lets you associate the offline conversion to the original online submission. Google Analytics can then attribute the offline conversion to the original Google Ads clickthrough.
What are device ID and user-ID?
Device ID is the browser-based or mobile-app-based identifier for a single, pseudonymous website or mobile app user. On a browser, device ID gets its value from the _ga
cookie's client ID
property. In an iOS or Firebase app, device ID gets its value from the app-instance ID. App-instance ID corresponds to Android Advertising ID and iOS Advertising Identifier. Firebase provides methods for reading the app instance ID, as in this Java example for Android.
User-ID is a unique ID that you generate, typically via your website or app login process. User-ID allows Google Analytics to measure users across sessions, as in the case of Measurement Protocol or data import.
Device ID is sent to Google Analytics automatically; it does not depend on user authentication. User-ID, on the other hand, does depend on authentication and is not sent to GA4 by default. Your website or app must explicitly send User-IDs to Google Analytics.
Device ID and User-ID are part of your property's reporting identity settings.
Offline to online implementation example
Option 1: Device ID example
Legend:
- On the car dealership website, an pseudonymous user submits a booking to test drive a new car model.
- Google Analytics sets or reads the device ID contained in the
_ga
cookie, which pseudonymously identifies a specific user. - Google Analytics associates the device ID with the traffic source that generated the session.
- Google Analytics sets or reads the device ID contained in the
- On the car dealership website, a front-end developer has coded the test drive booking form to include the device ID, usually as a hidden form field.
- In the car dealership CRM, the device ID is stored within the CRM record of the submitted test-drive form.
Option 2: User-ID example
Legend:
- On the car dealership website a user requests to test drive a new car model.
- The car dealership's web server asks the user to sign in to their account.
- The dealership's CRM retrieves (or generates) the user identifier and passes it back to the web server.
- The web server includes the user identifier in the data layer of the test drive booking confirmation page.
- The confirmation page loads and sends the user identifier to Google Analytics as as an event parameter of the pageview event, or as a separate custom event.
- The car dealership's Google Analytics 4 property records the user identifier and associates it with the traffic source that generated the session.
Learn more about using User-ID for cross-platform analysis.
Measure offline activity with Measurement Protocol
Legend:
- At the car dealership, the user test drives and then purchases a shiny new car.
- The salesperson creates purchase record in the dealership's CRM.
-
A developer has configured the CRM to send a Measurement Protocol event for the purchase, including the shared ID (either the device ID or an pseudonymized user identifier
) to Google Analytics.
-
- The car dealership's Google Analytics 4 property records the the shared ID sent in the Measurement Protocol event and associates it with the traffic source that generated the session.
Import offline conversions
Another way to associate online and offline conversions is to import them.
Google Analytics data import lets you add data to your property outside of the normal hit/event collection process. In Universal Analytics, you would typically use data import to add new fields to existing records, such as adding author or category dimensions to a pageview or descriptions to a product in an ecommerce transaction.
Data import in GA4 supports similar use cases. In addition, you can import offline event data. This can apply to many offline conversion scenarios. For example, in the case of the car dealership, instead of using the Measurement Protocol to send the offline transactions to Google Analytics, you could import the test drive data and associate it with the user's previous online attribution and activity (using either user ID or client ID to join the data).
To associate the newly-imported event data with previously collected events, you need to first complete one of the two options outlined above in Join the online and offline data for creating a shared ID between Google Analytics and your CRM.
Import offline conversions example
Legend:
- At the car dealership, the user test drives and then purchases a shiny new car.
- The salesperson creates purchase record which includes the shared ID in the dealership's CRM.
- The purchase record is exported to CSV, then imported into Google Analytics.
- Google Analytics 4 allows you to create new events through data import. The shared ID in the new event allows Google Analytics to associate the offline purchase with the traffic source for the original session.