Shopify Updates
Shopify Script Tags Deprecated: What Breaks on March 1, 2027
Last verified: September 7, 2026, against Shopify's changelog, developer docs, Help Center, the developer forum thread, and each app vendor's own install documentation.
On August 24, 2026 Shopify deprecated script tags, the mechanism some apps use to load code onto your storefront without touching your theme. From October 1, 2026 apps can no longer create or update them; what is already installed keeps running. On March 1, 2027 Shopify stops injecting them, and any app still loading that way disappears from your store with no error. Apps that load through an app embed toggle in your theme editor, or a web pixel under Settings, are not affected. Here is how to tell which is which, in about twenty minutes.
By Misha Gavura · 17 min read · Every quote read off a live page on . Re-check any row you act on.
The two dates, in a table
Shopify's changelog entry, "Script tags are deprecated and will stop running on March 1, 2027," is dated August 24, 2026 and carries two storefront dates. A third, earlier thank-you page date keeps getting mixed in, so it is in the table too.
| Date | What Shopify does | What it means on your store | Shopify's wording |
|---|---|---|---|
| August 24, 2026 | Shopify posts the deprecation | Nothing changes on your store yet. | "Script tags are deprecated and will stop running on March 1, 2027" (changelog title) |
| August 26, 2026 | Script tags stop on the Order status page for non-Plus stores (Plus: August 28, 2025) | Thank-you page scripts are a separate, earlier story. | "...will stop running there on August 26, 2026 for all other stores." |
| October 1, 2026 | Apps can no longer create or update script tags | Existing installs keep running. A fresh install or reinstall of an unmigrated app can fail silently. | "scriptTagCreate and scriptTagUpdate mutations will return an user error" |
| March 1, 2027 | Shopify stops injecting script tags into storefronts | Anything still loading this way disappears from your store. This is the cliff. | "Shopify will stop injecting script tags into storefronts" |
Two more changelog lines matter. "The deprecation applies to all API versions, including older ones, so pinning won't defer it," which closes the usual escape hatch of staying on an old API version. And "The scriptTags query and the scriptTagDelete mutation keep working, so you can audit and clean up your existing script tags," which the "how to check" section below is built on.
What a script tag is, in merchant terms
When an app needs to run code on your storefront (a chat bubble, a review widget, a popup) it has three ways in. It can ask you to paste code into your theme. It can ship an app embed, a toggle you switch on in the theme editor. Or it can register a script tag: it hands Shopify a URL, and Shopify adds a line to every storefront page that loads it.
Shopify's definition: the ScriptTag resource "adds JavaScript to a store's storefront without any changes to the theme's code." That is why apps liked it: no theme edit, nothing to switch on, nothing lost on a theme change. It is also why you have no idea which apps use it: it leaves no trace in your theme, and no admin page lists them. The same doc settles who is responsible: "Each script tag is tied to the app that created it." The app made it; the app has to replace it.
Shopify has been pushing apps off this path for years. The forum post announcing the deadline opens with "Script tags have been deprecated since 2021, when theme app extensions replaced them." A well-maintained app built in the last few years almost certainly uses an app embed already. The apps to worry about are older ones, niche ones, and ones whose developer has moved on.
One naming trap. Some vendors call the ordinary HTML line their app embed writes into your page a "script tag" too; Rebuy's docs say its Connector works by "injecting the Rebuy script tag directly into your theme via Liquid." That is an app embed doing its job, not a ScriptTag API record, and it is not affected. On this page, script tag means the API kind.
What actually breaks on each date
October 1, 2026: nothing, for apps you already have. The changelog says the create and update mutations "will return an user error" and that existing tags keep running. Your installed apps do not change that day.
The October risk is quieter. If you uninstall and reinstall an unmigrated app after October 1, the reinstall tries to create a script tag, gets refused, and the app's storefront part never appears. Common Thread Collective put it well: "The moment any operational need forces a reinstall or update... the fix will fail silently with no data collected and no error message." The same goes for a fresh install on a new store. From October 1 an unmigrated app is frozen: it works while nobody touches it.
March 1, 2027: the cliff. Shopify stops adding script tags to storefront pages. Whatever was loading that way is gone that morning, with no banner for shoppers and, as far as Shopify has documented, none for you. The reviews widget shows an empty space. The chat bubble is not there. The popup does not fire. The heatmap records nothing. And because the app's admin dashboard is unaffected, the app looks fine when you open it.
The thank-you page, separately. Script tags already stopped on the Order status page: Plus stores on August 28, 2025, everyone else on August 26, 2026. If a post-purchase survey or affiliate pixel vanished from your thank-you page around August 26, that is why, and the vendor needs a web pixel or a customer account UI extension instead. We covered that side in the August 26 deadline guide.
The catch nobody has explained to merchants
Read Shopify's replacement instruction carefully. Apps are told to replace each script tag with an app embed block in a theme app extension, and for analytics to "use a web pixel instead, which needs no action from the app user." That second half is the whole point. A web pixel needs no action from you. An app embed is a toggle in your theme editor, off until somebody switches it on.
On August 25, 2026 a developer asked in Shopify's forum the question that decides how this plays out for you: "Will there be a way to programmatically enable an app embed block for existing users? We have thousands of merchants using ScriptTags, and relying on each one to click a deep link from an email or return to the app dashboard feels daunting." Shopify's reply, the same evening: "there's no programmatic way to enable them for existing users. Let me go back to the team, see what's possible here."
So here is the merchant version. Even when an app ships its app embed before March, it cannot switch it on for you. It can email you, show a banner, give you a deep link. If you act on none of those, its script tag carries the store until February 28, 2027, and on March 1 the store goes quiet. The apps most at risk are not the ones that fail to migrate. They are the ones that migrate and cannot reach you.
Which apps use script tags: the category table
You cannot tell from an app's name. You can read how the vendor tells you to install it today, because the install method is the load method. Below are the categories most stores carry, with the mechanism read off each vendor's own documentation on September 7, 2026. Where the page does not name it, the row says so rather than guessing.
| App | How it loads today (vendor's words) | What that means for March 1, 2027 | Source |
|---|---|---|---|
| Klaviyo (email, onsite tracking, forms) | App embed. Klaviyo's guide: "You'll be brought to your theme setting's App embeds tab. Make sure the Klaviyo app embed is toggled on." | Modern path. Check the toggle is on. | help.klaviyo.com |
| Judge.me (reviews) | App embed. Step 1 of its install guide is "Enable Judge.me app embed" from the theme editor's App embeds icon, then widgets go in as app blocks. | Modern path. Check the toggle is on. | judge.me/help |
| Loox (reviews) | App embed named "Loox Core Script". "Click and open the App embeds side menu", "Toggle on the Loox Core Script". | Modern path. Check the toggle is on. | help.loox.io |
| Yotpo Reviews | App embed plus app blocks on Online Store 2.0 themes: "verify that Yotpo is enabled by going to Theme Settings > App embeds, and checking that Yotpo Reviews is toggled on." Vintage themes: code in theme.liquid. | Modern path on a 2.0 theme. Vintage installs are theme code, not script tags. | support.yotpo.com |
| Tidio (chat) | App embed. "Open the App embeds tab", "enable the toggle next to the Tidio Chat Widget". Tidio notes you must re-activate it "each time you change the theme." | Modern path. Check the toggle is on. | help.tidio.com |
| Rebuy (upsells, Smart Cart) | App embed named "Rebuy Connector", described by Rebuy as "a Shopify App Embed that enables advanced Rebuy features by outputting Liquid directly within your theme." | Modern path. Check the toggle is on. | developers.rebuyengine.com |
| PageFly (page builder) | App embed named "PageFly Theme Extension". If it is off, PageFly warns that "many elements on your PageFly pages will not connect properly with your Shopify theme". | Modern path. Check the toggle is on. | help.pagefly.io |
| Privy (popups, email) | App embed named "Privy Theme Block", toggled in the theme editor, for installs after July 28, 2025. Older installs used Privy code pasted into theme.liquid. | Modern path if installed after July 28, 2025. Older installs are theme code. | help.privy.com |
| Facebook & Instagram by Meta (Meta Pixel) | Channel app pixel, controlled under Facebook & Instagram > Settings > Data sharing settings: "A Meta pixel collects data from customer browsing behavior in your online store." | Modern path (web pixel). Listed under Settings > Customer events. | help.shopify.com |
| Google & YouTube (Google Analytics 4) | Channel connection to your GA4 property. Shopify: "If you haven't moved your tag to Google & YouTube channel app, then it's been converted to custom pixel". | Modern path (web pixel). An old GA4 theme tag became a custom pixel; see Customer events. | help.shopify.com |
| Hotjar (heatmaps), official method | Tracking code pasted into theme.liquid before </head>: "Paste your Hotjar Tracking Code just before the closing </head> tag." Hotjar has no official Shopify app. | Theme code, not a script tag. Unaffected by this deprecation. | help.hotjar.com |
| Hotjar Install (Ecom Weave, third-party app) | Listing says "Install Hotjar on your store without editing theme files". It does not say whether that is an app embed or a script tag. | Could not confirm. Check your App embeds panel for it; if absent, ask the developer. | apps.shopify.com |
| Lucky Orange (heatmaps) | Help article: "Install the app from the Shopify App Store. The app will automatically install the tracking code on all pages." Mechanism not named. | Could not confirm. Check App embeds and Customer events for it. | help.luckyorange.com |
| Microsoft Clarity (official app) | Microsoft's doc: "Select Go to app settings and a new tab opens. On the new tab, ensure that the Clarity JS is toggled on, and select Save." It does not name the panel. | Could not confirm from the doc. A toggle saved in a new tab is how app embeds behave; verify under App embeds. | learn.microsoft.com |
| Gorgias Chat | "Quick Installation for Shopify": click Install, then "Update Permissions" in Shopify; the widget "will not disappear even when you make changes to your Shopify theme." Manual install is theme.liquid code. | Could not confirm. A permissions prompt fits both a script tag and an embed; check App embeds. | docs.gorgias.com |
Three patterns. Every reviews, upsell, page-builder and popup vendor with current docs installs through an app embed; the modern path is the default for maintained apps. Meta and Google run as channel pixels, which Shopify's app-pixels page describes as "scripts that are installed as part of a third-party app or sales channel"; those need nothing from you. And the "could not confirm" rows cluster in heatmaps and chat, the categories On Tap and WeltPixel flag as most likely to be script tag based. Check those first.
One caveat. "App embed" means the vendor's current install path. If you installed years ago and never reinstalled, your store may still be on the old one; Privy says so outright, with its Theme Block applying to installs after July 28, 2025. Which is why the next section exists.
Four ways to check your own store
Start with the plain fact WeltPixel states and Shopify's docs confirm by omission: "There is no merchant-facing screen in the Shopify admin that lists your script tags." The changelog tells developers to audit with the scriptTags query and offers merchants nothing equivalent. So the merchant method is to list what is on the modern paths and treat the rest as suspects. Three of the four checks need only your admin.
1. The App embeds panel: what is already safe
Go to Online Store, then Themes, and open the theme editor on your live theme (Customize, or Edit theme on newer admins). In the left sidebar click the App embeds icon. The Help Center's definition: "App embeds are app-provided elements that float or display as an overlay in your theme, or add code to your online store without being visible to your customers." Every app listed there has shipped a theme app extension. Every one with its toggle on loads the modern way and is not part of this deprecation.
An app listed with its toggle off is the failure mode from the catch above: it migrated, you never switched it on, and a script tag is probably carrying it today. The Help Center also warns: "If you opt to install apps for your theme, and later change your published theme, then you'll need to re-activate those apps in your new theme as they won't be active by default." If you switched themes this year, expect some toggles to be off.
2. Settings, then Customer events: your pixels
Shopify's pixel docs say "Pixels are managed from the Customer events section in your Shopify admin." Open Settings, then Customer events. You will see app pixels, installed "as part of a third-party app or sales channel", and any custom pixels a developer added. The Meta and Google channels and any properly migrated tracking app should appear here. An analytics or ads app on your store but not on this list is a suspect.
3. View the page source: the domain gives it away
A heuristic, not a verdict. Open your storefront in a desktop browser, right-click, choose View Page
Source, and search for <script src=. Your theme's own files come from your store's domain
or cdn.shopify.com; lines loading from a vendor's domain are third-party code, and the domain names the
app. A ScriptTag is documented as "remote JavaScript code that is loaded into the pages of a shop's
storefront," so it shows up as one of these lines. So does an app embed's script, which is why this
check cannot tell them apart alone. Cross the vendor list against the App embeds panel: a vendor that
loads code but has no toggle is your strongest script tag candidate.
4. The scriptTags query: the definitive list
This is the only way to get a real list. It needs a developer, or an owner comfortable creating a custom
app under Settings, Apps and sales channels, Develop apps, with the read_script_tags scope.
Shopify's reference page publishes the query, it returns every script tag's source URL, display scope and
creation date, and the changelog confirms it keeps working after both deadlines:
query GetScriptTags($first: Int!, $cursor: String) {
scriptTags(first: $first, after: $cursor) {
nodes {
id
cache
createdAt
displayScope
src
updatedAt
}
pageInfo {
startCursor
endCursor
}
}
}
The src field is the vendor's domain, so each row names its app, and createdAt
tells you how old the install is. Anything with a display scope of online_store or all is on the March 1,
2027 clock. One limit: because "each script tag is tied to the app that created it," removing a
tag another app created is that app's job, which in practice means uninstalling it.
The 30-day plan
There are about three weeks to October 1 and just under six months to March 1. Here is what to do with each.
This month (by September 30)
- Write down every app on your store. Settings, then Apps and sales channels.
- Run checks 1 and 2. Mark each app as app embed on, app embed off, pixel present, or none of the above. "None of the above" is your suspect list. "App embed off" is your five-minute fix list: switch them on and save.
- Email every suspect vendor one question. "Does your app load on my storefront through a ScriptTag, and if so what is your migration date and what do I need to switch on?" Keep the replies.
- Do not uninstall and reinstall anything to "refresh" it. After October 1 a reinstall of an unmigrated app fails silently. Uninstall only what you are removing for good.
Before October 1, 2026
- Get a definitive list if you can. If you have a developer or a technical owner, run the scriptTags query once and keep the output. It turns the suspect list into a fact list.
- Move any custom script your own developer registered. It goes into an app embed in a theme app extension, or, if it is tracking, into a custom pixel under Customer events.
- Decide on anything from an unresponsive vendor now, not in February. Replacing a review app with its imported reviews, or a chat tool with its history, takes weeks to do properly, and Q4 is the worst time to do it under pressure.
Before March 1, 2027
- Repeat check 1 in January. Vendors who migrate in Q4 will need you to flip a toggle, and their email may never reach you. The App embeds panel is the truth.
- Screenshot your storefront in the last week of February. Home, a collection, a product page, the cart. On March 1, compare. Crude, and the only test that catches an app you forgot you had.
- If you change themes between now and March, re-check every toggle. A new theme starts with every app embed off.
Use it as a pruning pass
For most stores this deadline is a chore with an upside. You are listing every app anyway, and some of them will be apps nobody has opened in a year, still loading code on every page view.
In our audit of 5,999 rendered Shopify stores, the average store carried 8.0 named apps, 29% ran a heatmap or session tool, and 38% loaded a heavy homepage on mobile (more than 12 images, fewer than half lazy-loaded). Every third-party script is weight on that page, and a script tag is weight you cannot see and did not choose to keep.
The same audit found stores with 15 or more named apps averaged 2.0 visible conversion leaks against 3.6 for stores with one to four. We read that as a sophistication signal, not a cause: the merchant who installs fifteen tools is usually the one who also fixes the buy button. It is a reason to keep the apps that do a job you can name, not the ones you do not use.
So while the list is open, ask three questions per app. Did anyone open its dashboard in the last 90 days? Does something on the storefront visibly depend on it? Does a native Shopify feature now cover it? A "no, no, yes" is an uninstall, and every uninstall is one fewer March 1 question.
The honest verdict
For a store running current versions of mainstream apps, this is a twenty-minute check and probably zero changes. Every reviews, upsell, popup and page-builder vendor whose docs we could read installs through an app embed today, and the ad platforms run as pixels. This mostly cleans up a path Shopify has been closing since 2021.
For a store with an older install, a niche app, a vendor who has gone quiet, or a recent theme change, the risk is real and invisible until March 1. What makes it dangerous is not the deprecation. It is that the replacement needs a toggle only you can flip, Shopify has said apps cannot flip it for you, and no admin page tells you which apps are waiting on it. Twenty minutes in the theme editor and Customer events this month closes most of that gap. The scriptTags query closes the rest.
Disclosure. We are building StorePilot, a CRO tool for Shopify that runs its storefront code as a theme app extension and its tracking as a web pixel. It is not on the Shopify App Store and cannot be installed on a live store yet, so this page has nothing to sell you.
Questions merchants keep asking
- Will my Shopify apps stop working because of the script tag deprecation?
- Some might, on March 1, 2027, and only the ones that still load through the ScriptTag API; Shopify's changelog says that on that date "Shopify will stop injecting script tags into storefronts." Apps that load through an app embed (a toggle in your theme editor) or a web pixel (Settings > Customer events) are not affected. Nothing stops on October 1, 2026 for apps already installed.
- Does the Shopify script tag deprecation affect checkout?
- Not this one. Script tags never ran on checkout pages, and Shopify already removed them from the Order status page: August 28, 2025 for Plus stores, August 26, 2026 for everyone else. The March 1, 2027 date is about the storefront: home, collection, product, cart and content pages.
- Does it affect Shopify Plus stores?
- Yes, the same way and on the same dates. The changelog says it "applies to all API versions, including older ones, so pinning won't defer it," and carves out no plan. The only Plus-specific date is earlier: Plus stores lost Order status page script tags on August 28, 2025.
- What is a Shopify app embed?
- Shopify's Help Center defines app embeds as "app-provided elements that float or display as an overlay in your theme, or add code to your online store without being visible to your customers." You find them in the theme editor: Online Store > Themes > Customize (Edit theme on newer admins), then the App embeds icon. Each is a toggle. That toggle is the replacement for a script tag, and Shopify staff confirmed on August 25, 2026 that "there's no programmatic way to enable them for existing users."
- Do I need a developer to deal with this?
- For most stores, no. The two checks that matter are in your admin: the App embeds panel in the theme editor and Settings > Customer events. A developer is useful for two things: running the scriptTags GraphQL query for a definitive list, and moving custom code you paid for from a script tag to an app embed or a custom pixel.
- What about custom code my developer pasted into theme.liquid?
- Code inside your theme files is not a script tag and is not affected. A script tag is registered by an app through Shopify's API and injected at page load; the ScriptTag doc describes it as adding JavaScript "without any changes to the theme's code." If you can see the code in Edit code > Layout > theme.liquid, it stays. What might be affected is a custom app your developer built that registers a script tag for you; ask them.
- Is Google Analytics affected by the Shopify script tag deprecation?
- Not if it runs through the Google & YouTube channel, which is the path Shopify supports. Shopify's pixel-migration page says that a GA4 tag not moved to the channel app "has been converted to custom pixel to attempt continuity in your measurement." Either way it is a pixel, not a script tag. Check Settings > Customer events: you should see the Google & YouTube app pixel or a custom pixel there.
- Is my Meta Pixel affected?
- Not if it runs through the Facebook & Instagram channel. Its data sharing settings control the pixel, and at the Standard level "a Meta pixel collects data from customer browsing behavior in your online store" per the Help Center. That is an app pixel, visible under Settings > Customer events. The one to worry about is a Meta pixel installed by some other third-party tracking app. If you do not know which you have, assume the worse case until you check.
- Is Klaviyo affected?
- Klaviyo's onsite tracking guide installs through an app embed: "You'll be brought to your theme setting's App embeds tab. Make sure the Klaviyo app embed is toggled on." So the current integration is on the modern path. Verify the toggle is actually on, especially if you changed themes since installing, because Shopify does not re-activate app embeds on a new theme.
- What if an app on my store has not updated by March 1, 2027?
- It stops loading on the storefront that day, silently, with no error shown to you or your shoppers. And even an app that migrates in time needs one action from you, because the replacement is an app embed you switch on in the theme editor and Shopify staff have said apps cannot switch it on for existing installs. If a vendor cannot give you a migration date by the end of October 2026, start looking for a replacement while you still have four months of runway.
Sources, all read September 7, 2026
- Shopify developer changelog: Script tags are deprecated and will stop running on March 1, 2027 (August 24, 2026)
- Shopify docs: The ScriptTag resource (legacy)
- Shopify developer forum: [Deprecation] Script tags will stop running on March 1, 2027, including the August 25, 2026 staff reply on app embeds
- Shopify docs: Order status page script tag deprecation and ScriptTag functionality to be blocked as of February 1, 2025
- Shopify GraphQL Admin API: scriptTags query and ScriptTag object
- Shopify Help Center: Extend your theme with apps (app embeds)
- Shopify Help Center: App pixels, Migrating pixels, Facebook data sharing
- Vendor install documentation: the URL in each row of the app table.
- Coverage read for context: Common Thread Collective (September 1, 2026), WeltPixel (September 1, 2026), On Tap (September 4, 2026)
- StorePilot: Shopify Store Audit 2026 (app-count and heatmap figures)
"Could not confirm" means the vendor's page was read and did not name the mechanism. Nothing here is inferred from an app's name, age or category.