Shopify script tags are going away. What actually breaks?
“I keep reading that Shopify script tags are being removed and I do not know whether anything on my store uses one.”
If you already read that Shopify Scripts were switched off in June, this is a different thing with a confusingly similar name. Shopify Scripts were Ruby that ran at checkout on Plus stores, and they are already gone. Shopify script tags are a way for an app to load JavaScript onto your storefront, they are on every plan, and they are being retired now.
The dates:
| date | what happens |
|---|---|
| 1 October 2026 | apps can no longer create or update script tags. Existing ones keep running. |
| 1 March 2027 | Shopify stops injecting script tags into storefronts. |
Only the second date breaks anything. The first one closes the door quietly, and no store will look any different on the day.
What a script tag actually is
A script tag loads JavaScript onto your storefront without any change to your theme code. That is the whole point of it, and it is also why you may have never heard of one: it was designed to be invisible. An app you installed could start running JavaScript on your storefront without asking you to paste anything into a template or touch a theme file.
Plenty of ordinary things were built this way. Pop-ups, review widgets, chat launchers, upsell banners, analytics snippets, currency switchers, anything an app needed to draw or measure on the page. If you have installed an app in the last several years that visibly does something on your storefront, there is a reasonable chance it did it like this.
Storefronts are the last place script tags still run. The ones that ran on the order status page were retired by an earlier deprecation, so if you were affected by that, this is the second half of the same story.
Who this actually lands on
Formally, this is an app developer's problem. Script tags are created by apps, so the deprecation notice is addressed to the people who build them, and the work of migrating is theirs.
Practically, the consequence is yours. On 1 March 2027 an app that has not migrated does not throw an error or show a warning. Its JavaScript simply stops being injected, and whatever it was drawing or measuring on your storefront stops happening. You would find out the way you find out about most silent failures, which is late.
One detail worth knowing if you have a developer: pinning an older API version does not defer this. The deprecation applies to all API versions, including old ones. There is no version to sit on.
What replaces it, and the part you have to do yourself
There are two replacements, and the difference between them matters to you more than it matters to the developer.
If the script only collects analytics or conversion data, it becomes a web pixel. Web pixels need no action from you. The app switches over, and you would not know it had happened.
Everything else becomes an app embed block, shipped inside a theme app extension. And here is the part that changes your job rather than only the developer's:
By default, app embed blocks are deactivated after an app is installed. Merchants need to activate app embed blocks in the theme editor, from Theme Settings > App embeds.
Read that against what a script tag did. A script tag ran because the app existed. An app embed block runs because you turned it on. The replacement is better in every way that matters, because you can now see what an app is loading onto your storefront and switch it off without uninstalling anything, but it is not automatic, and a migration that is finished from the developer's side can still leave your storefront doing nothing.
Some apps will hand you a link that flips the switch for you after installation. It is a fair question to ask a vendor: whether their migration includes one, or whether you are expected to find the setting.
The trap: this setting belongs to the theme, not to the store
An activated app embed block is recorded in the theme's own settings file. It is a property of that theme, not of your shop.
So the failure case is not the migration. It is the theme change three months after it. If you publish a different theme, install a fresh copy of the one you use, or hand the store to an agency that rebuilds the front end, the app embeds you switched on are not switched on over there. The app is still installed, still paid for, still reporting itself as working, and it is doing nothing on your live storefront.
This is the same shape as most expensive storefront bugs: it does not fail loudly, it fails invisibly, and the gap between the two is measured in orders.
So add one line to your theme launch checklist: after publishing a theme, open Theme Settings, App embeds, and check that the blocks you expect are on. It takes a minute and it is the only reliable moment to catch this.
What to do between now and then
The first date is about four weeks away and nothing breaks for six months. There is no rush, and there is one useful thing to do early.
- Ask your app vendors, in writing, whether they use script tags and when they will have migrated. This is the whole job. You cannot reasonably audit this yourself from the admin, and the vendors already know the answer because Shopify told them.
- Note which ones say yes. Those are the apps to check on your storefront in early March 2027, and the ones to re-check after any theme change between now and then.
- Ask what happens to the app's settings on migration. Moving from a script tag to an app embed block is a change in how the app is loaded, not usually a change to what it does. It is still worth confirming rather than assuming.
If a vendor cannot answer whether they use script tags, that is information too. The deprecation was announced on 24 August 2026, it was flagged action required, and it is not obscure.