Track InitiateCheckout
The InitiateCheckout event fires when a visitor arrives on your checkout page — they’ve clicked “Checkout” or “Buy now” and are about to enter payment details. This is a strong purchase-intent signal for Meta’s Smart Bidding.

1. Copy the snippet
Replace the example values with template variables that render the actual cart total and items.
Option A — pbq (recommended)
<!-- Place inside the <body> of your checkout page,
AFTER the AdsPing script in <head>. -->
<script>
pbq('track', 'InitiateCheckout', {
content_ids: ['SKU-1043'],
num_items: 1,
value: 24.90,
currency: 'USD'
});
</script>Option B — dataLayer
<!-- Place inside the <body> of your checkout page,
AFTER the AdsPing script in <head>. -->
<script>
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
event: 'begin_checkout',
ecommerce: {
value: 24.90,
currency: 'USD',
items: [
{ item_id: 'SKU-1043', item_name: 'Acme Hydrating Serum' }
]
}
});
</script>2. Where to paste it
Paste it inside the <body> of your checkout page template. The event will fire on page load — that’s the moment you want to capture, before the user starts filling in card details.

3. Test it
Add a product to cart and click Checkout. The moment your checkout page loads, an InitiateCheckout row appears in Recent Events within 10 seconds.

✓ InitiateCheckout is live.
Meta now sees the full funnel: ViewContent → AddToCart → InitiateCheckout → Purchase.