E-Commerce / D2C Events
This page defines domain-specific events for e-commerce and direct-to-consumer (D2C) products. Events are organized by growth loop stage covering the full shopper journey from discovery through advocacy.
Acquire
Section titled “Acquire”4 events covering user registration, newsletter signups, and promotional engagement.
| Event | Key Properties | Volume | Description |
|---|---|---|---|
user.signed_up | method, source, referral_code, campaign_id | Low | New customer account created |
newsletter.subscribed | source (footer / popup / checkout), list_id, email_hash | Low | User subscribes to the email newsletter |
promotion.viewed | promotion_id, promotion_name, creative, position | High | User sees a promotional banner or card |
promotion.clicked | promotion_id, promotion_name, creative, position | Medium | User clicks on a promotion |
Activate / Browse
Section titled “Activate / Browse”6 events covering product discovery, search, and browsing behavior.
| Event | Key Properties | Volume | Description |
|---|---|---|---|
product.searched | query, results_count, filters_applied (array) | High | User searches the product catalog |
product_list.viewed | list_id, list_name, category, products_count | High | User views a product list or category page |
product_list.filtered | list_id, filters (array), sort_by, results_count | Medium | User applies filters to a product list |
product.clicked | product_id, product_name, category, list_id, position | High | User clicks on a product from a list |
product.viewed | product_id, product_name, sku, category, price_cents, currency, variant | High | User views a product detail page |
product.shared | product_id, product_name, share_channel (email / social / copy_link) | Low | User shares a product with others |
Engage / Cart
Section titled “Engage / Cart”9 events covering cart management and wishlist activity.
| Event | Key Properties | Volume | Description |
|---|---|---|---|
product.added_to_cart | product_id, product_name, sku, quantity, price_cents, currency, variant, cart_id | High | Product added to the shopping cart |
product.removed_from_cart | product_id, product_name, quantity, cart_id | Medium | Product removed from the shopping cart |
cart.viewed | cart_id, items_count, subtotal_cents, currency | High | User views the cart page |
cart.updated | cart_id, items_count, subtotal_cents, currency, change_type (quantity / variant) | Medium | Cart contents modified (quantity or variant change) |
cart.shared | cart_id, share_method, items_count | Low | User shares their cart with someone |
cart.abandoned | cart_id, items_count, subtotal_cents, currency, last_activity_minutes_ago | Medium | Cart inactive beyond the abandonment threshold |
wishlist.product_added | product_id, product_name, wishlist_id, price_cents | Medium | Product added to a wishlist |
wishlist.product_removed | product_id, wishlist_id | Low | Product removed from a wishlist |
wishlist.added_to_cart | product_id, wishlist_id, cart_id | Low | Product moved from wishlist to cart |
Monetise / Checkout
Section titled “Monetise / Checkout”13 events covering the complete checkout flow, coupon handling, and order lifecycle.
| Event | Key Properties | Volume | Description |
|---|---|---|---|
checkout.started | cart_id, items_count, subtotal_cents, currency | Medium | User enters the checkout flow |
checkout.step_viewed | checkout_id, step_name, step_index | Medium | Checkout step page loaded |
checkout.step_completed | checkout_id, step_name, step_index, time_on_step_seconds | Medium | Checkout step submitted successfully |
payment_info.entered | checkout_id, payment_method (card / wallet / bank / bnpl) | Low | User enters payment information |
shipping_info.entered | checkout_id, shipping_method, estimated_delivery_days | Low | User enters shipping details |
coupon.entered | checkout_id, coupon_code | Medium | User types a coupon code |
coupon.applied | checkout_id, coupon_code, discount_cents, discount_type (percentage / fixed) | Low | Coupon code accepted and discount applied |
coupon.denied | checkout_id, coupon_code, denial_reason | Low | Coupon code rejected |
coupon.removed | checkout_id, coupon_code | Low | User removes a previously applied coupon |
order.completed | order_id, total_cents, currency, items_count, shipping_cents, tax_cents, discount_cents, payment_method, is_first_order (bool) | Low | Order placed successfully |
order.updated | order_id, update_type (address / items / shipping_method), updated_fields (array) | Low | Order modified after placement |
order.cancelled | order_id, reason, cancel_method (customer / admin / system), refund_cents | Low | Order cancelled |
order.refunded | order_id, refund_cents, refund_type (full / partial), reason | Low | Refund issued for an order |
Advocate
Section titled “Advocate”7 events covering reviews, loyalty programs, and referrals.
| Event | Key Properties | Volume | Description |
|---|---|---|---|
review.submitted | product_id, rating, has_text (bool), has_images (bool), order_id | Low | Customer submits a product review |
review.approved | review_id, product_id, rating, moderation_time_hours | Low (admin) | Review approved by moderation |
loyalty.points_earned | points, source (purchase / review / referral / birthday), order_id | Medium | Customer earns loyalty points |
loyalty.points_redeemed | points, redemption_type (discount / product / gift_card), value_cents | Low | Customer redeems loyalty points |
loyalty.tier_upgraded | from_tier, to_tier, total_points, qualifying_spend_cents | Low | Customer moves to a higher loyalty tier |
referral.link_shared | channel (email / social / direct / sms), program_id | Low | Customer shares their referral link |
referral.converted | referral_id, referrer_id, order_id, reward_type, reward_value_cents | Low | Referred customer completes a purchase |
Operational
Section titled “Operational”7 events covering inventory, shipping, and returns management.
| Event | Key Properties | Volume | Description |
|---|---|---|---|
inventory.low_stock_alert | product_id, sku, current_stock, threshold, warehouse_id | Low (admin) | Stock level drops below threshold |
inventory.restocked | product_id, sku, quantity_added, new_stock_level, warehouse_id | Low (admin) | Product inventory replenished |
shipment.created | shipment_id, order_id, carrier, tracking_number, items_count | Low | Shipment created for an order |
shipment.delivered | shipment_id, order_id, carrier, delivery_days, signature_required (bool) | Low | Shipment delivered to customer |
return.requested | return_id, order_id, reason, items (array), return_method (mail / store) | Low | Customer initiates a return |
return.approved | return_id, order_id, refund_cents, refund_method | Low (admin) | Return request approved |
return.completed | return_id, order_id, refund_cents, items_received (array), processing_days | Low | Return fully processed and refund issued |
Complete Checkout Flow Example
Section titled “Complete Checkout Flow Example”A full tracking sequence from product view through order completion.
import GrowthOS from '@growthos/js';
const gos = GrowthOS.init('YOUR_WRITE_KEY');
// 1. Product viewedgos.track('product.viewed', { product_id: 'prod_abc', product_name: 'Merino Wool Sweater', sku: 'MWS-BLU-M', category: 'Apparel/Sweaters', price_cents: 8900, currency: 'USD', variant: 'Blue / Medium'});
// 2. Added to cartgos.track('product.added_to_cart', { product_id: 'prod_abc', product_name: 'Merino Wool Sweater', sku: 'MWS-BLU-M', quantity: 1, price_cents: 8900, currency: 'USD', variant: 'Blue / Medium', cart_id: 'cart_xyz'});
// 3. Checkout startedgos.track('checkout.started', { cart_id: 'cart_xyz', items_count: 1, subtotal_cents: 8900, currency: 'USD'});
// 4. Shipping info enteredgos.track('shipping_info.entered', { checkout_id: 'chk_123', shipping_method: 'standard', estimated_delivery_days: 5});
// 5. Coupon appliedgos.track('coupon.applied', { checkout_id: 'chk_123', coupon_code: 'WELCOME10', discount_cents: 890, discount_type: 'percentage'});
// 6. Payment info enteredgos.track('payment_info.entered', { checkout_id: 'chk_123', payment_method: 'card'});
// 7. Order completedgos.track('order.completed', { order_id: 'ord_456', total_cents: 8510, currency: 'USD', items_count: 1, shipping_cents: 500, tax_cents: 0, discount_cents: 890, payment_method: 'card', is_first_order: true});
// 8. Loyalty points earnedgos.track('loyalty.points_earned', { points: 85, source: 'purchase', order_id: 'ord_456'});Segment and GA4 Compatibility
Section titled “Segment and GA4 Compatibility”GrowthOS e-commerce events are designed to map cleanly to both Segment E-commerce V2 and GA4 enhanced e-commerce.
| GrowthOS Event | Segment V2 Equivalent | GA4 Equivalent |
|---|---|---|
product.viewed | Product Viewed | view_item |
product_list.viewed | Product List Viewed | view_item_list |
product.added_to_cart | Product Added | add_to_cart |
product.removed_from_cart | Product Removed | remove_from_cart |
cart.viewed | Cart Viewed | view_cart |
checkout.started | Checkout Started | begin_checkout |
payment_info.entered | Payment Info Entered | add_payment_info |
shipping_info.entered | Checkout Step Completed | add_shipping_info |
order.completed | Order Completed | purchase |
order.refunded | Order Refunded | refund |
promotion.viewed | Promotion Viewed | view_promotion |
promotion.clicked | Promotion Clicked | select_promotion |
product.searched | Products Searched | search |
Event Count by Stage
Section titled “Event Count by Stage”| Stage | Count | Key Metric |
|---|---|---|
| Acquire | 4 | New customer acquisition |
| Activate / Browse | 6 | Product discovery depth |
| Engage / Cart | 9 | Cart conversion rate |
| Monetise / Checkout | 13 | Revenue and AOV |
| Advocate | 7 | Repeat purchase and referral rate |
| Operational | 7 | Fulfillment health |
| Total | 46 |