Legacy RudderStack App vs. Shopify Source Solution

Understand the differences between RudderStack’s legacy Shopify app and the pixel-based Shopify Source Solution.

RudderStack offers two ways to track events from your Shopify store:

RudderStack recommends the Shopify Source Solution for all new setups. The legacy app is affected by Shopify’s script tag deprecation. If you are using the legacy app, see the Migration Guide to switch.

Comparison

CapabilityLegacy RudderStack appShopify Source Solution (RudderStack Pixel / Shopify Custom Pixel)
Client-side tracking mechanismTracking script injected through a Shopify script tag, which reads the theme’s page markup (for example, add-to-cart and login forms)Shopify Web Pixels API
Works independently of the store theme
Client-side checkout events
Tracking on the Order Status / Thank You page
JavaScript SDKLegacy JavaScript SDK (v1.1) with custom auto-tracking codeRudderStack Pixel: Not required — events are sent directly to RudderStack
Shopify Custom Pixel: Loads the RudderStack JavaScript SDK v3
Server-side eventsShopify webhooksShopify webhooks
Affected by Shopify’s script tag deprecationYes — client-side tracking stops on March 1, 2027No
Future supportWill be deprecatedActively developed

Why use the Shopify Source Solution

Works with any Shopify theme

The legacy app’s tracking script detects user actions by reading your theme’s page markup — for example, add-to-cart forms and login or registration forms — so its client-side tracking depends on how your theme structures these pages. The Shopify Source Solution uses Shopify’s Web Pixels API, which works independently of your store’s theme — no theme-specific adjustments are needed.

Tracks the checkout flow

Tracking the checkout flow was restricted with the legacy app’s tracking script. With Shopify’s Checkout Extensibility, the Shopify Source Solution captures checkout events directly from the client side, resulting in more accurate event capture and less maintenance overhead.

Shopify is deprecating script tags

The legacy app loads its client-side tracking script through Shopify script tags, which Shopify has deprecated in favor of Web Pixels and app embed blocks:

DateShopify changeImpact on the legacy app
October 1, 2026Apps can no longer create or update script tags.Setting up the legacy app on a new store fails with a script tag register failed error. Changing the write key or data plane URL in the app returns a script tag update failed error — the webhook settings are updated, but the client-side tracking script keeps using the old values.
March 1, 2027Shopify stops loading existing script tags on storefronts.Client-side tracking stops for all stores using the legacy app.

The legacy app’s tracking script also does not track the Order Status and Thank You pages, and it uses an older version of the RudderStack JavaScript SDK (v1.1). The Shopify Source Solution does not use script tags, so it is not affected by the script tag deprecation.

Next steps

Questions? Let's figure it out together.

Join the RudderStack Slack community to connect with other users, customers, and the RudderStack team — or reach out for direct support.