← back to CelebritySignatures
GA4 events: add game_start (mode/difficulty/category) + game_mode_select on game.html
e44e3a811058c59ddc7eea7977cd99cd07374f96 · 2026-08-04 09:12:14 -0700 · Steve Abrams
Files touched
M public/assets/ga-events.js
Diff
commit e44e3a811058c59ddc7eea7977cd99cd07374f96
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Tue Aug 4 09:12:14 2026 -0700
GA4 events: add game_start (mode/difficulty/category) + game_mode_select on game.html
---
public/assets/ga-events.js | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/public/assets/ga-events.js b/public/assets/ga-events.js
index 2a866f9..1685fb1 100644
--- a/public/assets/ga-events.js
+++ b/public/assets/ga-events.js
@@ -29,6 +29,19 @@
if (t.closest('#uploadBtn')) { ev('signature_upload', { step: 'submit_click' }); return; }
if (t.closest('#loginBtn')) { ev('account_login_click'); return; }
if (t.closest('#signupBtn')) { ev('account_signup_click'); return; }
+
+ // Games (game.html) — capture the chosen mode/difficulty/category on Begin
+ var gcard = t.closest('.gcard[data-g]');
+ if (gcard) { ev('game_mode_select', { mode: gcard.getAttribute('data-g') }); return; }
+ if (t.closest('#goBtn')) {
+ var pick = function (sel, attr) { var el = document.querySelector(sel); return el ? el.getAttribute(attr) : ''; };
+ ev('game_start', {
+ mode: pick('.gcard.on[data-g]', 'data-g'),
+ difficulty: pick('#diffOpts .opt.on[data-d]', 'data-d'),
+ category: pick('#catOpts .opt.on[data-c]', 'data-c')
+ });
+ return;
+ }
}, true);
// Murals "Request a quote instead" is a form submit, not a click
← 3b155de GA4 events: wire named conversion/engagement events (mural_o
·
back to CelebritySignatures
·
GA4 game_start: guard category param — only log when #catOpt faf97c9 →