EDD License Tracking
PixelYourSite Pro can track the lifecycle of Easy Digital Downloads software licenses — creation, upgrades, renewals, and expirations — and send each one as a dedicated event to your ad and analytics platforms.
Four server-side events are available:
- LicenseCreated — fires when a new license is generated from a purchase.
- LicenseUpgrade — fires when a customer upgrades a license to a higher tier.
- LicenseRenewal — fires when a customer renews an existing license.
- LicenseExpired — fires when a license transitions to the expired status.
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 license tracking support
- The official EDD Software Licensing add-on, installed and active
- A configured server API for each destination you want to fire to:
- Meta CAPI
- Google Analytics – GA4 with Measurement Protocol enabled
- TikTok with the Events API token entered
- Pinterest with the Conversions API token entered
If EDD Software Licensing is not active, the Track License card is shown disabled with a notice asking you to install the plugin first.
How to enable it
- Go to the PixelYourSite Pro → Easy Digital Downloads tab.
- Find the Track License card.
- Turn on the Track License switcher.
- 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.
- Save changes.

The four events
LicenseCreated
Fires on edd_sl_store_license when a new license is created for a purchased download that has Software Licensing enabled.
Use it to:
- Optimize ads for license-generating sales
- Build audiences of active licensees
- Track which products generate licenses (vs non-licensed downloads)
Payload: license_id, license_name, order_id, value (the line-item price of the licensed download in that order), currency, payment_method (when enabled), products.
LicenseUpgrade
Fires on edd_sl_license_upgraded when a customer upgrades an existing license to a higher tier or variation.
Use it to:
- Optimize ads for upgrades and expansion revenue
- Build “high-tier customer” audiences for lookalikes
- Report upgrade revenue separately from new sales
Payload: license_id, license_name (the new tier’s name), order_id, value (the upgrade payment amount), currency, payment_method (when enabled), products.
Note: only the upgrade payment amount is sent — there are no separate “from tier” or “to tier” fields. If you need tier-change reporting, segment by license_name or by the product parameters.
LicenseRenewal
Fires on edd_sl_post_license_renewal when a customer pays to renew an existing license.
Use it to:
- Report recurring license revenue
- Build “renewed customer” retention audiences
- Power renewal-window reminder campaigns
Payload: license_id, license_name, order_id, value (the renewal payment amount), currency, payment_method (when enabled), products.
LicenseExpired
Fires on edd_sl_post_set_status when a license’s new status is expired. This covers every path to expiration: cron-based expiry, manual admin changes, and renewal lapses.
Use it to:
- Trigger renewal-reminder campaigns
- Build win-back audiences
- Track license churn over time
Payload: license_id, license_name, payment_method (when enabled), products. No value, currency, or order_id — expirations don’t represent a transaction.
Lifetime licenses
Lifetime licenses don’t have a renewal cycle or an expiration date. In practice:
- They fire LicenseCreated at purchase.
- They fire LicenseUpgrade if the customer later upgrades.
- They will not fire
LicenseRenewalorLicenseExpired.
Keep this in mind when building reports — your renewal/expiration audiences will exclude lifetime customers by design.
What’s not tracked
PixelYourSite Pro does not currently emit events for:
- License key activations or deactivations on customer sites
- Changes to the number of activation sites allowed
- Manual edits to license keys or expiration dates in the admin
- License downgrades
Only the four events listed above fire, and only on the hooks listed.
Event parameters reference
Common to all four events: license_id (the license post ID — not the license key), license_name, products, plus a fresh eventID per event for server-to-platform deduplication.
Additional fields per event:
| Event | value | currency | order_id |
|---|---|---|---|
| LicenseCreated | line-item price | yes | yes |
| LicenseUpgrade | upgrade payment | yes | yes |
| LicenseRenewal | renewal payment | yes | yes |
| LicenseExpired | — | — | — |
payment_method — global toggle in the EDD events parameters section (enable_edd_payment_method). When enabled, the gateway label is attached to all four license events.
license_name — toggle is license_name (PRO). When enabled the parameter is included; when off, the event is sent without the human-readable license name.
The license key is never sent in the payload, by design — it would be sensitive customer data going to third-party platforms.
How to use it
A few common plays once these events are firing:
- Meta Ads. Create custom conversions on
LicenseCreatedandLicenseUpgradeto optimize ad campaigns for license-generating sales and tier upgrades. RetargetLicenseExpiredaudiences for renewal pushes. - Google Analytics 4. Mark the events as key events and build license cohorts in Explorations. Send
LicenseCreatedandLicenseRenewalfrom GA4 into Google Ads to bid on license revenue. - TikTok / Pinterest. Use the events as custom optimization signals and audience seeds.
For the full step-by-step playbook, see the strategy guide: EDD License Tracking with PixelYourSite.
Verifying the events
- Meta: Meta Events Manager → your dataset → Test Events or Server; look for the four event names.
- GA4: Admin → DebugView during a test purchase / upgrade / renewal; 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.