A product event captures a single interaction between a contact and a product - like a view, add to cart, or purchase. You can use product events to better understand buying intent, build more relevant automations, and personalize communication based on real product engagement.
Product events are built for high-volume tracking. They are designed to work efficiently with high volume of product interactions per month, while still keeping product data usable for segmentation and targeting.
A product event is a dedicated version of event in User.com that links a contact’s action to a specific product using a unique product ID and a defined event type. Each product event updates the product profile with the most recent attribute values, instead of storing historical values for every single event.
This approach ensures high performance even when you send high number of product-related interactions every month, while still allowing you to segment contacts, trigger automations, and personalize content based on product data.
Product events are differentiated by their event type. Each type represents a specific kind of interaction between a contact and a product. The available product event types are:
click
promo click
view
detail
liking
add to observation
reservation
add
add to cart
remove
checkout
checkout option
order
purchase
return
refund
Each event type helps you analyze a different stage of the product journey, from the first interaction to post-purchase actions.
Product events are set in a similar way to regular events, with a few important differences. To send a product event, you must:
Use the keyword product_event.
Include the required attributes: product_id and event_type.
Passing the product name is optional. If you do not include it and the product does not already exist, the product will be created without a name.
Product events can be sent using the JavaScript SDK or the REST API. You can also trigger them directly from HTML elements, for example, on a click action.
Product events can be sent:
Via the JavaScript SDK
Via the REST API
Directly from HTML elements (for example, on click actions)
Example (JavaScript SDK / widget API):
userengage('product_event', {product_id: 'the_id', event_type: 'add to cart', 'name': 'product name', 'my_attribute': 'value', 'my_attribute_2': 'value_2'})Example for the usage within HTML:
<a href="#" onclick="userengage('product_event', {product_id: 'the_id', event_type: 'add to cart', 'name': 'product name', 'my_attribute': 'value', 'my_attrbiute_2': 'value_2'})">CLICK ME!</a>More info about sending product events can be found here. [LINK]
Product events are fully accessible through the User.com REST API, which allows you to retrieve and analyze product interaction data outside the application.
Using the API, you can:
Filter product events by event type
Filtering by event type is possible by adding the parameter: ?type=<product_event_type_id>
When working with the REST API, product event types are represented by numeric identifiers:
ADD_TO_CART = 1
PURCHASE = 2
LIKING = 3
ADD_TO_OBSERVATION = 4
ORDER = 5
RESERVATION = 6
RETURN = 7
VIEW = 8
CLICK = 9
DETAIL = 10
ADD = 11
REMOVE = 12
CHECKOUT = 13
CHECKOUT_OPTION = 14
REFUND = 15
PROMO_CLICK = 16
This API layer makes product events suitable for integrations, reporting, and external analytics, while keeping the core product data model efficient.
Behavior-Based Automations: Use product events to trigger real-time actions based on customer behavior. For example, you can automatically send a reminder or offer when someone adds a product to their cart helping you recover abandoned carts and increase conversions.
Highly Relevant Campaigns: Use real product interactions to send campaigns that feel personal and well-timed. You can target recipients based on products they viewed, added to their cart, or purchased, and dynamically include product details in your messages to boost engagement and click-through rates.
Segments Based on Buying Behavior: Product events help you group contacts by what they actually do, not just who they are. This enables more accurate segmentation, such as:
Contacts who added items to their cart but didn’t purchase
Contacts interested in a specific product category
Contacts who purchased discounted or promotional products
Product-Based Filtering: You can filter contacts using product events to quickly identify leads and customers with strong purchase intent. By combining event types with product attributes like category or price, you can create focused audiences for sales outreach, retargeting, or personalized messaging.
Product attributes always show the most recent value. Because of this, product events can’t tell the difference between earlier and later states of the same product.
If your product comes in multiple variations (such as different sizes, colors, or versions) make sure to create a separate product for each variant. This way, each variation is tracked correctly and its details won’t be overwritten by another one.
How to Send Product Events [LINK]
What Is a Product