Automatically Generated — This event is created by Upstack backend services for Shopify customers. You do not need to fire this event manually.
Overview
The lapsed_purchase event is generated when a customer who hasn’t purchased in an extended period returns to make a new purchase. This event helps you measure the effectiveness of win-back campaigns and understand customer reactivation patterns.
How It Works
Upstack analyzes customer purchase history to identify lapsed customer reactivations:
- Order received — Shopify sends a purchase webhook to Upstack
- Recency analysis — Upstack checks the time since the customer’s last purchase
- Lapsed classification — If the customer hasn’t purchased in the lapsed threshold period, a
lapsed_purchase event is generated
- Forwarding — The event is sent to your configured destinations
Lapsed Customer Definition
A customer is classified as “lapsed” when their last purchase occurred more than 180 days ago (approximately 6 months). This threshold aligns with common e-commerce customer lifecycle definitions.
The 180-day lapsed threshold is based on industry standards for e-commerce. It distinguishes between returning customers (recent purchasers) and lapsed customers (dormant accounts that have been reactivated).
Properties
This event includes all properties from the original purchase event:
| Property | Type | Description |
|---|
| orderId | string | Shopify order ID |
| value | number | Order total value |
| currency | string | ISO 4217 currency code (e.g., USD) |
| items | array | Products purchased |
| email | string | Customer email (hashed for destinations) |
| phone | string | Customer phone (hashed for destinations) |
Destination Mapping
This event is forwarded to destinations as:
| Destination | Event Name | Notes |
|---|
| Meta CAPI | Purchase | With customer_type: lapsed in custom data |
| Google Ads | purchase | Filterable by event name |
| TikTok Events API | CompletePayment | Lapsed flag included |
| Klaviyo | Placed Order | Tagged as lapsed customer win-back |
| GA4 | purchase | Custom dimension for customer lifecycle |
Use Cases
- Measure win-back performance — Track how effectively your reactivation campaigns bring back dormant customers
- Calculate win-back CAC — Understand the cost to reactivate a lapsed customer vs. acquiring a new one
- Optimize win-back timing — Identify the optimal time to reach out to customers before they become permanently churned
- Segment audiences — Build audiences of lapsed customers for targeted reactivation campaigns
Metrics Available
In the Upstack dashboard, you can view:
| Metric | Description |
|---|
| Lapsed Purchases | Total number of lapsed customer purchase events |
| Cost per Lapsed Purchase | Average ad spend per lapsed customer reactivation |
| Lapsed Purchase Value | Total revenue from reactivated customers |
Customer Lifecycle Context
The lapsed_purchase event fits into the broader customer lifecycle:
| Lifecycle Stage | Days Since Last Purchase | Event Generated |
|---|
| Active | 0–90 days | rc_purchase |
| At Risk | 90–180 days | rc_purchase |
| Lapsed | 180–365 days | lapsed_purchase |
| Churned | 365+ days | lapsed_purchase |
Both “Lapsed” and “Churned” customers generate lapsed_purchase events when they return, as the key insight is the reactivation of a dormant account.