GA4's e-commerce funnel relies on a specific set of events firing in sequence. Each event represents a step in the purchase journey. When steps are missing — even one — the funnel becomes incomplete, drop-off analysis becomes impossible, and any checkout optimisation work is based on assumptions rather than data.
The most commonly missing event, in our experience auditing hundreds of properties, is add_payment_info. Its absence means you cannot answer the most commercially important question in checkout optimisation: do customers abandon before or after entering their payment details?
The required GA4 e-commerce events
GA4 defines a standard e-commerce event schema. For a complete purchase funnel, these events should fire in sequence:
| Event name | When it fires | Required parameters |
|---|---|---|
view_item | User views a product page | items array |
add_to_cart | User adds item to cart | items, value, currency |
view_cart | User views the cart page | items, value, currency |
begin_checkout | User starts checkout | items, value, currency |
add_shipping_info | User enters shipping details | items, shipping_tier |
add_payment_info | User enters payment details | items, payment_type |
purchase | Order confirmed | transaction_id, value, currency, items |
Not all of these are strictly mandatory for GA4 to function — but each one you omit is a step you cannot measure. The minimum viable set for meaningful funnel analysis is: add_to_cart, begin_checkout, add_payment_info, and purchase.
What missing events actually cost you
Consider a checkout funnel without add_payment_info. In GA4's funnel exploration, the journey jumps from begin_checkout directly to purchase. You see that 68% of users who begin checkout do not purchase — but you have no way to know at which step they leave.
This distinction is critical for optimisation:
- If most abandonment happens before payment details are entered, the problem is likely form friction, unexpected costs like shipping, or trust issues earlier in checkout
- If most abandonment happens after payment details are entered, the problem is more likely a technical issue, payment failure, or final price shock at confirmation
These require completely different solutions. Without add_payment_info, you are guessing which one to fix.
How to audit your e-commerce event coverage
Step 1: Check event existence in GA4
Go to Admin → Events. Look for each of the standard e-commerce events in the list. If an event is not listed, it has never fired — or has not fired in the last 30 days. Note which events are present and which are absent.
Step 2: Verify event data in DebugView
Walk through your own checkout flow with GA4 DebugView open. For each step, confirm the correct event fires with the expected parameters. Pay particular attention to the items array — it should contain product details including item_id, item_name, price, and quantity.
Step 3: Build a funnel exploration
In GA4 Explore, create a Funnel Exploration using all your e-commerce events in sequence. If any step shows 100% drop-off or is missing from the funnel entirely, that event is not firing correctly. Compare the volume at each step against your known order volume — large discrepancies indicate tracking gaps.
Step 4: Validate the purchase event parameters
The purchase event is the most important to get right. Check that every purchase event includes a unique transaction_id (to prevent duplicate counting), the correct value (should match order total), and a populated items array. Missing or incorrect parameters here corrupt your revenue reporting.
transaction_id uniqueness in your data.Implementing missing e-commerce events
If events are missing from your setup, they need to be added to your dataLayer pushes and corresponding GTM tags. For each missing event, create a dataLayer push at the appropriate point in your checkout flow and a corresponding GA4 Event tag in GTM.
For add_payment_info specifically — which is the most commonly missing — the event should fire when a user completes the payment information step and moves to order review or confirmation. Depending on your checkout implementation, this might be triggered by a button click, a step completion callback from your checkout library, or a page navigation event.
The implementation complexity varies significantly by platform. Shopify Plus, WooCommerce, and custom checkouts all handle this differently. If you are unsure of the correct implementation for your setup, the GA4 DebugView is your best diagnostic tool — fire the event manually in development and verify the parameters look correct before deploying to production.
Audit your funnel event coverage automatically
GA4 Health Check checks your e-commerce event coverage as part of the Reporting & Exploration module — verifying that each expected funnel step is present and has fired within your chosen date range. Missing events and events with zero recent data both appear as findings in your audit report.
Combined with the purchase event parameter completeness check in the Event Tracking module, you get a complete picture of your e-commerce tracking health in under 60 seconds.
Run a GA4 audit to check your e-commerce funnel →
