Tracked events
pp_offer_shown— Offer was rendered to the buyer.pp_offer_declined— Buyer declined or the timer expired.pp_offer_accepted— Buyer accepted (includes revenue and items).
Dashboard metrics
Aggregated in the Post-Purchase Analytics dashboard:
Total revenue and orders attributed to post-purchase
Conversion rate (accepted ÷ shown)
Per-funnel breakdown — which funnels are pulling weight
Daily charts for trend analysis
Data freshness
15-minute TTL cache per shop. Data refreshes within 15 minutes of an event. Not instant — but near-real-time.
Performance impact
All analytics writes are fire-and-forget and never block the buyer. The post-purchase flow always feels fast, even when analytics infrastructure is slow.
Reading the funnel
Low show rate — Triggers too restrictive, or matching funnel has no products in stock.
Low conversion — Offer pricing/discount/wording isn't compelling.
High decline + DOWNSELL conversion — Original UPSELL is wrong; downsell is the real winner.

