ignitionstack.pro v1.0 is out! Read the announcement →
Skip to Content

📊 Google Analytics 4 - Event Tracking Guide

Source: contents/prompts/features/08 - analytics-tracking-bdd.md

This document lists every GA4 event that must be implemented on ignitionstack.pro following the BDD specifications.

🎯 Required Parameters

All events MUST include the following parameters:

ParameterTypeDescription
localestringPage locale (en, pt, es)
page_pathstringURL path (/en/contact)
page_titlestringPage title
funnel_stagestringawareness, consideration, conversion, loyalty
source_componentstringComponent that fired the event
environmentstringproduction, development, preview (added automatically)

📖 Implementation

Available Helpers

import { trackGAEvent, trackPageView, getCurrentPageMetadata } from '@/app/lib/analytics'; import { usePageView } from '@/app/hooks/use-page-view'; import { useIntersectionTracking } from '@/app/hooks/use-intersection-tracking'; import { useClickTracking } from '@/app/hooks/use-click-tracking';

Usage Example

// Hook for automatic page views usePageView(locale); // Click tracking const { trackClick } = useClickTracking(); trackClick('hero_primary_cta_click', { source_component: 'home_hero', cta_id: 'hero_primary', destination: href, }); // Section impression tracking const sectionRef = useIntersectionTracking({ sectionId: 'home_about', funnelStage: 'awareness', });

📋 Events by Category

🌐 Global Events

1. page_view

BDD: Scenario “Register page_view per route and locale”

Trigger: Any page load

Additional parameters:

Implementation: Automatic via usePageView(locale)

Status: ✅ Implemented


2. header_navigation_click

BDD: Scenario “Track global navigation interactions”

Trigger: Click on a navigation item in the header

Additional parameters:

Component: src/app/components/landing-page/header.tsx

Status: ⏳ Pending


3. theme_toggle

BDD: Scenario “Track header theme toggles”

Trigger: Click on the theme toggle button

Additional parameters:

Component: src/app/components/commons/theme-switcher.tsx

Status: ⏳ Pending


🏠 Home Page Events

4. hero_primary_cta_click

BDD: Scenario “Track hero primary CTAs”

Trigger: Click on the hero primary CTA

Additional parameters:

Funnel Stage: awareness

Status: ⏳ Pending


5. hero_secondary_cta_click

BDD: Scenario “Track hero primary CTAs”

Trigger: Click on the hero secondary CTA

Additional parameters:

Funnel Stage: awareness

Status: ⏳ Pending


6. section_view

BDD: Scenario “Track impressions of key sections”

Trigger: 60% of the section enters the viewport

Additional parameters:

Funnel Stages:

Implementation: Via useIntersectionTracking

Status: ⏳ Pending


7. home_projects_tab_selected

BDD: Scenario “Capture highlighted project tab interactions”

Trigger: Tab selection in the projects section

Additional parameters:

Funnel Stage: consideration

Status: ⏳ Pending


8. home_projects_cta_click

BDD: Scenario “Track the active project CTA”

Trigger: Click on the primary CTA in the projects tab

Additional parameters:

Funnel Stage: consideration

Status: ⏳ Pending


9. home_content_highlight_click

BDD: Scenario “Track clicks on content highlights”

Trigger: Click on a content highlight card

Additional parameters:

Funnel Stage: consideration

Status: ⏳ Pending


10. contact_channel_click (Home)

BDD: Scenario “Track clicks on the home contact channels”

Trigger: Click on a contact channel on the home page

Additional parameters:

Funnel Stage: conversion

Status: ⏳ Pending


11. home_contact_page_cta_click

BDD: Scenario “Track the ‘Talk to ignitionstack.pro’ CTA”

Trigger: Click on the “Talk to ignitionstack.pro” button

Additional parameters:

Funnel Stage: conversion

Status: ⏳ Pending


📧 Contact Page Events

12. contact_channel_click (Contact Page)

BDD: Scenario “Track clicks on the direct /contact channels”

Trigger: Click on a contact channel on /contact

Additional parameters:

Funnel Stage: conversion

Status: ⏳ Pending


13. contact_form_started

BDD: Scenario “Track when the contact form starts being filled”

Trigger: The first valid field is filled

Additional parameters:

Funnel Stage: conversion

Status: ⏳ Pending


14. contact_form_submit

BDD: Scenario “Track contact form submission”

Trigger: Successful form submission

Additional parameters:

Funnel Stage: conversion

Status: ⏳ Pending


15. contact_form_validation_failed

BDD: Scenario “Track contact form submission”

Trigger: Validation failure

Additional parameters:

Funnel Stage: conversion

Status: ⏳ Pending


16. contact_form_failed

BDD: Scenario “Track contact form submission”

Trigger: Error while submitting the form

Additional parameters:

Funnel Stage: conversion

Status: ⏳ Pending


17. contact_self_service_click

BDD: Scenario “Track the self-service (#faq) click”

Trigger: Click on the FAQ link

Additional parameters:

Funnel Stage: consideration

Status: ⏳ Pending


🛒 Store Page Events

18. store_filter_applied

BDD: Scenario “Track store filter adjustments”

Trigger: Any filter change

Additional parameters:

Funnel Stage: consideration

Status: ⏳ Pending


19. store_template_cta_click

BDD: Scenario “Track template card interactions”

Trigger: Click on a template CTA

Additional parameters:

Funnel Stage: conversion

Status: ⏳ Pending


20. store_contact_cta_click

BDD: Scenario “Track the ‘Talk about a project’ CTA”

Trigger: Click on the contact CTA in the store

Additional parameters:

Funnel Stage: conversion

Status: ⏳ Pending


🔗 Recommendations Page Events

BDD: Scenario “Track affiliate link clicks”

Trigger: Click on “View offer”

Additional parameters:

Funnel Stage: consideration

Status: ⏳ Pending


💼 Projects Page Events

22. projects_project_click

BDD: Scenario “Track highlighted project clicks”

Trigger: Click on a project card

Additional parameters:

Funnel Stage: consideration

Status: ⏳ Pending


23. projects_github_cta_click

BDD: Scenario “Track the ‘View on GitHub’ CTA”

Trigger: Click on the “View on GitHub” button

Additional parameters:

Funnel Stage: consideration

Status: ⏳ Pending


BDD: Scenario “Track footer navigation clicks”

Trigger: Click on a navigation link in the footer

Additional parameters:

Funnel Stage: depends on the destination

Status: ⏳ Pending


BDD: Scenario “Track social network clicks”

Trigger: Click on a social media icon

Additional parameters:

Funnel Stage: loyalty

Status: ⏳ Pending


✅ Status Summary

CategoryTotalImplementedPending
Global312
Home808
Contact606
Store303
Recommendations101
Projects202
Footer202
TOTAL25124

🧪 Testing

To validate the GA4 events:

  1. Development: Events are logged to the console
  2. Production: Use GA4 DebugView 
  3. Chrome Extension: GA Debugger 

📚 References


Last Update: 2025-10-07 Status: 🟡 In Progress (4% complete)