Let's Talk Growth
The New Shopify Checkout Stack: What to Keep, What to Remove, and What to Rebuild

The New Shopify Checkout Stack:What to Keep, What to Remove, and What to Rebuild

Published: Mon Aug 24 2026/Updated: Mon Aug 24 2026/by: Vrity Singh

Two things are true right now, and a lot of merchants haven’t caught up to either one.

Shopify Scripts stopped executing entirely on June 30, 2026. Not “will be deprecated soon,” stopped, a month ago, as of this piece being written. And if you’re on a non-Plus plan and still have anything sitting in Additional Scripts on your Thank You or Order Status page, you have until August 26, 2026, roughly four weeks out, before Shopify auto-upgrades your checkout and that code simply stops running.

This piece is ordered by urgency, not by how interesting each topic is. What’s already dead, what’s dying in a few weeks, what to actually replace it with, and what you should leave alone because it was never broken.

Free Mini Audit

Table of Contents

  1. Where you actually stand right now
  2. Run the migration report before you touch anything
  3. The new stack, in one table
  4. What to keep
  5. What to remove
  6. What to rebuild, mapped old to new
  7. Where this connects to agentic checkout
  8. The action list, ordered by deadline
  9. FAQs

1. Where you actually stand right now

Merchants often talk about three separate deprecations as one. That mix-up is how migrations get missed. Here’s each one, straight from Shopify’s own developer changelog and documentation.

Calendar showing the June 30 Shopify Scripts shutdown and August 26, 2026 checkout auto-upgrade deadline

checkout.liquid: Information, Shipping, and Payment steps

This was always a Shopify Plus-only feature. Non-Plus stores never had file-level access to it. Shopify deprecated it for these three steps on August 13, 2024. If your store is Plus and still runs checkout.liquid for these steps, it isn’t waiting on an auto-upgrade, it’s already unsupported.

checkout.liquid, Additional Scripts, and script tags: Thank You and Order Status pages

For Plus merchants, this sunset on August 28, 2025. For every other plan, the same code stops running on August 26, 2026. That’s the near-term deadline. Anything you pasted into Additional Scripts on those two pages, conversion pixels, affiliate tags, survey snippets, stops executing that day. Shopify auto-upgrades the store to the new pages whether you’ve prepared or not.

Shopify Scripts (the Script Editor)

Plus merchants mainly used this for cart and checkout-level logic. Editing and publishing new Scripts stopped on April 15, 2026. Execution of every existing Script stopped on June 30, 2026. This one is fully in the past as of this piece. If a Script drove your store’s shipping rates, payment method list, or line-item discounts, that logic hasn’t run for about a month, silently, unless someone already migrated it.

The practical takeaway

Check your plan and your checkout type before you assume which deadline applies to you. Plus merchants are past all three. Non-Plus merchants have one deadline left, and it’s close.

2. Run the migration report before you touch anything

Before you rebuild anything, find out what actually needs rebuilding. Shopify built a specific tool for this: the Shopify Scripts customizations report. You’ll find it in the Shopify Help Center. It reads your store’s existing Scripts and sorts them into three buckets: maps to a Shopify Function, maps to a public app instead, or needs a manual decision.

Migration report routing Shopify Scripts customizations to Shopify Functions, public apps, or manual review

This matters because guessing leads to over-building. A store might assume it needs three custom Functions. Then the report shows that a public app in the App Store already covers two of the old Scripts, and only one genuinely needs custom code.

Free Mini Audit

3. The new stack, in one table

Four technologies replace everything checkout.liquid, Additional Scripts, and Shopify Scripts used to do.

Modern Shopify checkout stack showing checkout UI extensions, checkout branding, Shopify Functions, and web pixel extensions

Per Shopify’s own technology comparison:

Availability differs by plan. Checkout UI extensions for the core checkout steps require Plus, but Thank You and Order Status extensions are available on every plan except Shopify Starter. Shopify Functions are available on every plan except Starter too, though a merchant with existing checkout.liquid customizations has to upgrade to Extensions in Checkout before Function APIs will work at all. Web pixel extensions are available on every plan except Starter.

4. What to keep

Not everything here needs rebuilding, and treating this as a full teardown wastes effort.

Existing Shopify checkout settings and apps protected from unnecessary disruption during migration

  • Admin-native checkout settings (logo, colors set through the checkout editor rather than a custom stylesheet, checkout language, tipping, order notes) were never part of checkout.liquid or Scripts. Nothing about this migration touches them.
  • Theme editor customizations on non-Plus stores. Non-Plus stores never had checkout.liquid access in the first place, so if your checkout look and feel was always set through the theme editor rather than a raw file, there’s nothing to remove here.
  • Public apps already handling a use case. If the Scripts customizations report (section 2) shows an existing Script is functionally duplicated by an app you already have installed, don’t build a custom Function for it. Confirm the app covers the same logic and retire the Script.
  • Functions or extensions already built. If a store already migrated a piece of logic to a Function ahead of the deadline, that work carries forward unchanged. This piece is about what’s still outstanding, not a reason to redo finished work.

Free Mini Audit

5. What to remove

checkout.liquid itself, if you’re Plus and past the relevant deadline. The file structure looked like this:

Legacy jQuery checkout code being removed and replaced with modern Shopify checkout code

html

<!DOCTYPE html>
<html lang="{{ locale }}">
  <head>
    {{ content_for_header }}
    {{ checkout_stylesheets }}
    {{ checkout_scripts }}
  </head>
  <body>
    <main>{{ content_for_layout }}</main>
    {{ tracking_code }}
  </body>
</html>

If your store still has this file with live customizations past August 13, 2024 for the core steps, or past August 28, 2025 for Thank You and Order Status, those customizations are not rendering, regardless of what’s still sitting in the code editor. Removing the dead file is cleanup, not risk.

Additional Scripts and script tags on the Thank You and Order Status pages, before August 26, 2026 if you’re non-Plus. Don’t wait for Shopify’s auto-upgrade to discover what breaks. Everything in that box, pixels, affiliate tracking, custom scripts, needs a home in Web pixel extensions or checkout UI extensions before that date, not after.

Any Script Editor entries still listed in your admin. They’re not executing, as of June 30, 2026, so they’re not protecting revenue by staying in place. Confirm their replacement is live (Function or app), then remove the dead Script rather than leaving it as a confusing artifact for the next person who opens Settings.

jQuery-based DOM manipulation patterns, the Checkout.$, page:load, and page:change event patterns that checkout.liquid customizations relied on to detect steps and inject content after render. These patterns have no equivalent in the new stack because the new stack doesn’t need them, checkout UI extensions render at defined targets directly, rather than requiring JavaScript to find and modify already-rendered HTML.

6. What to rebuild, mapped old to new

Tracking pixels. Here’s the actual shape of a Web Pixels API custom pixel, replacing whatever used to sit in tracking_code or Additional Scripts:

Shopify Web Pixels API converting raw tracking scripts into standardized events for analytics, marketing, and data warehouses

javascript

import {register} from '@shopify/web-pixels-extension';

register(({analytics, browser, init}) => {
  analytics.subscribe('page_viewed', (event) => {
    // forward event.data to your analytics or ad platform
  });
});

The pixel subscribes to Shopify’s standardized events (page_viewed, checkout_completed, and similar fixed event names Shopify emits) rather than reading the DOM or waiting for a page:load event. This is also more reliable than the old approach, since it doesn’t depend on a script surviving a checkout redesign to keep firing.

Discount, shipping, and payment logic. A Shopify Function now runs, server-side, whatever logic a Script used to run on the cart or checkout. Four types cover most cases: a discount function for custom discount types, a delivery customization function to rename, reorder, or filter shipping options, a payment customization function to do the same for payment methods, and a validation function to block checkout on business rules like an order minimum. You write and deploy Functions through Shopify CLI as part of an app. You don’t paste them into an admin text box. That’s the biggest workflow change for a team used to Script Editor.

Old Shopify client-side scripts replaced by Shopify Functions for discount, shipping, and payment logic

Custom fields, banners, and surveys. Anything that used to be a DOM injection hack on checkout.liquid, a custom field, a banner, a post-purchase survey, is now a checkout UI extension targeting a defined slot in the checkout, Thank You, or Order Status flow. The extension renders there natively instead of being inserted after the fact.

Styling. Custom CSS overrides in checkout_stylesheets become Branding API calls (checkoutBrandingUpsert in the GraphQL Admin API) that set colors, corner radius, and similar tokens directly, rather than a stylesheet a developer has to keep in sync with Shopify’s own checkout updates.

7. Where this connects to agentic checkout

This connects directly to the agentic commerce work covered elsewhere in this series. Shopify’s Universal Commerce Protocol builds its create_checkout, update_checkout, and complete_checkout capabilities on top of this same Extensibility stack, not around it. A merchant-specific checkout requirement, an age check, a delivery date picker, a required field, reaches an agent through UCP precisely because a checkout UI extension or a Function implements it underneath. A store still running on dead Scripts or a frozen checkout.liquid file isn’t just accumulating technical debt. It’s also giving an agent-facing checkout less structured information to work with, since no clean extension or Function surface exists for UCP to reference.

AI agent connected to Shopify checkout extensibility stack with checkout UI extensions, Shopify Functions, and web pixel extensions

One gotcha for stores using markets and Advanced or Plus plans: Shopify’s own guidance warns against relying on useLocalizationMarket() for market-specific checkout logic. That API returns only the most precise regional market, not how a merchant actually defined their markets. Delivery address or company location data gives a more reliable signal for that kind of conditional logic, in both a rebuilt extension and anything feeding an agent-facing checkout flow.

8. The action list, ordered by deadline

  • Now: Run the Shopify Scripts customizations report if you haven’t. Know what actually needs a Function versus what an existing app already covers.
  • Now: Confirm whether any Script Editor entries are still listed as active. They stopped executing June 30, 2026, so treat this as cleanup, not urgent risk, but don’t leave the confusion in place.
  • Before August 26, 2026, if non-Plus: Move everything in Additional Scripts on the Thank You and Order Status pages into Web pixel extensions or checkout UI extensions. This is the one deadline in this piece still ahead of you.
  • Ongoing: If you’re Plus and still hold a checkout.liquid file, confirm it holds no customizations you think are still live. They aren’t, for the steps covered by the 2024 and 2025 deadlines. Remove the dead code rather than leaving it as a maintenance trap.
  • Before building anything custom: Check the technology table in section 3 and confirm you’re matching the use case to the tool Shopify actually built for it, rather than reaching for a Function when a checkout UI extension is the correct tool, or the reverse.

9. FAQs

Is checkout.liquid completely gone, or can I still request access to it?

For the Information, Shipping, and Payment steps, it’s unsupported since August 13, 2024, regardless of whether a store still has file access enabled. For Thank You and Order Status, the same is true since August 28, 2025 for Plus stores. Non-Plus stores never had file-level checkout.liquid access to begin with.

I’m non-Plus and I’ve never touched Additional Scripts. Does August 26, 2026 affect me?

Only if there’s something in that setting today. If Additional Scripts on your Thank You or Order Status page is empty, the auto-upgrade on that date has nothing to migrate away from, and there’s no action needed.

Do I need a developer for the Web Pixels migration, or can I do it through an app?

Either works. Many analytics and ad platform apps already ship a Web Pixels integration you can activate without writing the subscription code in section 6 yourself. Custom code is only necessary for a tracking setup an app doesn’t already cover.

What happens if I do nothing by August 26, 2026?

Shopify auto-upgrades the store to the new Thank You and Order Status pages regardless. Nothing about your storefront breaks structurally, but any tracking, affiliate code, or custom content that was living in Additional Scripts stops running that day, silently, unless it’s already been rebuilt in a Web pixel extension or checkout UI extension.

Is Shopify Scripts really dead, or is there a grace period?

Per Shopify’s own developer changelog, execution stopped entirely on June 30, 2026, with no stated grace period. Editing had already been frozen since April 15, 2026. If a Script hasn’t been migrated yet, the logic it used to run is not currently executing.

Free Mini Audit


Sources referenced in this piece:
Shopify’s developer changelog entry “Shopify Scripts will be deprecated on June 30, 2026,”
Shopify.dev’s checkout.liquid documentation and its “Technologies for customizing Shopify checkout” guide,
Shopify.dev’s Web Pixels API documentation, and
Shopify Help Center’s guidance on transitioning from Script Editor to Shopify Functions.


Running the Scripts customizations report is the easy part. Turning what it finds into working Functions and checkout UI extensions before your deadline is where most teams need hands. OptiPhoenix builds Shopify checkout migrations end to end, extensions, Functions, and pixel tracking included. Talk to our Shopify team.