PixelYourSite Professional / WooCommerce Tracking / WooCommerce Subscriptions Tracking

WooCommerce Subscriptions Tracking

Last updated: May 21, 2026

PixelYourSite Pro can track the full lifecycle of a WooCommerce Subscription — trial sign-ups, paid sign-ups, renewals, cancellations, and expirations — and send each one as a dedicated event to your ad and analytics platforms.

Five server-side events are available:

  • StartTrial — fires when a customer starts a free trial.
  • Subscribe — fires on the first paid sign-up (no trial).
  • SubscriptionRenewal — fires on every renewal payment.
  • SubscriptionExpired — fires when the subscription expires.
  • SubscriptionCanceled — fires when the subscription is cancelled.

Each event is sent server-side via API to:

  • Meta (Facebook) — Conversions API
  • Google Analytics 4 — Measurement Protocol (as GA4 custom events)
  • TikTok — Events API
  • Pinterest — Conversions API

Because the events are sent server-side only, they will not appear in your browser console or in the PYS Pixel Helper. You will see them in Meta Events Manager (Server), GA4 DebugView, and the TikTok / Pinterest Events Managers.

Requirements

  • PixelYourSite Professional with subscription tracking support
  • The official WooCommerce Subscriptions plugin, installed and active
  • A configured server API for each destination you want to fire to:

If WooCommerce Subscriptions is not active, the Track Subscriptions card is shown disabled with a notice asking you to install the plugin first.

How to enable it

  1. Go to the PixelYourSite Pro → WooCommerce tab.
  2. Find the Track Subscriptions card.
  3. Turn on the Track Subscriptions switcher.
  4. Under it, enable the platforms you want to fire to (Facebook, Google Analytics, TikTok, Pinterest). Each platform’s sub-toggle is only available when that platform’s server API is already configured.
  5. Save changes.

The five events

StartTrial

Fires on woocommerce_subscription_payment_complete when the subscription has a non-empty trial period.

Use it to:

  • Build audiences of trial users
  • Optimize ad campaigns for trial sign-ups
  • Power onboarding or trial-to-paid nurture sequences

Payload: subscription_id, subscription_name, currency, order_id, products. No value is sent — a free trial has no payment yet.

Subscribe

Fires on woocommerce_subscription_payment_complete when there is no trial period and the order is not a renewal — i.e., the first paid sign-up of a brand-new subscription.

Use it to:

  • Optimize ads for paid sign-ups
  • Build “new subscribers” audiences
  • Report acquisition value

Payload: subscription_id, subscription_name, value (initial payment total), currency, shipping_cost, shipping_tax, predicted_ltv (when enabled), products, order_id.

SubscriptionRenewal

Fires on woocommerce_subscription_payment_complete when the order is a renewal (wcs_order_contains_renewal() is true). This includes the first paid payment after a free trial — that payment is treated as a renewal, not a Subscribe.

Use it to:

  • Report recurring revenue
  • Build “active subscriber” and “loyal customer” audiences
  • Power retention and upsell campaigns

Payload: subscription_id, subscription_name, value (the latest renewal order total), currency, number_of_transactions (initial payment plus all renewals so far), subscription_value (lifetime total: initial + all renewals), products, order_id.

SubscriptionExpired

Fires on woocommerce_subscription_status_updated when the subscription’s new status is expired.

Use it to:

  • Trigger win-back campaigns
  • Exclude expired subscribers from acquisition campaigns
  • Segment churn cohorts in your reports

Payload: subscription_id, subscription_name, order_id (parent order), currency, products. No value.

SubscriptionCanceled

Fires on woocommerce_subscription_status_updated when the subscription’s new status is cancelled.

Use it to:

  • Trigger cancellation flows or surveys
  • Build win-back audiences
  • Track voluntary churn separately from expirations

Payload: same as SubscriptionExpired.

The free-trial path

A subscription that starts with a free trial will fire events in this order:

  1. StartTrial — once, when the trial begins
  2. SubscriptionRenewal — for the first paid payment when the trial converts, and for every subsequent renewal
  3. SubscriptionExpired or SubscriptionCanceled — if and when the subscription ends

A trial subscription never fires Subscribe. If you want to count “paid conversions”, build that audience or report on SubscriptionRenewal for trial subs, or on Subscribe for direct paid sign-ups.

What’s not tracked

PixelYourSite Pro does not currently emit events for:

  • Switches between subscription products
  • Manual pauses or “on hold” transitions
  • Pending-cancel states
  • Resubscribes after cancellation

Only the five events listed above fire, and only on the hooks listed.

Event parameters reference

Common to all five events: subscription_id, subscription_name, currency, order_id, products, plus a fresh eventID per event for server-to-browser deduplication.

Additional fields per event:

Eventvaluesubscription_valuenumber_of_transactionspredicted_ltv
StartTrial
Subscribeinitial paymentwhen enabled
SubscriptionRenewallatest renewal totalinitial + all renewalsinitial + renewal count
SubscriptionExpired
SubscriptionCanceled

payment_method and new_customer — the global toggles for these parameters live under the WooCommerce Events Parameters settings. Note that they currently only ride along with subscription events when the event is sent to Meta, because Meta’s Subscribe and SubscriptionRenewal reuse the same payload helper as the Purchase event. GA4, TikTok, and Pinterest subscription events do not carry these two fields.

How to use it

A few common plays once these events are firing:

  • Meta Ads. Create custom conversions on Subscribe and SubscriptionRenewal to optimize ad sets for paid sign-ups and recurring revenue. Build retargeting audiences on StartTrial (trial-to-paid funnels) and on SubscriptionCanceled (win-backs).
  • Google Analytics 4. Mark the events as key events, build subscriber cohorts in Explorations, and send Subscribe / SubscriptionRenewal from GA4 into Google Ads to bid on paid sign-ups and recurring revenue.
  • TikTok / Pinterest. Use the events as custom optimization signals and audience seeds.

Verifying the events

  • Meta: Meta Events Manager → your dataset → Test Events or Server; look for the five event names.
  • GA4: Admin → DebugView during a test transaction; the events arrive as GA4 custom events with their parameters.
  • TikTok: TikTok Events Manager → your pixel → event log.
  • Pinterest: Pinterest Events Manager → your tag → event log.