TL;DR
Most articles about Shopify Plus tracking rehash the same Customer Events setup that works on every plan. The harder problems show up at Plus scale, and none of them is Plus-only in 2026: Shopify Markets splits your storefront across regions in ways that fragment attribution without explicit deduplication, and Hydrogen stores run on custom domains where standard checkout attribution breaks. If you're on Plus, these are the surfaces worth auditing first.
Key Takeaways
- Customer Events and the Web Pixels API are available on every Shopify plan, not Plus-only. Migrating from checkout.liquid to Checkout Extensibility is required for all stores, though Plus stores hit the deadline earlier [2].
- B2B is no longer Plus-only. Shopify's core B2B features have been on Basic, Grow, and Advanced since April 2, 2026 [4], and the wholesale revenue split comes from Shopify's own reports.
- Multi-region storefronts built with Shopify Markets can generate duplicate purchase events across regional URLs if you run a single pixel without deduplication logic. Stores operating across more than two regions almost always need multi-pixel coordination.
- Hydrogen storefronts run on custom domains. Standard Shopify checkout attribution assumes the same domain context, so cross-domain referral settings must be configured explicitly or sessions break at the cart handoff.
- Admin and POS order events, where orders are created outside the browser session entirely, require server-side or admin-level event capture. This is not covered by browser-based Customer Events.
- If you run one region on a standard Shopify storefront (no multi-region Markets setup, no Hydrogen), your tracking priorities are the same as any well-run DTC store, on Plus or not. The complexity multiplies when you layer in these surfaces, and none of them requires Shopify Plus in 2026.
Does Customer Events Require Shopify Plus?
No. Customer Events is available on every Shopify plan, and the Web Pixels API that powers it is a standard developer feature [3]. This is the dominant misconception driving searches for "shopify plus checkout extensibility customer events attribution tracking."
What Checkout Extensibility does change for Plus stores is the migration deadline. Shopify ended support for checkout.liquid customizations on a plan-by-plan timeline, with Plus stores required to migrate first [1][2]. If you were relying on custom scripts in checkout.liquid for GA4 or Meta purchase events, that path is now closed regardless of plan. The replacement, Customer Events inside Checkout Extensibility, works across all plans.
The confusion is understandable. Checkout Extensibility unlocked a lot of new capability at the same time Plus stores were forced to migrate, so the two got bundled in people's mental models. They are separate things. Checkout Extensibility governs how you customize the checkout UI. Customer Events governs where tracking pixels fire. Both apply to all plans.
Which Tracking Surfaces Actually Require Plus?
None of the four below does. They are the surfaces Plus-scale stores run into most, and each one changes your tracking architecture, but every one of them is available on standard Shopify plans in 2026.
1. Multi-region pixel deduplication with Shopify Markets. Shopify Markets lets you operate localized storefronts across regions, sometimes with distinct URLs or subdomains per market, and every Shopify plan includes up to 50 markets [6]. A single pixel setup will attribute the same purchase event multiple times if regional domains are not treated as separate pixel contexts. Stores running more than two active regions consistently need multi-pixel coordination rather than a single global tag. For more on how multi-pixel setups work in practice, this breakdown of multi-pixel configuration for multi-account stores covers the deduplication logic in detail.
2. Hydrogen / headless attribution across custom domains. Hydrogen storefronts run on developer-controlled domains. When a buyer moves from your Hydrogen storefront to Shopify's hosted checkout (on checkout.shopify.com or a custom checkout domain), the session context changes. Without explicit cross-domain tracking configuration, GA4 treats the handoff as a new session and the original traffic source is lost. You have to set cross-domain measurement explicitly in GA4 and confirm referral exclusions cover your checkout domain. Hydrogen, with Oxygen hosting, is available on Basic, Grow, and Advanced as well as Plus; Plus gets 25 public environments where those plans get 1 [7][8]. App pixels do not load on Hydrogen pages, and Hydrogen's built-in analytics reports only to Shopify, so GA4 and ad-platform tags have to be added in the Hydrogen code itself [9][10].
3. Customer-account portal pixel coverage. The new customer account portal (which Shopify has been rolling out to replace legacy account pages) runs in a separate context. Since July 21, 2025, web pixels load on customer account pages automatically when the store uses a custom accounts domain, such as accounts.your-store.com; page views and DOM events are supported there [11]. If you are tracking post-purchase engagement, loyalty activity, or reorder flows that run through the account portal, confirm that your customer accounts run on a custom domain.
4. Admin and POS order events. Orders created through Shopify Admin (manual orders, wholesale orders entered by your team) or through Shopify POS do not generate browser sessions. There is no page load, no Customer Events context, and no client-side pixel to fire. Capturing these conversions requires server-side or webhook-based event forwarding. Neither order type needs Plus: draft order invoicing is on every plan in Shopify's B2B plan table [12], and Shopify POS is not Plus-only either, with Plus including the first 20 POS Pro locations [6]. This is covered in more depth in the admin and POS order event tracking guide, but the short version is: if admin or POS volume is more than 5% of your order mix, you are underreporting conversions to every ad platform.
How Does Shopify Markets Affect Tracking?
The core issue is that Shopify Markets can surface your store under different regional URLs, and ad platforms treat those URLs as different properties unless you configure them as a single tracking unit.
If you are running a German storefront at /de with a regional checkout and a US storefront at /en, a single Meta pixel with no region-aware deduplication will fire Purchase events based on whichever checkout domain completes. If you have also set up a separate German ad account (common for VAT compliance or budget separation), you now have two pixels seeing some overlap in events, and Meta's deduplication logic will not catch it cleanly without explicit event_id matching.
The decision on whether to use multi-pixel vs. a single pixel comes down to one question: are you running separate ad accounts per region? If yes, multi-pixel with server-side deduplication is the right shape. If you are running one global ad account with market-level audience segmentation, a single pixel with regional event parameters is cleaner and less maintenance.
Verify on your own store: check for Shopify Markets tracking fragmentation
- Go to Shopify Admin → Settings → Markets and count how many active markets you have with distinct checkout URLs or subdomains.
- In Meta Events Manager → Overview, look at the "Received Events" column for your pixel. If you see
Purchaseevent counts significantly higher than your Shopify order count for the same window, duplicate firing is likely. - In GA4 → Reports → Engagement → Conversions, filter the
purchaseevent bypage_location. If regional URLs are showing as separatepurchasesources with session counts that don't match Shopify's order source breakdown, cross-domain or multi-region attribution is fragmented. - In GA4 → Admin → Data Streams → your stream → Configure tag settings → List unwanted referrals, confirm your checkout domain and any regional checkout subdomains are excluded from referral traffic.
- Check Shopify Admin → Analytics → Reports → Sales by channel against GA4's purchase count for the same 7-day window. A gap larger than 10-15% on a multi-region Markets store almost always points to a cross-region attribution problem, not just standard browser tracking loss.
How Does B2B / Wholesale Affect Conversion Tracking?
B2B doesn't require Plus either. Since April 2, 2026, Shopify's core B2B features (company profiles, payment terms, volume pricing, up to 3 active B2B catalogs, and vaulted cards) are on Basic, Grow, and Advanced; unlimited catalogs, partial payments, and deposits stay on Shopify Plus [4].
A B2B buyer who logs in and checks out on your online store places a storefront order, with the browser session and campaign source that session carried, like any retail checkout. Draft orders your team completes in the admin have no browser session behind them, so they need the same server-side forwarding as the admin and POS orders above.
To separate wholesale revenue from retail, use Shopify's own B2B reporting: the Is B2B order filter in Analytics → Reports, or WHERE is_b2b_order = true in ShopifyQL [5]. Subtract that total before you judge ad performance. WeltPixel Conversion Tracking can't make the split for you: its only customer label, on the app's Plus plan ($39/mo, which is our plan and not Shopify Plus), is new versus returning, so a wholesale reorder arrives as a returning customer.
Plus + Hydrogen: Where Standard Attribution Breaks
Hydrogen attribution breaks at the domain boundary. A standard Shopify DTC store has one domain, one checkout, and one first-party cookie context. A Hydrogen store has your custom frontend domain and Shopify's hosted checkout on a different domain. GA4 will report the checkout domain as a referral unless you configure cross-domain measurement, and the referral exclusion alone is not enough.
The correct setup has three parts. First, GA4 cross-domain measurement must include both your Hydrogen frontend domain and your checkout domain under Admin → Data Streams → Configure tag settings → Configure your domains. Second, your checkout domain must be on the referral exclusion list so it doesn't overwrite the original traffic source. Third, the GA4 Measurement ID or GTM container must be present on both domains so the session stitching actually works.
If any one of these three is missing, you will see a specific symptom: traffic source for purchased sessions shows as "referral / checkout.shopify.com" or "referral / [your-checkout-domain]" instead of the paid channel that drove the visit. That is the diagnostic flag for a Hydrogen cross-domain attribution break.
Decision Matrix: Your Plus Setup and Your Tracking Priorities
| Your Setup | Top Tracking Priorities |
|---|---|
| Standard Plus, DTC only | Checkout Extensibility migration complete, GA4 + Meta server-side, standard purchase event deduplication |
| Plus + Shopify Markets (2+ regions) | Multi-pixel or deduplication logic per region, ad account structure matches pixel structure, referral exclusions cover all regional checkout domains |
| Plus + Hydrogen | Cross-domain measurement configured in GA4, referral exclusion for checkout domain, GTM/pixel present on both frontend and checkout |
If you are on Plus with a single region and a standard Shopify storefront, your tracking priorities are identical to a well-run DTC store on any other plan. The complexity above comes from multi-region Markets setups and Hydrogen, and neither requires Shopify Plus in 2026.
FAQ
Does Shopify Plus include better conversion tracking than standard plans?
Not inherently. The tracking infrastructure, Customer Events, Web Pixels API, server-side Conversions API support, is the same across all plans [3]. The setups that add tracking complexity at Plus scale, multi-region Shopify Markets and Hydrogen storefronts, are available on standard plans too [6][7].
What is the checkout.liquid migration deadline for Plus stores?
Shopify deprecated checkout.liquid customizations for Plus stores on August 13, 2024 [1][2]. After that date, checkout.liquid modifications outside the specific supported areas no longer work. Any tracking that relied on custom scripts in checkout.liquid needed to be migrated to Customer Events inside Checkout Extensibility before that date. The thank-you and order-status pages followed a later timeline: August 28, 2025 for Plus stores, with other plans auto-upgraded by August 26, 2026.
How do I track B2B wholesale orders in GA4?
B2B doesn't need Plus anymore: since April 2, 2026, Shopify's core B2B features are also on Basic, Grow, and Advanced [4]. A buyer who checks out on your online store is tracked like any retail checkout. Draft orders your team completes in the admin have no browser session behind them, so they reach GA4 only through server-side event forwarding triggered by the order creation webhook. To separate B2B revenue from retail, use Shopify's Is B2B order report filter, or WHERE is_b2b_order = true in ShopifyQL [5].
When does a Shopify Plus store need multi-pixel tracking instead of a single pixel?
Use multi-pixel when you are running separate ad accounts per region or per brand. If you have one Meta ad account and use audience segmentation to separate regions, a single pixel with regional event parameters is cleaner. The trigger for multi-pixel is ad account structure, not storefront count.
Does Shopify POS data flow into GA4 automatically on Plus?
No. POS orders are created server-side without a browser session, so no client-side Customer Events pixel fires. Capturing POS orders in GA4 requires server-side event forwarding via Shopify's order webhook. The same applies to manual orders created in Admin.
Where WeltPixel Conversion Tracking Fits
The app covers two of these on its Plus plan ($39/mo, which is our plan and not Shopify Plus): per-Market pixel routing with multiple pixels for multi-region stores, and server-side forwarding for admin and POS orders. Hydrogen storefronts are outside that coverage: app pixels, ours included, do not load on Hydrogen pages, so a Hydrogen store needs its GA4 and ad-platform tags added in the Hydrogen code [9][10].
Multi-pixel for multi-region Shopify Markets stores and multi-ad-account setups, and server-side forwarding for admin and POS orders, are both included on the app's Plus plan. If either of those scenarios applies to your store, the app is worth testing before building a custom solution.
Install WeltPixel Conversion Tracking
Sources
- https://shopify.dev/docs/storefronts/themes/architecture/templates/checkout-liquid
- https://help.shopify.com/en/manual/checkout-settings/checkout-extensibility
- https://shopify.dev/docs/api/web-pixels-api
- https://changelog.shopify.com/posts/key-b2b-features-now-available-on-non-plus-plans
- https://help.shopify.com/en/manual/b2b/reports-and-automations/reports
- https://help.shopify.com/en/manual/intro-to-shopify/pricing-plans/plans-features/shopify-plus-plan
- https://shopify.dev/docs/storefronts/headless/hydrogen/fundamentals
- https://shopify.dev/docs/storefronts/headless/hydrogen/environments
- https://shopify.dev/docs/storefronts/headless/hydrogen/analytics
- https://github.com/Shopify/hydrogen/discussions/2556
- https://changelog.shopify.com/posts/web-pixels-load-on-customer-accounts-and-order-status-page
- https://help.shopify.com/en/manual/b2b/getting-started/plan-features