WebEngage Analytics Events
✅ QA Verified — Cross-checked against two production QA reports (Dec-2025 / Jan-2026, Android & iOS). Source verified against
@appmaker-packages/extension-webengageon theexpo-53-updatebranch. The verified themes use only the default events (nowebengageEventDatafilter overrides).
This document lists the default events fired by the Appmaker WebEngage plugin (@appmaker-packages/extension-webengage) — for each event you will find:
- What it does — the user action it represents.
- When it is triggered — the in-app action that fires it.
- Attributes — the properties sent with the event.
Scope
- Only the default events fired from the SDK / app code are listed here.
- Custom event overrides added by themes/extensions via the
webengageEventDatafilter are out of scope. See How to customise WebEngage events to add or rename events.- Webhook / system events sent to WebEngage from outside the app (Shopify webhooks like
Order Created,Order Updated,Order Cancelled,Checkout Updated,Checkout Started,Checkout Completed; or WebEngage system events likeEmail Sent,Email Delivered,sms send,Campaign Conversion,Push Subscribe Process) are not fired by the plugin and are not documented here.
Event Summary
| # | Event Name | What It Tracks | Triggered When |
|---|---|---|---|
| 1 | Product Viewed | A product detail page (PDP) is viewed | User opens a product page |
| 2 | Category Viewed | A collection / category page is viewed | User opens a collection / category page |
| 3 | Searched Product | A product search is performed | User runs a search query |
| 4 | Added To Cart | A product is added to the cart | User taps "Add to Cart" |
| 5 | Removed From Cart | A line item is removed from the cart | User removes a line from the cart |
| 6 | Remove from Cart | A line item's quantity is decreased | User decreases the quantity of a cart line item |
| 7 | Cart Updated | The cart contents change | Any add / remove / update of cart contents |
| 8 | Cart Viewed | The cart page is viewed | User opens the cart |
| 9 | Added to Wishlist | A product is saved to wishlist | User adds a product to the wishlist |
| 10 | Offer Availed | A coupon code is applied | User applies a coupon in the cart |
| 11 | Checkout Button Clicked | The user starts checkout | User taps the "Checkout" button from the cart |
| 12 | Checkout Created | A snapshot of the created checkout | Fired together with Checkout Button Clicked |
| 13 | Order Completed | An order is successfully placed | Thank-you page is reached |
| 14 | Customer Registered | A new user signs up | New user completes registration |
| 15 | User Login (identity) | The user identity is attached to the WebEngage user | On user login / register — calls webengage.user.login() |
| 16 | User Logout (identity) | The user identity is detached | On user logout — calls webengage.user.logout() |
Product Viewed
What it does: Marks that a product detail page (PDP) was viewed. Triggered when: The user lands on a product detail page.
Attributes
| Property | Type | Description |
|---|---|---|
ID | String | Numeric Shopify product ID |
Price | Number | Sale price (rounded integer) |
Title | String | Product name |
Currency | String | Currency code (e.g. INR, USD) |
Available | Boolean | true if the product is available for sale |
Total Variants | Number | Number of variants the product has |
Source | String | Online store URL of the product |
Tags | String | Comma-separated list of product tags |
Image | String | URL of the first product image |
Variant Id | String | Numeric Shopify variant ID |
Discount | Number | Discount amount (compareAtPrice − price) |
Category Viewed
What it does: Marks that a collection / category page was viewed. Triggered when: The user opens a collection / category page.
Attributes
| Property | Type | Description |
|---|---|---|
Id | Number | Numeric Shopify collection ID |
Title | String | Collection / category title |
Image | String | Collection image URL |
Product Count | Number | Number of products on the page |
Source | String | Collection ID (string form) |
Searched Product
What it does: Captures a product search. Triggered when: The user runs a product search.
Attributes
| Property | Type | Description |
|---|---|---|
Terms | String | Search query |
Added To Cart
What it does: Captures a product being added to the cart. Triggered when: The user taps "Add to Cart" on a product.
Attributes
| Property | Type | Description |
|---|---|---|
Title | String | Product name |
Image | String | First product image URL |
Vendor | String | Product vendor |
Quantity | Number | Quantity added |
Product ID | String | Numeric Shopify product ID |
Variant ID | String | Numeric Shopify variant ID |
Product Type | String | Shopify product type |
Variant Title | String | Variant title (empty if Default Title) |
Currency | String | Currency code |
Price | Number | Unit price (rounded integer) |
Source | String | Online store URL of the product |
Removed From Cart
What it does: Captures the full removal of a line item from the cart. Triggered when: The user removes a line item from the cart.
Attributes
| Property | Type | Description |
|---|---|---|
Title | String | Product name |
Image | String | Variant / product image URL |
Vendor | String | Product vendor |
Quantity | Number | Quantity that was in the cart |
Product ID | String | Numeric Shopify product ID |
Product Name | String | Product name |
Variant ID | String | Numeric Shopify variant ID |
Variant Title | String | Variant title (empty if Default Title) |
Product Type | String | Shopify product type |
Currency | String | Currency code |
Price | Number | Unit price (rounded integer) |
Source | String | Online store URL of the product |
Remove from Cart (Quantity Decrease)
What it does: Captures a quantity-decrease on a cart line item. Triggered when: The user decreases the quantity of a cart line item.
Note: This is a separate event from
Removed From Cart. The casing differs by design — it is fired on quantity decrease, not on full line removal.
Attributes
Same as Removed From Cart.
Cart Updated
What it does: Captures any change to the cart contents. Triggered when: The cart contents change (add / remove / update).
Attributes
| Property | Type | Description |
|---|---|---|
Line Items | Array | Array of cart line item edges |
Number of Products | Number | Total quantity across all line items |
Product Names | String | Comma-separated list of product titles (with variant titles) |
Total | Number | Cart total value |
Cart Viewed
What it does: Marks that the cart page was viewed. Triggered when: The user opens the cart page.
Attributes
| Property | Type | Description |
|---|---|---|
Line Items | Array | Array of cart line item edges |
Number of Products | Number | Total quantity across all line items |
Product Names | String | Comma-separated list of product titles (with variant titles) |
Total | Number | Cart subtotal (rounded integer) |
Added to Wishlist
What it does: Captures a product being saved to the wishlist. Triggered when: The user adds a product to the wishlist.
Attributes
| Property | Type | Description |
|---|---|---|
Product ID | String | Numeric Shopify product ID |
Title | String | Product name |
product_name | String | Product name (alias for compatibility) |
Price | Number | Product price (rounded integer) |
currency | String | Currency code |
Image | String | First product image URL |
Vendor | String | Product vendor |
URL | String | Online store URL of the variant |
Offer Availed
What it does: Captures a coupon code being applied. Triggered when: The user applies a coupon code in the cart.
Attributes
| Property | Type | Description |
|---|---|---|
Coupon Code | String | Coupon code |
Checkout Button Clicked
What it does: Marks the start of checkout from the cart. Triggered when: The user taps the Checkout button from the cart page.
Attributes
| Property | Type | Description |
|---|---|---|
Currency | String | Currency code |
Total Items | Number | Total quantity in the cart |
Total Price | Number | Total cart value |
Checkout Created
What it does: Sends a richer snapshot of the checkout being created (customer + cart details).
Triggered when: Fired together with Checkout Button Clicked.
Attributes
| Property | Type | Description |
|---|---|---|
Created At | String | ISO timestamp of cart creation |
currency | String | Currency code |
cart token | String | Numeric cart ID |
customer email | String | Customer email (from cart) |
customer first name | String | Customer first name (from local user state) |
customer last name | String | Customer last name |
customer phone | String | Customer phone |
email | String | Customer email |
name | String | firstName lastName |
source | String | Cart web URL |
subtotal price | Number | Cart subtotal (rounded integer) |
total price | Number | Cart total (rounded integer) |
total spent | Number | Cart total (rounded integer) |
user id | String | Numeric customer ID |
line_items | Array | Array of line item edges |
productIds | String | Comma-separated list of product IDs |
Order Completed
What it does: Captures a successful purchase. Triggered when: An order is successfully placed (the thank-you page is reached).
Attributes
| Property | Type | Description |
|---|---|---|
Created At | String | Cart createdAt timestamp |
currency | String | Currency code |
customer email | String | Customer email |
customer first name | String | Customer first name |
customer id | String | Numeric customer ID |
customer last name | String | Customer last name |
customer phone | String | Customer phone |
email | String | Customer email |
name | String | firstName lastName |
phone | String | Customer phone |
cart token | String | Numeric cart ID |
checkout id | String | Numeric checkout ID |
checkout token | String | Numeric checkout token |
order number | String | Order number |
current total price | Number | Order total amount |
order id | String | Numeric order ID |
line_items | Array | Array of line item edges |
productIds | String | Comma-separated list of product IDs |
tags | String | Comma-separated customer tags |
total price | Number | Order total |
user_id | String | Numeric customer ID |
Customer Registered
What it does: Captures a new user signing up.
Triggered when: A new user completes signup. The plugin also calls webengage.user.login() to attach the user identity (see below).
Attributes
| Property | Type | Description |
|---|---|---|
ID | String | Numeric customer ID |
Customer Id | String | Numeric customer ID |
Email | String | Customer email |
First Name | String | Customer first name |
Last Name | String | Customer last name |
Identity | String | Customer name |
Phone | String | Customer phone |
Tags | String | Comma-separated customer tags |
User Identity (Login / Logout)
These are not webengage.track() events — they are calls into the WebEngage user identity API. They appear in the WebEngage QA report as User login / User logout.
User Login
What it does: Attaches the WebEngage user identity (and their email / phone attributes) to the active session. Triggered when: The user logs in or registers. Behaviour:
- If the plugin setting
use_phone_as_user_idis enabled and the user has a phone number, callswebengage.user.login(phone). - Otherwise calls
webengage.user.login(email). - Then sets attributes:
webengage.user.setEmail(email)webengage.user.setPhone(phone)(when phone is non-null)
User Logout
What it does: Detaches the WebEngage user identity.
Triggered when: The user logs out.
Behaviour: Calls webengage.user.logout().
Customising or Adding Events
To rename, modify, or override any of the default events listed above, use the webengageEventData filter from your theme or extension. See How to customise WebEngage events.