Quick Answer
Check: event name follows rules (lowercase, underscores only), gtag.js loaded before event code, no JavaScript errors in console, correct syntax, and event actually triggered. Use console.log before gtag call to verify code reaches that point.
Full Answer
Debugging event firing: Event naming rules: Execution order: Debug with console: Network check: DevTools → Network → Filter "collect" Should see POST to google-analytics.com/g/collect If event code runs but no network request → gtag not loaded.