Google Analytics Integration

In order for the Google Analytics integration to work, you will need to identify how your company is keying personal data in Google Analytics, and then find a way to provide Transcend with the identifier using a preflight check or DSR API.

A Google Analytics ID is what's called a custom identifier, that is, an identifier specific to some 3rd-party SaaS tool. Many tools have their own unique ID field to identify users, and some of those tools don’t play nicely with more standard identifiers like email. Segment is one such tool--it uses its own userId field to keep track of end users. Likewise, Google Analytics uses a custom identifier, which we call the googleAnalyticsId. Without knowing a given user's googleAnalyticsId, it's impossible for Transcend (or anyone else) to erase that user’s Google Analytics data via the API. For reference, here is the Google Analytics deletion route we use for Erasures.

If you're not sure how you set a user's googleAnalyticsId on your end, see here.

Currently, when a user submits a DSR to your organization, that DSR includes an email identifier but no googleAnalyticsId. Whenever possible, Transcend will enrich DSRs for you to retrieve as many identifiers as possible. As much as we'd love to retrieve your users' googleAnalyticsIds without your help, though, it's simply not possible. While some APIs do make this possible via routes that allow us to convert between identifiers, Google Analytics offers no such shortcut. So, how do we solve this problem? By creating a custom identifier that is resolved by a preflight check!

While Transcend doesn’t have the means to convert your user's email to a googleAnalyticsId, you likely do! Google Analytics’ tracking functionality requires any company using it (like you!) to define their own googleAnalyticsIds for the users they track. At some point, engineers at your organization determined this mapping of users to googleAnalyticsIds - that for user ABC, their googleAnalyticsId will be identifier XYZ, where XYZ could be a random string, the user’s internal organization user ID (if that exists), the user’s phone number, and so on (whatever the engineers decided). It is therefore quite likely that, somewhere within your data systems, there exists an internal record of your users' googleAnalyticsIds - for instance, a field within a user model in one of your databases.

To best way to resolve these identifiers it to set up a preflight check that is run whenever a request is made. If you are using Transcend's DSR API to submit requests through the API, you would want to include this identifier in the webhook payload.