Tracking Events & Parameters Reference
Unified specification for Web and Email Recommendations, Behavioral Triggers, Site Search, & CDP
For “how to” (client‑side, server‑side, GTM, hybrid), see the implementation articles.
Event Overview
Raptor supports the following tracking events:
| Event | Purpose | Used In |
|---|---|---|
| Visit | Product detail impressions | Recommendations, Triggers, CDP |
| Basket | Basket state changes | Recommendations, Abandoned Basket, Price Drop Basket Triggers |
| Buy | Completed purchase | Recommendations, Triggers, CDP |
| Favorite | Wish‑list / favorites activity | Favorites Triggers, Recommendations |
| ContentVisit | Non-product content views | Content-based recommendations |
| Search | Search queries | Site Search, Recommendations |
| SearchClick | Clicks on search results | Site Search reporting |
| SearchResult | Search result impressions | Site Search reporting |
| ItemClick | Clicks on recommendation modules | Module performance analytics |
Core Concepts (apply to all events)
-
User Tracking (sent with every event, not repeated below):
CookieId(GUID) – anonymous user identifier (UUID v.4)
-
SessionId(GUID) – session identifier (UUID v.4)WebsiteId(optional) – internal site ID for logged‑in users (email/GUID/CRM user number)RuId(optional, Base64) – user identifier for email attribution; not stored in cookiesReaID(optional) – Raptor’s encrypted form used in emailed links when RuId = email
-
ProductId(p2) – variant‑level ID; must match the product feedMasterId(p18) – parent product without variants; recommended when variants exist; otherwise optionalCategoryPath(p4) recommended depth: 3–4 levels; repeat ID if name unavailable; avoid,and;in names. Using the format:CategoryId1#CategoryName1;CategoryId2#CategoryName2
Event Specifications (Full Reference)
💡 Automatic Events - PageView
This event is sent automatically by the Raptor client‑side tracking script when it loads on a page.
- You do not need to implement this manually.
- It is used only for basic page metrics and debugging (Live Tracking Stream).
- It does not impact recommendations, triggers, CDP models, or Site Search.
- It is not required when using server-side or hybrid tracking.
Visit
Every time a product detail page (PDP) is viewed, a visit event should be fired. This tracks interest in a product. Used for recommendation ranking, triggers, personalization, and CDP behavior models.
| Param | Name | Type | Example |
|---|---|---|---|
| p1 | EventType | string | visit |
| p2 | ProductId | string | m57500_Red |
| p3 | ProductName | string | Asics 4 running jacket |
| p4 | CategoryPath | string | 400#Running;402#Clothes;422#Jackets |
| p8 | BrandId | string | Asics |
| p12 | ItemPrice | decimal | 100.00 |
| p15 |
StockStatus
|
string
|
true |
| p18 | MasterId | string | m57500 |
Basket (basket add/remove/clear)
Every time a user adds, removes or clear out the basket, a basketevent should be fired. This includes add-to-basket actions from both the Product Detail Page (PDP) and the Product Listing Page (PLP), wherever that functionality is available. This event is mainly used for the abandoned basket trigger, but also for feeding the Recommendation Engine with information about what the users add to their basket, used for personal recommendation.
| Param | Name | Type | Example |
|---|---|---|---|
| p1 | EventType | string | basket |
| p2 | ProductId | string | m57500_Red |
| p10 | BasketContent | string | m57500_Red,b562505_Blue,a452354_Black |
| p11 | BasketId | string | 4ads6a6fa532 |
| p12 | ItemPrice | decimal | 100.00 |
🔍 Note:
- Include
p2only on “add” actions; omit for “remove”/“clear”. p10must contain the entire basket (comma‑separated ProductIds, not MasterIds) and be kept chronological.p11is used by Abandoned Basket and Price Drop Basket triggers.
Buy (purchase)
The buy event should be fired when someone views the final confirmation-page, or otherwise completes the ordering-process. Fire the buy event for every product within the order. For example, if a customer buys 1 unit of product A and 2 units of product B within one order, then two buy events should be sent.
The buy event is key for analyzing the overall performance of your business, combining products, and making personal recommendations.
| Param | Name | Type | Example |
|---|---|---|---|
| p1 | EventType | string | buy |
| p2 | ProductId | string | m57500_Red |
| p3 | ProductName | string | Asics 4 running jacket |
| p5 | Subtotal | decimal | 100.00 |
| p6 | Currency | string | EUR |
| p12 | ItemPrice | decimal | 50.00 |
| p13 | Quantity | integer | 2 |
| p18 | MasterId | string | m57500 |
| p21 | OrderId | string | ORD-123456 |
🔍 Note:
- Fire one
buyevent per item in the order. p5,p6,p12,p13are used by the CLV model (CDP purpose).p21(OrderId) is used by i2i models when order imports are enabled
Favorite (Wish List / Favorites List)
Every time a user adds, removes or clear out the favorites list, a favorite event should be fired. This event is used for the for feeding the Recommendation Engine with information about what the users add to their favorites list, but also to Behavioral triggers such as Abandoned Favorites, Price Drop Favorites, Back On Stock Favorites and Campaign Favorites.
Some sites refer to this favorites list as a "wish list". In the Raptor Control Panel we use the favorites list as a term for wish list.
| Param | Name | Type | Example |
|---|---|---|---|
| p1 | EventType | string | favorite |
| p2 | ProductId | string | m57500_Red |
| p12 | ItemPrice | decimal | 100.00 |
| p14 | FavoriteListContent | string | pX,pY,pZ |
| p23 | FavoriteListId | string | FAV-4ads6a6fa532 |
🔍 Note:
- Include
p2only on “add”. p14must contain the entire favorites list as comma‑separated ProductIds, in reverse chronological order.p23is used by multiple favorites triggers (Abandoned, Price Drop, Back in Stock, Campaign).
ContentVisit (non-product content view)
When a user visits a content page the contentvisit event should be fired. A Content Page is a type of page that features text, images, videos etc, but does not include products. Examples of content pages are blogs, cases, articles and similar types of content. This enables all recommendations based on content.
| Param | Name | Type | Example |
|---|---|---|---|
| p1 | EventType | string | contentvisit |
| p9 | ContentId | string | Blog_2312 |
| p26 | ContentName | string | 10 Tips for Runners |
| p27 | ContentTag | string | running,training |
| p28 | ContentCategory | string | 25#Menswear;11#Spring |
🔍 Note: p28 is required to classify content; use the same category path format as products previously mentioned as p4.
Search (on-site query)
Every time a user uses the search bar a searchevent should be fired. This helps the Recommendation Engine connect search results with products and content and vice versa.
| Param | Name | Type | Example |
|---|---|---|---|
| p1 | EventType | string | search |
| p17 | SearchPhrase | string | running jacket |
SearchClick (clicked a result)
(only required when implementing Site Search)
Every time a user clicks a search result a searchclickevent should be fired. The clicked product id should be sent along the click event. Optionally you can also send the position of the clicked item in the result as a parameter. Used for Site Search reporting.
| Param | Name | Type | Example |
|---|---|---|---|
| p1 | EventType | string | searchclick |
| p2 | ProductId | string | m57500_Red |
| p30 | SearchResultPosition | integer | 1 |
| p31 | SearchResult | string | id1,id2,id3 |
SearchResult (results shown)
(only required when implementing Site Search)
Every time a search result is presented on the website a searchresultevent should be fired. We recommend picking up the "hits" array from TypeSense, and grapping the result from here. We don't need the entire result with all its data, just the product Ids, as a comma separated list. Used for Site Search reporting.
| Param | Name | Type | Example |
|---|---|---|---|
| p1 | EventType | string | searchresult |
| p31 | SearchResult | string | id1,id2,id3 |
ItemClick (clicked a recommendation)
(ItemClick is not used for Email recommendations or Site Search analytics)
The itemclick event should be fired every time a user clicks on a Raptor recommendation. If the end user can add products to the basket directly from the Raptor recommendation spot, the itemclick event should also be fired. The itemclick event is critical for performance reporting of the Website Recommendation Modules.
| Param | Name | Type | Example |
|---|---|---|---|
| p1 | EventType | string | itemclick |
| p2 | ProductId | string | m57500_Red |
| ApiMethod | ModuleName | string | GetSimilarItemsWeb |
🔍Best Practices
- IDs must match your product feed (especially
p2 ProductId). - Do not duplicate events (e.g., don’t send both client and server versions of the same
basketchange). - Track the full lists in list parameters (
p10,p14,p31), not deltas. - Keep ordering rules: basket = chronological; favorites = reverse chronological.
- Use MasterId when variants exist.
👀 A complete testing checklist is included in the “Testing Tracking Implementations” article.