Skip to main content
Two lists live on this page. The first is what Opti sees — the funnel’s own event stream. The second is what Meta sees — the pixel events, with the values attached. Both fire automatically on every published funnel.

Built-in funnel events

These are the names Opti will use when you ask about them in chat. Every event also carries context you can filter and split by: the funnel and its published version, the visitor’s language, the traffic source (Meta / TikTok / Google click), the exact campaign, ad set, and ad that sent them, device, country — and their current A/B arm(s), so “conversion per arm” is always a plain split.
Choices inside a screen — which quiz answer, which plan card, whether the FAQ was opened — are not part of the runtime. Opti wires them as it builds; if a specific one matters to you, ask for it. See Asking Opti for custom tracking.

The checkout trace, per payment route

The moment a visitor taps the pay button, the funnel records every step until the payment provider answers. The sequence differs by route, and that difference is useful: it tells you where a checkout died. Common to all routes
  1. funnel_checkout_cta_clicked (method: card)
  2. funnel_checkout_card_sheet_opened — the card form appears
  3. funnel_checkout_started — the visitor filled the form and tapped pay
  4. Either funnel_checkout_succeeded, or funnel_checkout_failed with the stage:
    • tokenize — the card details couldn’t be secured (typo, unsupported card, network)
    • subscribe — the charge itself was declined; the provider’s status codes ride along
Card is where declines live. A high failed share at the subscribe stage is a card-quality or price-point signal, not a funnel-design one.
Every event in a trace carries the plan context — price, currency, billing interval, trial or direct, amount due today — so any step can be split by offer.

What the Meta pixel gets, and when

This is the table to keep next to Events Manager. The funnel maps its milestones onto Meta’s standard events; nothing custom is sent. The rules that trip people up when reading Meta:
  • PageViews outnumber visitors. One fires per screen, so a visitor who walks 12 screens is 12 PageViews. Compare visitors using landing page views or unique reach, not the raw event count.
  • A trial funnel produces StartTrial, not Purchase. The trial’s conversion to a paid subscription days later is never sent to Meta — Meta will show trial starts and close to zero purchase revenue for that funnel, by design. Bidder steers those accounts on cost per trial. See Facebook numbers vs real sales.
  • Declines never fire. Purchase and StartTrial go out only after the provider says yes; a declined card sends nothing.
  • Upsells fire their own Purchase / StartTrial. One buyer who takes an upsell is two purchase events in Meta — as it is two sales in Opti’s numbers.
  • Refunds, chargebacks, and renewals are not reported. Meta’s purchase count and revenue only ever go up.
  • Nothing fires from previews or test-mode checkouts. Only the published funnel, with real payments, reports to Meta.
  • Every pixel call is also written to the funnel’s own analytics as funnel_pixel_fired, with the exact value sent — so Opti can audit delivery sale by sale without you opening Events Manager.
Verifying the pixel: open the published funnel URL and walk to the paywall. Within seconds Events Manager should show PageView events, then AddToCart on the paywall and InitiateCheckout when you tap pay — none of those require buying anything. Purchase and StartTrial only appear with real, non-test payments.