Platform Policy
Shopify Scripts Die June 30. Plus Stores Have 13 Days.
June 17, 2026
On June 30 every Ruby checkout customization on Shopify Plus stops executing — and the replacement is not a syntax swap, it's a different runtime you may not own.
For three years, the quiet advantage of a Shopify Plus store was the Script Editor: a box where you could write Ruby that bent checkout to your will — tiered volume discounts, "spend $75, get free shipping," hide a payment method from a high-fraud region, gate a wholesale price to a customer tag. That logic ran silently on every order. Most merchants who have it forgot it was there.
On June 30, 2026, it stops. Shopify's developer changelog, posted April 9, states the deprecation in two lines: "April 15, 2026—Editing and publishing new Shopify Scripts will no longer be possible. June 30, 2026—All Shopify Scripts will cease to execute entirely". The Help Center is blunter: "On June 30, 2026, Shopify Scripts will be removed and will no longer work".
This matters now, this week, for a specific reason: the first deadline has already passed. Since April 15 you have been unable to edit or publish a Script. If a discount or shipping rule is wrong today, you cannot fix it in the tool — you can only rebuild it somewhere else. And the second deadline lands sixteen days from today, four months before Cyber Week, on infrastructure most merchants never think about until checkout breaks. This is not a feature being retired. It is a category of seller-controlled logic being moved inside a runtime Shopify owns.
What's actually being removed
Shopify Scripts is a Plus-only product. The Help Center is explicit: "Shopify Scripts and the Script Editor app are available only to stores on the Shopify Plus plan. The Script Editor app is no longer available for download from the Shopify App Store". If you are on Basic, Shopify, or Advanced, none of this touches your checkout — skip to the next section, because the strategic half of the story still applies to you.
If you are on Plus, Scripts come in three flavors, and each one maps to revenue logic you probably can't see:
- Line item scripts — product discounts, tiered pricing, BOGO, gift-with-purchase, bundle math.
- Shipping scripts — conditional free-shipping thresholds, rate renaming, hiding or reordering delivery options.
- Payment scripts — hiding a payment method by cart value, customer tag, or region; reordering gateways.
Those three categories are confirmed in Shopify's own migration documentation. When the runtime is removed on June 30, the customization is removed with it. There is no grace period and no automatic translation. Shopify has said this deadline will not move again, and the company has given itself no public mechanism to reverse it — the changelog frames April 15 and June 30 as fixed.
The replacement is Shopify Functions, and the most important thing to understand is that it is not Scripts with new syntax. Per the Help Center, Functions run on "the WebAssembly platform," execute "in under 5 milliseconds," and — critically — "they're distributed as apps." Where a Script was Ruby you pasted into a box you controlled, a Function is compiled WebAssembly that ships inside an app and runs at fixed points in Shopify's commerce lifecycle. You configure it in admin; you do not paste code into checkout anymore. The performance story is real (Scripts had timeout and CPU-memory limits that Functions remove). The control story is the catch.
The two migration paths, and why both cost something
Shopify gives Plus merchants exactly two ways to keep their logic alive, both documented in the Help Center:
Path one: install a Functions-based app. Shopify maintains an app group of checkout customizations built on Functions, and its migration report links you to "recommended apps" that match your existing Scripts. This is the fast path. It is also a recurring line item. A discount rule that cost you nothing as a Script may now be a $20–$50/month app — and at Plus volume you may need several. The math is small per store and not small across a catalog of customizations.
Path two: rebuild it yourself. You can author your own Function, but note the constraint Shopify buries in a margin: "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". Translation: you cannot quietly recreate a Function as an in-admin custom app the way you might have pasted a Script. You need a Partner account and a developer who can compile to WebAssembly and unit-test locally. For a brand without an in-house dev or agency, that is a real procurement event with a sixteen-day clock.
To find out what you're actually exposed to, Shopify generates a Shopify Scripts customizations report inside admin (Settings → Checkout, or Apps → Script Editor → "Replace Shopify Scripts"). It auto-detects your active Scripts across payment, shipping, and product-discount sections and is exportable to CSV. If you do one thing this week, run that report. It is the only authoritative inventory of what breaks on June 30, and it is specific to your store.
A note on the urgency you'll see elsewhere: a wave of Shopify agencies — Blackbelt Commerce, Sanomads, Flatline, Brainspate — have published "most Plus stores aren't ready, migrate now" pieces. Treat their readiness estimates with the appropriate discount; these firms sell Scripts-to-Functions migration as a service, so an unprepared market is their pipeline. The deadline itself is real and primary-sourced. The panic framing is partly commercial.
This isn't only a Plus problem — Summer '26 is the bigger tell
The Scripts sunset did not arrive alone. It is the hard-edged piece of Shopify's Summer '26 Editions, the company's twice-yearly feature drop, which landed in early June and which trade coverage pegs at more than 150 changes. The headline items reported across the Editions are not random: native AI merchandising built into admin, Checkout Components reaching general availability for Plus, and native A/B testing for themes and checkout flows.
Read those three together with the Scripts removal and the strategy is legible. Shopify is pulling two kinds of customization inward at once. Bespoke checkout logic moves from merchant-owned Ruby into Shopify's WebAssembly runtime. And the jobs merchants used to rent from third-party apps — collection sorting, cross-sell, on-site testing — move into native admin features Shopify ships for free. The first change pressures your developer relationship. The second pressures the app-subscription stack that sits on your P&L.
For a GSH reader running a brand on Shopify, that is the through-line worth holding onto. The platform is not just deprecating an old tool. It is redrawing the line between "what you build" and "what Shopify provides," and it is drawing that line closer to itself.
What it means for sellers
- If you're on Plus, run the Scripts customizations report before you read another paragraph of analysis. It is the only store-specific inventory of what dies June 30, and you've already lost the ability (since April 15) to edit those Scripts in place. You are working from a frozen snapshot.
- Map every Script to a revenue mechanism, then to a cost. A volume-discount Script replaced by an app is now a recurring monthly fee; a custom payment-gating Script may need a Partner-Dashboard build. Price both paths now — the cheap-to-migrate ones via app, the bespoke ones via developer — because the developer queue gets worse as June 30 approaches.
- Protect Q4 specifically. Tiered discounts, free-shipping thresholds, and gift-with-purchase logic are the exact customizations that live in Scripts and the exact promotions you'll run on Cyber Week. A Function you build in October under deadline pressure is a Function you didn't load-test. Migrate and test in the summer lull, not in November.
- If you're not on Plus, audit your app stack instead. Summer '26's native AI merchandising and native A/B testing overlap with paid apps you may already run for sorting, cross-sell, and testing. Some of those subscriptions are now redundant. The savings are real and require no developer — just a cancellation.
- Don't assume "it still works today" means "it's fine." Scripts execute right up until June 30, which is exactly why complacency is the failure mode. The store that breaks is the one whose owner saw checkout working in June and assumed the deadline was someone else's problem.
The long view
Shopify is running the Apple playbook on customization: move third-party extension out of the wild and into a sandboxed, distributable runtime you control, then ship first-party features that compete with the apps on top of it. Functions is the sandbox; the App Store is the channel; native AI merchandising is the first-party competition. Scripts — open Ruby a merchant could write and run with no one in between — is exactly the kind of un-sandboxed power that doesn't survive that transition.
Six to twelve months out, expect two compounding effects. The customization "moat" that distinguished a well-built Plus store erodes, because bespoke logic narrows to what Functions APIs expose and every merchant gets the same APIs — differentiation shifts from "what clever thing did your developer write" to "how well did you configure the same blocks everyone has." And the app economy gets squeezed from above as native features absorb commodity jobs, and toward Functions from below as custom logic is forced into the app model. The apps that survive will be the ones doing things Shopify doesn't want to build itself.
For sellers, the takeaway is unsentimental. The platforms you build on are not neutral ground; they are landlords who periodically rewrite the lease. June 30 is a term coming due. Merchants who treat it as a sixteen-day operations task will be fine. The ones who treat it as Shopify's problem will find out, at checkout, that it was theirs.