Why setup quality matters

Many stores have analytics that look fine but quietly mislead: purchases counted twice, revenue missing refunds, checkout steps not tracked or consent settings blocking half the data. Decisions on ad spend, site changes and merchandising then rest on shaky numbers. A careful setup is cheap compared to that.

The events to implement

GA4 defines recommended ecommerce events. Using the standard names and parameters unlocks built-in reports.

EventWhen it firesKey data
view_item_listA product list or category is displayedItems, list name
select_itemA product is clicked in a listItem, list
view_itemA product page is viewedItem details, value
add_to_cartAn item is addedItem, quantity, value
remove_from_cartAn item is removedItem, quantity
view_cartThe cart is viewedItems, value
begin_checkoutCheckout startsItems, value, coupon
add_shipping_infoShipping step is completedShipping tier
add_payment_infoPayment step is completedPayment type
purchaseOrder is completedTransaction ID, value, tax, shipping, currency, items
refundOrder is refundedTransaction ID, value or items
searchSite search usedSearch term

Check Google’s current documentation for exact parameter names.

Item parameters

Define a consistent item object: item_id, item_name, price, quantity, item_brand, item_category levels, item_variant, and optional list information. Use the same identifier across your catalog, feed and analytics so reports connect. Decide whether item_id is the product or variant SKU and stick to it.

Implementation options

  • Native platform integrations. Platforms such as Shopify provide built-in or app-based connections that send standard events. They are quick, but verify what they send and when.
  • Google Tag Manager with a data layer. The site pushes structured ecommerce data to a data layer, and tags send it to GA4. This offers flexibility and keeps tracking code out of templates.
  • Server-side tagging. It can improve control and resilience, but adds infrastructure and complexity. Consider after the basics are solid.
  • Measurement Protocol. Useful for sending server events like refunds or offline conversions.

Whichever you choose, document the specification: events, parameters, triggers and owners.

Prevent common data problems

  • Duplicate purchases. Refreshing the confirmation page can refire the event. Use the transaction ID, and fire once per order, with GA4’s deduplication as a safety net rather than the plan.
  • Wrong revenue. Decide whether value includes tax and shipping and apply it consistently. Include currency.
  • Missing refunds. Send refund events, or reconcile outside analytics.
  • Cross-domain checkout. If checkout is on another domain, configure cross-domain measurement so sessions are not broken and sources are not attributed to your payment provider.
  • Self-referrals and payment gateway referrals. Exclude them from referral sources.
  • Internal traffic. Filter staff and developers.

Privacy laws and platform requirements affect measurement. Configure your consent banner and consent mode so that analytics and advertising tags respect user choices. Understand that some data will be modeled or missing when users decline. See the cookie consent article for design and legal context.

Link GA4 with Google Ads, Search Console and, where relevant, Merchant Center. Mark purchase as a key event so it can be used for bidding, and consider importing it to ad platforms. Make sure other platforms such as Meta have their own correctly configured tracking, since each reports differently.

QA checklist

  • Test each event in GA4 DebugView and Tag Assistant.
  • Place real test orders, using different payment methods, discounts and shipping options.
  • Compare transaction counts and revenue in GA4 with your store for a week, and explain the difference. Small gaps are normal, large ones are a bug.
  • Check item data across the funnel.
  • Verify refunds and cancellations.
  • Test with consent denied and granted.
  • Test on mobile and in different browsers.

Reports to build

Build funnel explorations from view_item to purchase, product performance, source and campaign revenue and site search reports. Share a small set of dashboards with the team and agree on definitions.

Maintain it

Retest after theme changes, checkout updates and app installs, which often break tracking silently. Schedule a quarterly audit.

FAQ

What are the essential GA4 ecommerce events?

At minimum view_item, add_to_cart, begin_checkout and purchase, ideally with the full set for funnel and list analysis.

Why does GA4 revenue not match my store?

Common causes include consent-blocked data, ad blockers, duplicate or missing events, different treatment of tax and shipping, refunds and timing. Reconcile regularly.

Should I use Google Tag Manager?

It is a popular choice because it separates tracking from site code, but native integrations may suffice for simple stores.

Do I need server-side tracking?

Not at first. It can improve data quality and control but adds complexity, so get the basics right before moving.

Sources and further guidance

Platform features and requirements change. Check the linked primary documentation for your implementation.

TURN INSIGHT INTO ACTION

Let’s talk about your next step.

Share your workflow, your current systems and what you want to improve. We’ll help shape a practical way forward.

Discuss your project ↗