BFG Store Locator GA4 Custom Events

Written By Zoren Lumosbog

Last updated 11 months ago

This document outlines all custom Google Analytics 4 (GA4) events tracked in the application, including their event names and associated parameters. This will help your analytics team map custom dimensions and create reports effectively.

1. map_search

Purpose: Tracks user searches on the map view.

Parameters:
- search_success (boolean): true if results > 0, otherwise false.
- total_results (number): Count of results returned.
- zero_result (boolean): true if no results returned.
- selected_filters (string): JSON-encoded object of selected filters.
- search_term (string): Search keyword entered by user.
- refined_search_count (number): Number of times the search was refined.

2. store_impression

Purpose: Tracks when a store marker is rendered on the map.

Parameters:
- store_id (number): Unique store identifier.
- store_name (string): Store name.

3. store_click

Purpose: Tracks when a store marker is clicked.

Parameters:
- store_id (number): Store identifier.
- store_name (string): Store name.

4. store_details_view

Purpose: Tracks when a user views the store’s details.

Parameters:
- store_id (number): Store identifier.
- store_name (string): Store name.

5. store_viewport_duration

Purpose: Tracks how long a store’s marker stays visible in the viewport before being clicked or removed.

Parameters:
- store_id (number): Store identifier.
- store_name (string): Store name.
- duration_seconds (number): Time (in seconds) the store marker was visible.

6. map_interaction

Purpose: Tracks user interactions with the map.

Parameters:
- interaction_type (string): Action type (`zoom`, pan).
- latitude (number): Map center latitude.
- longitude (number): Map center longitude.
- zoom_level (number): Map zoom level.
- zoom_result_count (number): Number of results visible at zoom.

7. store_distance_analysis

Purpose: Tracks distance from user to selected store.

Parameters:
- store_id (number): Store identifier.
- store_name (string): Store name.
- user_latitude (number): User’s latitude.
- user_longitude (number): User’s longitude.
- store_latitude (number): Store’s latitude.
- store_longitude (number): Store’s longitude.
- distance_km (number): Calculated distance in kilometers.

8. map_filter_usage

Purpose: Tracks usage of map filters.

Parameters:
- filter_combination (string): JSON of filters applied.
- filter_result_count (number): Results count with filters.
- filter_engagement (number): Engagement metric (clicks/interactions).

9. map_control_usage

Purpose: Tracks user actions on map control buttons.

Parameters:
- control_name (string): Name of control used (e.g., zoom_in, reset, locate_me).
- control_zoom_level (number): Zoom level when the control was used.
- control_zoom_result_count (number): Result count at that zoom level.

10. api_response_time

Purpose: Tracks API performance.

Parameters:
- endpoint (string): Name of the API endpoint.
- duration_ms (number): Time taken in milliseconds.
- success (boolean): API call status.

11. data_load_error

Purpose: Tracks errors during data loading.

Parameters:
- error_type (string): Type/category of the error.
- error_message (string): Description of the error.

Notes for Report Creation:

- For each parameter you want to use in GA4 reports, define a Custom Dimension or Custom Metric in your GA4 admin settings.
- Use GA4’s Exploration Reports or Pivot Tables to analyze grouped and event-specific metrics.
- Use event name filters to isolate metrics per user action.