LI Solutions

Shopify is retiring script tags: apps lose them October 1, storefronts March 1

Shopify is retiring script tags: apps lose them October 1, storefronts March 1

Key takeaways

October 1, 2026 deadline for apps

Fresh installs cannot create script tags after this date. App owners must ship theme app extensions or web pixels before October.

March 1, 2027 deadline for storefronts

Shopify will stop injecting script tags into themes. Unmigrated features like chat bubbles and pop-ups will disappear.

Merchants must activate app embeds

Embeds are inactive by default and must be turned on per theme. Apps cannot activate them automatically.

Audit via page source

Merchants can find active script tags in five minutes by viewing their homepage source code and searching for `asyncLoad`.

On March 1, 2027, a storefront loads and the live chat bubble is not there. The pop-up that collected emails is gone. The size guide on the product page is missing. Nothing in the admin says why.

The reason is an August 24 changelog entry addressed to developers. Shopify is retiring storefront script tags and has set hard deadlines.

Two dates, and which one is yours

A script tag is a way for an app to load its JavaScript on every storefront page without touching theme code. Shopify shipped the replacement in 2021 as theme app extensions with app embed blocks, and has now set final dates.

DateWhat stopsWho feels it
October 1, 2026scriptTagCreate and scriptTagUpdate return an error. REST POST and PUT to ScriptTag rejected. Applies to all API versions. Pinning does not help. Existing tags keep running. Install banner appears on apps that still use script tags with no replacement.App owners. Any store installing your app after this date gets no script.
March 1, 2027Shopify stops injecting script tags into storefront pages.Merchants. Every feature that still rides on a script tag stops.
August 26, 2026Script tags on the order status page ended for non-Plus stores. This was a separate, earlier deprecation.Already happened. Tracking on thank-you pages required a separate update.

This deprecation applies to the storefront only. Script tags never ran in checkout.

The scriptTags query and scriptTagDelete mutation keep working after October 1. Audits and cleanup workflows will still function normally.

What breaks, and the switch only the merchant can flip

The app categories that traditionally used script tags: live chat, pop-ups and email capture, review stars and trust badges, currency switchers, session recording and heatmaps, and older tracking pixels. Many of these apps were installed years ago and forgotten. Shopify has published no list of affected apps. The company also provides no count of merchants using them.

The trap lies in how the replacement operates. The replacement for visible features is an app embed block inside a theme app extension. App embed blocks are inactive until the merchant turns them on in the theme editor. The app cannot activate them on the merchant's behalf.

They are enabled per theme, so publishing a new theme deactivates the embed again. Publishing a Black Friday theme is a common example. Consequence: the developer ships an update, sends an email, and until someone in the store opens Online Store, goes to Themes, clicks Customize, selects App embeds, and flips the switch, the feature is either still on the old script tag or not running at all. The merchant has to repeat this step every time they change themes. After March 1, it stops completely.

What the script didReplacementWho has to act
Shows something on the page (chat, pop-up, badge, widget)App embed block in a theme app extension.Developer builds it. Merchant switches it on per theme.
Only collects data (analytics, conversion tracking)Web pixel.Developer only. No theme editor step for the merchant.
Custom app created in the Shopify admin (no CLI, no Dev Dashboard)No extension path. Script moves into the theme as a custom Liquid block or theme code.Whoever maintains the app or the theme. Editing theme code takes the theme off its auto-upgrade path.

One more concrete risk comes from Shopify's own docs. While a script tag and its embed both run, the script loads twice. Analytics double-count, and the user interface renders twice. The order is strict: ship the embed, confirm it is active on the published theme, then delete the tag. Never delete first.

The five-minute audit for merchants

No admin report exists for this migration. The install banner only appears at install time, meaning existing merchants see nothing in their dashboard. The page source shows everything.

Open the store homepage on a desktop browser. View the page source using standard keyboard shortcuts (Ctrl+U or Cmd+Option+U). Search the text for asyncLoad.

Each URL below it ending in ?shop=yourstore.myshopify.com is one script tag. The domain usually names the app. Then cross-check against Online Store, Themes, Customize, App embeds. An app in both places is mid-migration.

An app in the source but not in App embeds is the one to email. The email question verbatim is: "Does your app still use script tags on the storefront, and when does the app embed replacement ship?" Support teams for active apps will know exactly what this means.

Timing advice for merchants is plain. Audit in September. Do not touch the app stack from mid-October through December during peak season. Switch embeds on and remove the apps whose vendors never replied in January and February.

One side effect is worth stating once. Script tags load on every page whether needed or not. This forces browsers to download unnecessary code. Embeds can be scoped to specific templates, such as loading the size guide only on product pages. The cull usually makes the store faster.

If you own the app, ship the embed before October 1

Why October 1 matters more than March 1 for app owners comes down to new installs. After it, a fresh install cannot create a script tag, so the app is broken for every new customer. The store will also show a warning banner at install if you ship neither an embed nor a web pixel.

Migration order from Shopify's docs is clear. First, build the theme app extension with an app embed block. Second, deep-link the merchant into the theme editor with the embed pre-activated. Third, confirm the embed is active on the published theme. Fourth, delete the script tag with scriptTagDelete.

This is the audit query we run first. It returns the exact source URLs and creation dates.

query {
  scriptTags(first: 50) {
    nodes { id src displayScope createdAt }
  }
}

We build Shopify apps and Shop Minis. Our team shipped a suite of four Shop Minis for a client, and two of them reached the Top 5 in their category. We have migrated script-tag apps to theme app extensions before.

The pattern we see is consistent. The embed block itself is one or two days of work. The weeks go into re-testing on the merchant's actual theme, because the script assumed DOM selectors that the theme does not have, and into chasing merchants to flip the switch.

If the script only sends events, take the web pixel path even if it means dropping a feature, because it needs nothing from the merchant.

Each reader has one concrete next step. Merchants: run the page-source check today. App owners: run the scriptTags query across your installs and count them.

Frequently asked questions

When do Shopify script tags stop working?

Shopify stops injecting script tags into storefront pages on March 1, 2027. However, apps lose the ability to create new script tags on October 1, 2026. This means fresh app installs will break months before the final storefront cutoff.

How do I find script tags on my Shopify store?

Open your store homepage on a desktop browser and view the page source. Search the document text for `asyncLoad`. The URLs below this line ending in `?shop=yourstore.myshopify.com` are your active script tags.

What replaces Shopify script tags?

Visible features like chat widgets and pop-ups are replaced by app embed blocks within theme app extensions. Analytics and conversion tracking scripts are replaced by web pixels. Custom apps created in the admin without the CLI must move their code directly into the theme.

Can an app turn on an app embed block automatically?

No. App embed blocks are inactive by default. The merchant must manually turn them on inside the theme editor. They are also enabled on a per-theme basis, meaning a newly published theme requires the merchant to flip the switch again.