Custom events give ad platforms more specific signals to optimize against. The most impactful is NC Purchase — it tells Meta to find buyers who’ve never purchased from you before, instead of optimizing toward repeat customers. Without it, Meta’s algorithm treats a first-time buyer and a fifth-time buyer as equally valuable conversions.Documentation Index
Fetch the complete documentation index at: https://docs.upstackdata.com/llms.txt
Use this file to discover all available pages before exploring further.
New customer purchase (NC Purchase)
NC Purchase fires only when an order comes from a customer with no prior Shopify order history. This enables NC CPA and NC ROAS reporting directly in Meta Ads Manager — two metrics that separate prospecting performance from retargeting performance.Set up in Facebook
Wait for the first event
Once Upstack is live, the first NC Purchase event appears in Meta Events Manager within minutes for active stores. You need at least one event before you can proceed.See How to verify the NC Purchase event in Facebook Events Manager for a walkthrough.
Acknowledge the event
Go to Events Manager → find NC Purchase → Review → Acknowledge/Confirm. This tells Meta to start processing NC Purchase as a recognized event.
Create a custom conversion
In Events Manager, go to Custom Conversions → Create. Set the event to NC Purchase and give it a clear name (e.g., “Upstack NC Purchase”).See How to create and share NC Purchase custom conversion in Facebook for detailed steps.
You need Business Manager admin access (not just ad account admin) to create custom conversions. If you run ads through an agency ad account, switch the Events Manager view to your own Business Manager before creating the conversion.
Add reporting columns
In Ads Manager, add NC CPA and NC ROAS as columns in your reporting view. These metrics let you evaluate prospecting performance independently from retargeting.See How to add NC Purchase metrics and NC ROAS to Facebook Ads Manager for column configuration.
Attribution is forward-looking only — Meta does not backfill historical data for new event types. NC Purchase metrics start populating from the moment the custom conversion is created.
When to use NC Purchase vs. standard Purchase
When to use NC Purchase vs. standard Purchase
Custom purchase events supplement the standard
Allow a learning phase. When you switch an ad set from standard Purchase to
Purchase event — they don’t replace it. Keep standard Purchase active alongside the custom events so Meta’s baseline models still receive every order.| Scenario | Recommended event |
|---|---|
| General ROAS optimization | Standard Purchase |
| Scaling new customer acquisition | nc_purchase |
| Prospecting campaigns targeting cold audiences | nc_purchase |
| Retargeting campaigns for existing customers | rc_purchase or standard Purchase |
| Brand awareness / top-of-funnel | Standard Purchase (broader signal) |
| Measuring retention campaign performance | rc_purchase |
nc_purchase, it re-enters Meta’s learning phase. Meta needs roughly 50 optimization events per week to exit learning, so start with your highest-spend or highest-volume campaign first if new-customer volume is low.Compare before shifting budget. Run nc_purchase-optimized campaigns alongside standard Purchase-optimized campaigns for 2–4 weeks and compare new-customer rate, CAC, and ROAS before committing.Returning customer purchase (RC Purchase)
RC Purchase is the inverse of NC Purchase: it fires only when an order comes from a customer with existing Shopify order history. Together, the two events partition every order into acquisition vs. retention signals, which you can use separately in audience building, retargeting, and retention measurement. Classification uses the same Shopify-order-history check as NC Purchase — if the customer has zero prior completed orders, Upstack firesnc_purchase; if they have one or more, it fires rc_purchase. The standard Purchase event still fires for every order regardless of customer status, so baseline reporting is unaffected.
Why it matters
- Build retargeting audiences that exclude first-time buyers. Feed
rc_purchaseinto custom audiences of recent repeat customers for win-back campaigns, loyalty offers, or cross-sells. - Measure retention, not just acquisition. Treat
rc_purchasevolume and value as a direct signal of how well retention campaigns (email, SMS, paid retargeting) are performing. - Avoid over-indexing on repeat buyers in prospecting. Pairing
rc_purchasewithnc_purchasemakes it obvious when a “Purchase-optimized” campaign is really just retargeting existing customers.
How it works
RC Purchase mirrors the NC Purchase setup in Meta — the only differences are the event name you select and the fact that the custom conversion represents returning customers.Wait for the first event
Once Upstack is live, the first RC Purchase event appears in Meta Events Manager as soon as an existing customer places an order. You need at least one event before you can proceed.
Acknowledge the event
Go to Events Manager → find RC Purchase → Review → Acknowledge/Confirm so Meta starts processing it as a recognized event.
Create a custom conversion
In Events Manager, go to Custom Conversions → Create. Set the event to RC Purchase and give it a clear name (e.g., “Upstack RC Purchase”). Select Purchase as the category and leave the value field at its default so Meta uses the order value sent with the event.
You need Business Manager admin access (not just ad account admin) to create custom conversions. If you run ads through an agency ad account, switch the Events Manager view to your own Business Manager before creating the conversion.
Subscription events
For subscription brands, Upstack handles subscription events automatically. No manual setup is required.| Event | When it fires | Sent to Meta? |
|---|---|---|
| Subscription Initial | First subscription order | Yes — counted as a purchase |
| Subscription Recurring | Renewal orders | No — excluded from Meta |
Advanced configuration
Category-specific events
Category-specific events
If you sell across multiple product categories (e.g., apparel and skincare), Upstack can fire purchase events scoped to each category —
apparel_purchase, skincare_purchase, and so on. This lets you create category-specific custom conversions in Meta and optimize ad sets for each product line independently.Contact the Upstack team to configure category-specific events for your store.Order source exclusions
Order source exclusions
Not every order should feed back into Meta or Google’s optimization. Some sources would pollute your conversion data.To configure exclusions, go to Settings → Order Source Exclusions and select the sources you want to block:
- TikTok Shop orders
- Loop (returns/exchanges)
- Matrixify (bulk imports)
- Draft Orders
- POS (in-store transactions)
Next step
Configure contribution margin
Set up COGS, transaction fees, and marketing spend so the P&L dashboard reflects real profitability.
Related
Complete NC Purchase setup guide
End-to-end walkthrough for NC Purchase, custom conversions, and reporting columns in Meta Ads Manager.
Verify NC Purchase events
Confirm NC Purchase events are arriving in Meta Events Manager and recognized correctly.
Connect a destination
Set up Meta CAPI as your first server-side destination for high-quality conversion events.
Verify end-to-end delivery
Confirm the complete pipeline works — from storefront event to destination delivery.