Google Analytics Event Schema
Envive → GA4 event schema (merchant-facing)
Note: This GA4 event schema is only available as a togglable feature with Envive v3. If you are using Envive v2, a different subset of events applies. See Widget Analytics Event Sources for more information.
This page documents the Envive events we make available for Google Analytics 4 (GA4) via window.dataLayer.
For information on how to configure your tag manager to capture these events, see Google Analytics Configuration Guide
How to read this document
GA4 constraints (why some fields are excluded)
GA4 works best when event parameters are:
flat (not nested objects)
snake_case
bounded (avoid free text, URLs, or unbounded IDs)
limited string size strings are truncated to 100 characters. If a string surpasses 100, we truncate to 97 and append "..." to indicate truncation.
Envive may capture richer internal data, but we only project GA-safe fields into dataLayer.
Status labels
✅ Available now — currently sent to
window.dataLayer🟨 Planned — intended for future support (not currently sent)
🚫 Not sent to GA — internal-only and intentionally excluded
Events available in GA4
✅ envive_initialized
envive_initializedThis event indicates Envive has initialized on the page. It’s the easiest way to confirm that Envive is installed and whether it is enabled.
Parameters
environment_envive_enabled
boolean
yes
Whether Envive is enabled
environment_sales_agent_enabled
boolean
yes
Whether the Sales Agent experience is enabled
performance_start_time_ms
number
yes
Time from page navigation start to when the Envive script tag first begins executing (milliseconds)
performance_initialize_time_ms
number
yes
Time from page navigation start to when Envive has fully initialized (config loaded, feature flags resolved, services ready) (milliseconds)
Common Usage
The most common use case for envive_initialized is to capture whether or not envive is enabled for a user to account for traffic splits and other overrides. By checking if a user had an event for envive_initialized with environment_envive_enabled: true, you can infer that this user was likely exposed to envive.
Important Caveat Even if environment_envive_enabled: true, your users may still not have been exposed to Envive since some pages may not be supported (like some wishlists, contact pages, etc.)
✅ envive_chat_request
envive_chat_requestThis event is sent when a shopper submits a message to Envive chat (typed, selected from suggestions, or automatically triggered).
Parameters
page_type
string
yes
The type of page where the request occurred
Values are intended to be: pdp, plp, homepage, search, other
page_id
string
yes
A stable identifier for the page
See “Stable page_id” below
chat_user_typed
boolean
yes
Whether the shopper typed the message (vs clicked a suggestion)
true / false
chat_request_type
string
yes
The type of chat request
Values are intended to be: text (user typed), suggestion (suggested button or prompt), page_visit (automatic page load request - no direct user interaction), form (form submission)
trigger_widget
string
yes
The Envive widget or source that initiated the chat
See “Widget values” below
🚫 Not sent to GA (by design)
We do not send the following to GA4:
internal interaction UUIDs (not generally useful in GA reporting)
chat_request_text(not generally useful in GA reporting due to high cardinality and low data aggregation utility). For insights into specific chat data, please ask your Envive representative about EnviveHub.
🟨 Planned additions
We may add these later if they provide clear value in reporting:
chat_suggestion_idchat_suggestion_categorychat_suggestion_created_atchat_suggestion_is_answerchat_form_type
Common Usage
envive_chat_request is typically used to determine the level of engagement that a user has with Envive. Consider tracking an "Engaged" cohort as:
User submitted a chat request (filtering out
chat_request_typeofpage_visit) Consider tracking a "Highly Engaged" cohort as:User submitted a chat request > 3 times (filtering out
chat_request_typeofpage_visit)
Important Caveat Envive automatically fire's this event when a user visits certain pages to preload the initial model response. If you are using this event to determine the level of engagement, you may want to filter out events where chat_request_type is page_visit.
✅ envive_chat_response
envive_chat_responseThis event is sent when Envive returns a response to a shopper’s chat request.
Parameters
page_type
string
yes
The type of page where the response occurred
Values are intended to be: pdp, plp, homepage, search, other
page_id
string
yes
A stable identifier for the page
See “Stable page_id” below
chat_user_typed
boolean
yes
Whether the originating request was typed
chat_response_time_ms
number
yes
Time to produce the response from paired request (milliseconds)
chat_product_cards_returned
number
no
Number of product cards returned in the response.
Not included if none returned
chat_review_cards_returned
number
no
Number of review cards returned in the response
Not included if none returned
🚫 Not sent to GA (by design)
We intentionally do not send the following to GA4:
internal interaction UUIDs
Common Usage
envive_chat_response is typically used to determine common sales agent behavior. It may be useful to track things like the percentage of chats that return product cards or reviews.
Planned events (not yet available in GA4)
The events below are part of the intended GA schema, but are not currently sent to window.dataLayer. They are included here so you can see what’s coming.
🟨 envive_page_context_evaluated
envive_page_context_evaluatedThis event is intended to describe whether Envive recognizes a page as supported/ready and which targeting variant was selected.
This is not GA4’s native
page_viewevent and is not intended to replace it.
Planned parameters
context_page_type
string
yes
The type of page evaluated
context_page_id
string
yes
A stable identifier for the page
context_supported
boolean
yes
Whether the page is supported
context_ready
boolean
yes
Whether Envive is ready for this page
context_page_variant_id
string
yes
Targeting / variant identifier selected
environment_envive_enabled
boolean
yes
Whether Envive is enabled
🟨 envive_widget_rendered
envive_widget_renderedThis event is intended to fire when an Envive widget is rendered.
This is not an impression event and does not guarantee the widget was visible—only that it rendered.
🟨 envive_widget_interaction
envive_widget_interactionThis event is intended to capture shopper interactions with Envive widgets in a bounded, GA-friendly format.
Reference
Stable page_id
page_idFor GA reporting, page_id is a stable identifier that is unique to the page type.
In practice:
PDP Pages:
product_idPLP Pages:
plp_idAny other page:
This property is not included
widget values (planned reference)
widget values (planned reference)When present, widget is intended to be one of:
embedded_widgetsuggestion_barfloating_buttonsocial_proofchat_previewfloating_chatsingle_image_promptimage_prompt_cardpost_interaction_comparisonpost_interaction_embedded
surface values (planned reference)
surface values (planned reference)When present, surface is intended to be one of:
floating_sales_agent_chatsearch_zero_statesearch_resultsin_page_widgetfloating_buttonother
Last updated