Overview
Shopify Scripts are going away. If you run a Shopify Plus store and rely on custom discount, shipping, or payment logic at checkout, this FAQ covers everything you need to know before the June 30, 2026 cutoff. You will learn the exact deprecation timeline, what happens if you do nothing, how Shopify Functions compare to Scripts, and how to audit and replace your customizations step by step. Whether you are a merchant, agency, or developer, this guide gives you clear, actionable answers you can act on today.
Contents
Timeline and Deadlines
When will Shopify Scripts stop working?
Shopify Scripts will be sunset on June 30, 2026. All existing Shopify Scripts will stop functioning after this date. This is a hard cutoff. There is no grace period, no rollback option. This isn't a gradual phase-out; it's a hard stop. If you rely on Scripts for any checkout logic, that logic simply disappears on July 1.
Has the deadline been extended before?
Yes. As of April 2025, Shopify extended the Scripts deprecation deadline from August 28, 2025 to June 30, 2026. The deadline has already been extended twice, originally August 2024, then August 2025. However, June 30, 2026 is Shopify's stated final date, and you should plan around it accordingly.
When will Scripts be locked for editing?
Starting April 15, 2026, you will no longer be able to edit or publish new Shopify Scripts. Your existing published Scripts will continue to run until June 30, 2026, when all Shopify Scripts will stop executing. This means if you find a bug in a Script after April 15, you cannot fix it. Plan to have your migration finished well before that date.
What Breaks and What Changes
What happens if I don't migrate by June 30, 2026?
All existing Shopify Scripts will stop functioning after this date. Migrate your scripts to Shopify Functions before the deadline to avoid disruption to your store's checkout, shipping, and payment customizations. In practice, discounts may stop applying, shipping logic could fail, and payment options might behave differently than expected.
Tip: Don't assume your checkout will simply "fall back" to defaults. Any conditional logic (tiered discounts, region-based payment hiding, free shipping thresholds) that was handled by a Script will simply stop executing.
Will Shopify migrate my Scripts automatically?
No. Shopify will not migrate anything for you. Every Script in your store needs to be manually reviewed, replaced, and tested. Shopify provides a customizations report and recommended apps to help you plan, but the actual migration work is your responsibility (or your agency's or developer's).
Can I run Scripts and Functions at the same time during the transition?
Yes. Shopify Scripts and Shopify Functions can be used at the same time in a single store. If your scripts can't currently be replaced by using Shopify Functions, then continue to use Shopify Scripts until the Shopify Functions APIs meet your needs. Shopify Scripts will continue to work on checkouts that are customized with checkout.liquid and on checkouts that have been upgraded until June 30, 2026. This makes phased migration possible: deploy a Function, test it alongside the existing Script, then disable the Script once you are confident in the replacement.
Side note: Be aware that a Script and a Function targeting the same checkout logic can conflict. The safest approach is to disable each Script as soon as the migration is complete.
Scripts vs. Functions: Key Differences
How are Shopify Functions different from Scripts?
The differences are architectural, not just cosmetic. Scripts were sandboxed Ruby code running in a shared environment. Shopify Functions, by contrast, are compiled WebAssembly (Wasm) binaries executing at native speeds on Shopify's core infrastructure.
Shopify Functions are installed as part of an app. They're configured alongside other features directly in your Shopify admin, which means that merchants don't need to use code when they're creating or modifying customizations. In other words, Functions are distributed through apps, while Scripts required direct Ruby code editing in the Script Editor.
The programming model is also different. Scripts mutated a shared mutable context object. Functions receive an immutable input and return explicit output operations. This makes Functions more predictable and testable.
Are Functions faster than Scripts?
Significantly. The WebAssembly platform that runs Shopify Functions offers better performance than Shopify Scripts, executing code in under 5 milliseconds. Because of this, Shopify Functions can support large sales events, such as flash sales, with no decrease in performance. Timeout and CPU memory limit issues are reduced by using Shopify Functions.
Do I need Shopify Plus to use Functions?
It depends on how you use them. Stores on any plan can use public apps that are distributed through the Shopify App Store and contain functions. Only stores on a Shopify Plus plan can use custom apps that contain Shopify Function APIs. Some Shopify Functions capabilities are available only to stores on a Shopify Plus plan. So if you need a custom-built Function with bespoke logic, Plus is required. If a public app covers your needs, any plan works.
Migration Steps and Practical Guidance
How do I audit which Scripts my store uses?
To transition from Shopify Scripts to Shopify Functions, you need to complete the following steps before June 30, 2026: Review your existing customizations in the Shopify Scripts customizations report. Recreate your customizations by doing any of the following options: Install apps that are built on Shopify Functions. Rebuild your own solution using Shopify Functions.
To access the report: from your Shopify admin, go to Apps > Script Editor. In the Replace your Shopify Scripts banner, click Replace Shopify Scripts. Shopify Scripts customizations reports are generated automatically. You can also export your report and view it as a CSV file. The report lists every active Script, what it does, and links to recommended replacement apps or Function API tutorials.
Tip: Review the report's information to decide on the customizations that you want to keep. If there's a customization that you no longer use, then you don't need to recreate it using Shopify Functions and you can ignore it. Many merchants find dead or redundant Scripts during this audit; dropping them simplifies the whole migration.
What are the three paths for replacing a Script?
There are three paths for replacing a Script with a Function: use a native Shopify feature, install an App Store app, or build a custom Function. Which one fits depends on what your Script actually does.
For simple discounts or shipping rules, a native Shopify feature or a public app often handles it with zero development work. For simple to moderate logic, many public apps expose Shopify Functions through a no-code or low-code interface. In these cases, you can often configure rules yourself in the Shopify admin. For complex or highly custom logic, Shopify Functions-based apps require using the Shopify App Bridge. Custom apps that are created in the Shopify admin don't support the Shopify App Bridge, so custom Functions-based apps must be created by using the Partner Dashboard and then connected to your store.
What should my migration timeline look like?
Start now, migrate in groups, and give yourself time to test. The approach that works is straightforward: audit first, categorize by complexity, migrate one group at a time, test, stabilize, then move to the next.
Prioritize anything touching promotions or payment methods. These carry the highest risk if something breaks near a major campaign. Get a developer involved early if your scripts are complex.
A practical timeline might look like this:
Now through April 2026: Run your audit, categorize Scripts, and begin replacing the simplest ones with native features or public apps.
April to mid-May 2026: Build and test custom Functions for complex logic. Test them alongside your existing Scripts using customer tags or preview links.
Mid-May to June 2026: Deploy Functions to production and monitor for at least two weeks with both systems running to catch discrepancies.
Always test in a dev store before deploying to production. Keep the testing period short to minimize code complexity. Monitor your store's performance and error logs after migration. Have a rollback plan ready if issues arise.
If your checkout logic is simple, you likely have more runway than you think. If it's complex (wholesale pricing tiers, stacked promotions, conditional payment rules) you don't, and developer availability will tighten considerably as the deadline approaches.