From 305192ed1f47a1cf4bc9e72f9fb653f251af4d01 Mon Sep 17 00:00:00 2001 From: Kalista Payne Date: Wed, 27 Aug 2025 13:59:15 -0500 Subject: [PATCH] fix(analytics): record user ID in GA if consented --- website/client/src/libs/analytics.js | 7 ++++--- website/client/src/store/actions/auth.js | 3 +++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/website/client/src/libs/analytics.js b/website/client/src/libs/analytics.js index 7c31887f95..a88e5e3d34 100644 --- a/website/client/src/libs/analytics.js +++ b/website/client/src/libs/analytics.js @@ -106,8 +106,9 @@ export async function setup () { const user = _getConsentedUser(); if (!user) return; await Vue.loadScript(`https://www.googletagmanager.com/gtag/js?id=${GA_ID}`); - if (DEBUG_ENABLED || !IS_PRODUCTION) { - window.gtag('config', GA_ID, { debug_mode: true }); - } + window.gtag('config', GA_ID, { + debug_mode: DEBUG_ENABLED || !IS_PRODUCTION, + user_id: user._id, + }); amplitude.getInstance().init(AMPLITUDE_KEY); } diff --git a/website/client/src/store/actions/auth.js b/website/client/src/store/actions/auth.js index 13593bbca6..c257c1d284 100644 --- a/website/client/src/store/actions/auth.js +++ b/website/client/src/store/actions/auth.js @@ -121,6 +121,9 @@ export async function appleAuth (store, params) { export function logout (store, options = {}) { localStorage.clear(); sessionStorage.clear(); + if (window.gtag) { + window.gtag('config', GA_ID, { user_id: null }); + } const query = options.redirectToLogin === true ? '?redirectToLogin=true' : ''; window.location.href = `/logout-server${query}`; }