Automatically Generated — These events are created by Upstack backend services for Shopify customers. You do not need to fire these events manually.
Overview
Upstack automatically generates subscription purchase events for stores using subscription apps like Recharge, Bold Subscriptions, Skio, or native Shopify Subscriptions. These events help you measure subscription acquisition, retention, and recurring revenue.
Event Types
| Event Name | Description |
|---|
subscription_initial_purchase | First-time subscription purchase (new subscriber) |
subscription_recurring_purchase | Recurring subscription renewal |
How It Works
When a subscription order is processed, Upstack analyzes the order metadata:
- Order received — Shopify sends a purchase webhook to Upstack
- Subscription detection — Upstack checks for subscription app tags and order properties
- Classification — The order is classified as initial or recurring based on the subscription data
- Event generation — The appropriate subscription event is generated
- Forwarding — Events are sent to your configured destinations
Detection Methods
Upstack identifies subscription orders through:
- Order tags from subscription apps (e.g.,
subscription_first_order, recurring_order)
- Order properties and line item properties containing subscription metadata
- Subscription app-specific identifiers in the order data
Subscription detection works with most major Shopify subscription apps including Recharge, Bold Subscriptions, Skio, Loop Subscriptions, and native Shopify Subscriptions.
subscription_initial_purchase
Generated when a customer signs up for a new subscription. This is the first order in a subscription sequence.
Use Cases
- Measure subscriber acquisition — Track how many new subscribers you’re acquiring
- Calculate subscriber CAC — Understand the true cost to acquire a subscriber
- Optimize acquisition campaigns — Train ad algorithms to find subscription-likely customers
- Attribution for LTV — Attribute the full potential LTV to the acquiring campaign
subscription_recurring_purchase
Generated for each recurring subscription renewal. This includes all orders after the initial subscription purchase.
Use Cases
- Track subscription retention — Monitor recurring revenue from existing subscribers
- Measure churn impact — Understand when recurring purchases decline
- Attribution for retention campaigns — Track which campaigns drive continued engagement
- Revenue forecasting — Use recurring purchase data to predict future revenue
Properties
Both events include 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
Subscription events are forwarded to destinations as:
| Destination | Event Name | Notes |
|---|
| Meta CAPI | Purchase | With subscription_type in custom data |
| Google Ads | purchase | Filterable by event name |
| TikTok Events API | CompletePayment | Subscription flag included |
| Klaviyo | Placed Order | Tagged with subscription type |
| GA4 | purchase | Custom dimension for subscription |
Metrics Available
In the Upstack dashboard, you can view:
| Metric | Description |
|---|
| Subscription Initial Purchases | New subscription sign-ups |
| Cost per Subscription Initial | CAC for new subscribers |
| Subscription Initial Value | Revenue from new subscriptions |
| Subscription Recurring Purchases | Renewal orders |
| Cost per Subscription Recurring | Cost attributed to renewals |
| Subscription Recurring Value | Recurring subscription revenue |
Subscription vs. SaaS Events
Important distinction: These events (subscription_initial_purchase, subscription_recurring_purchase) are for e-commerce subscription boxes and recurring product purchases.For SaaS subscription lifecycle events (plan changes, trials, etc.), see SaaS Events.
| Event Type | Use For |
|---|
subscription_initial_purchase | E-commerce: First subscription box order |
subscription_recurring_purchase | E-commerce: Recurring subscription box renewal |
subscription_started | SaaS: New software subscription |
subscription_created | SaaS: Subscription record created |