[{"data":1,"prerenderedAt":472},["ShallowReactive",2],{"blog-shopify-changelog-august-2026":3},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":9,"date":10,"author":11,"authorBio":12,"authorLinkedIn":13,"authorTwitter":14,"heroImageUrl":15,"tag":16,"readingTime":17,"body":18,"_type":466,"_id":467,"_source":468,"_file":469,"_stem":470,"_extension":471},"\u002Finsights\u002Fshopify-changelog-august-2026","insights",false,"","Shopify Changelog, August 2026: Three Changes With Deadlines","Script tags stop working in March 2027, WebMCP went live on every Liquid storefront without anyone installing anything, and an inventory relabel that sounds worse than it is. What August's Shopify changelog means for GCC stores.","2026-09-07","Ryan Carter","Ryan is the Director of Studio Future, a Dubai-based eCommerce agency specializing in Shopify development, digital marketing, and systems integration. With over a decade of experience building high-converting commerce solutions for brands from startups to FTSE 100 companies, Ryan combines technical expertise with strategic growth focus to solve complex eCommerce challenges.","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fryantcarter\u002F","https:\u002F\u002Fx.com\u002Fryantcarter\u002F","\u002Fimages\u002Farticles\u002Fshopify-changelog-august-2026.jpg","Insights","6 Minutes",{"type":19,"children":20,"toc":459},"root",[21,29,34,41,57,100,105,110,115,120,195,224,229,235,249,254,259,289,294,299,305,333,338,350,356,424,430,435,440,453],{"type":22,"tag":23,"props":24,"children":25},"element","p",{},[26],{"type":27,"value":28},"text","Most months the Shopify changelog is developer housekeeping. August 2026 wasn't. One entry carries a hard deadline that will cost some stores real work, one turned every Liquid storefront into something an AI agent can call without a single merchant being asked, and one changed a number in your inventory reports without changing your inventory.",{"type":22,"tag":23,"props":30,"children":31},{},[32],{"type":27,"value":33},"Those three are the ones to read if you run a store with a team and a stack of apps behind it. Everything else from the month is at the bottom.",{"type":22,"tag":35,"props":36,"children":38},"h2",{"id":37},"_1-script-tags-are-dead-and-the-first-date-is-1-october-2026",[39],{"type":27,"value":40},"1. Script tags are dead, and the first date is 1 October 2026",{"type":22,"tag":23,"props":42,"children":43},{},[44,46,55],{"type":27,"value":45},"This is the one to act on. Shopify ",{"type":22,"tag":47,"props":48,"children":52},"a",{"href":49,"rel":50},"https:\u002F\u002Fshopify.dev\u002Fchangelog\u002Fonline-store-script-tags-deprecation",[51],"nofollow",[53],{"type":27,"value":54},"announced on 24 August",{"type":27,"value":56}," that script tags are deprecated and will stop running. Two dates:",{"type":22,"tag":58,"props":59,"children":60},"ul",{},[61,90],{"type":22,"tag":62,"props":63,"children":64},"li",{},[65,71,73,80,82,88],{"type":22,"tag":66,"props":67,"children":68},"strong",{},[69],{"type":27,"value":70},"1 October 2026",{"type":27,"value":72},": the ",{"type":22,"tag":74,"props":75,"children":77},"code",{"className":76},[],[78],{"type":27,"value":79},"scriptTagCreate",{"type":27,"value":81}," and ",{"type":22,"tag":74,"props":83,"children":85},{"className":84},[],[86],{"type":27,"value":87},"scriptTagUpdate",{"type":27,"value":89}," mutations start returning a user error. Script tags already in place keep running.",{"type":22,"tag":62,"props":91,"children":92},{},[93,98],{"type":22,"tag":66,"props":94,"children":95},{},[96],{"type":27,"value":97},"1 March 2027",{"type":27,"value":99},": Shopify stops injecting script tags into storefronts at all.",{"type":22,"tag":23,"props":101,"children":102},{},[103],{"type":27,"value":104},"The deprecation applies to all API versions, including older ones, so pinning an app to an old version doesn't defer it. There's no version you can sit on.",{"type":22,"tag":23,"props":106,"children":107},{},[108],{"type":27,"value":109},"Script tags are how apps have injected JavaScript into the online store since roughly forever. The replacements are app embed blocks, shipped through a theme app extension, or web pixels for anything doing analytics and conversion tracking. Web pixels are the better outcome for merchants because they need no action from the app user, which is a polite way of saying the app vendor does the work and you don't notice.",{"type":22,"tag":23,"props":111,"children":112},{},[113],{"type":27,"value":114},"You don't own most of the script tags on your store. Your apps do, and that's the problem. An established store running twenty to forty apps has script tags from vendors who are actively shipping, vendors who are coasting, and vendors who stopped answering support tickets in 2024. The first group has already migrated. The third group is where your March 2027 breakage lives.",{"type":22,"tag":23,"props":116,"children":117},{},[118],{"type":27,"value":119},"You can see what's on your store today. In the Admin GraphQL API:",{"type":22,"tag":121,"props":122,"children":126},"pre",{"className":123,"code":124,"language":125,"meta":7,"style":7},"language-graphql shiki shiki-themes dracula","{\n  scriptTags(first: 100) {\n    edges {\n      node { id src displayScope createdAt }\n    }\n  }\n}\n","graphql",[127],{"type":22,"tag":74,"props":128,"children":129},{"__ignoreMap":7},[130,141,150,159,168,177,186],{"type":22,"tag":131,"props":132,"children":135},"span",{"class":133,"line":134},"line",1,[136],{"type":22,"tag":131,"props":137,"children":138},{},[139],{"type":27,"value":140},"{\n",{"type":22,"tag":131,"props":142,"children":144},{"class":133,"line":143},2,[145],{"type":22,"tag":131,"props":146,"children":147},{},[148],{"type":27,"value":149},"  scriptTags(first: 100) {\n",{"type":22,"tag":131,"props":151,"children":153},{"class":133,"line":152},3,[154],{"type":22,"tag":131,"props":155,"children":156},{},[157],{"type":27,"value":158},"    edges {\n",{"type":22,"tag":131,"props":160,"children":162},{"class":133,"line":161},4,[163],{"type":22,"tag":131,"props":164,"children":165},{},[166],{"type":27,"value":167},"      node { id src displayScope createdAt }\n",{"type":22,"tag":131,"props":169,"children":171},{"class":133,"line":170},5,[172],{"type":22,"tag":131,"props":173,"children":174},{},[175],{"type":27,"value":176},"    }\n",{"type":22,"tag":131,"props":178,"children":180},{"class":133,"line":179},6,[181],{"type":22,"tag":131,"props":182,"children":183},{},[184],{"type":27,"value":185},"  }\n",{"type":22,"tag":131,"props":187,"children":189},{"class":133,"line":188},7,[190],{"type":22,"tag":131,"props":191,"children":192},{},[193],{"type":27,"value":194},"}\n",{"type":22,"tag":23,"props":196,"children":197},{},[198,200,206,208,214,216,222],{"type":27,"value":199},"Anything with a ",{"type":22,"tag":74,"props":201,"children":203},{"className":202},[],[204],{"type":27,"value":205},"displayScope",{"type":27,"value":207}," of ",{"type":22,"tag":74,"props":209,"children":211},{"className":210},[],[212],{"type":27,"value":213},"ONLINE_STORE",{"type":27,"value":215}," is in scope. Match each ",{"type":22,"tag":74,"props":217,"children":219},{"className":218},[],[220],{"type":27,"value":221},"src",{"type":27,"value":223}," back to the app that owns it, then ask that vendor one question: what's your migration plan and when does it ship. Vendors who answer clearly are fine. Vendors who don't are your replacement shortlist, and you want that shortlist now rather than in February 2027, because swapping a subscriptions app or a reviews app is a project, not an afternoon.",{"type":22,"tag":23,"props":225,"children":226},{},[227],{"type":27,"value":228},"The GCC angle here is the long tail. Regional apps solve local problems that global vendors ignore: cash on delivery workflows, Arabic storefront tooling, local courier integrations, regional payment and BNPL flows. They're often built by small teams serving a market the big vendors underinvest in, which is why we use them and also why they're slower to migrate off deprecated platform features. A two-person vendor prioritises differently to a hundred-person one, and a deprecation eighteen months out sits below this quarter's roadmap. Ask early and you'll usually get a straight answer.",{"type":22,"tag":35,"props":230,"children":232},{"id":231},"_2-your-storefront-is-already-agent-callable-and-nobody-asked-you",[233],{"type":27,"value":234},"2. Your storefront is already agent-callable, and nobody asked you",{"type":22,"tag":23,"props":236,"children":237},{},[238,240,247],{"type":27,"value":239},"On 5 August Shopify shipped ",{"type":22,"tag":47,"props":241,"children":244},{"href":242,"rel":243},"https:\u002F\u002Fshopify.dev\u002Fchangelog\u002Fwebmcp-liquid-hydrogen",[51],[245],{"type":27,"value":246},"WebMCP support for Liquid and Hydrogen storefronts",{"type":27,"value":248},". The wording is unusually direct: online stores now expose WebMCP tools that AI agents can call, agents can search your catalogue, manage the shopper's cart and go to checkout on the shopper's behalf, and there's nothing to install or configure. It's live on every Liquid storefront.",{"type":22,"tag":23,"props":250,"children":251},{},[252],{"type":27,"value":253},"A capability that lets software drive your storefront on a customer's behalf turned on across the platform, by default, with no merchant decision involved.",{"type":22,"tag":23,"props":255,"children":256},{},[257],{"type":27,"value":258},"The limits are in the same post, and they're substantial. WebMCP works today only in Chromium-based browsers through an origin trial, and agent support for it is thin. Agentic traffic to a UAE store right now is a rounding error, and the Arabic-language side of it barely exists. If you're waiting for agent-driven revenue to show up in your reports this quarter, you'll be waiting.",{"type":22,"tag":23,"props":260,"children":261},{},[262,264,271,273,279,281,287],{"type":27,"value":263},"There's a related entry from 28 August, ",{"type":22,"tag":47,"props":265,"children":268},{"href":266,"rel":267},"https:\u002F\u002Fshopify.dev\u002Fchangelog\u002F08-25-is-now-supported",[51],[269],{"type":27,"value":270},"announced on 4 September",{"type":27,"value":272},": storefront discovery profiles now declare UCP version ",{"type":22,"tag":74,"props":274,"children":276},{"className":275},[],[277],{"type":27,"value":278},"2026-08-25",{"type":27,"value":280}," in ",{"type":22,"tag":74,"props":282,"children":284},{"className":283},[],[285],{"type":27,"value":286},"\u002F.well-known\u002Fucp",{"type":27,"value":288},". Capabilities didn't change, only the advertised version. No action needed.",{"type":22,"tag":23,"props":290,"children":291},{},[292],{"type":27,"value":293},"The thing to do about it isn't an AI project. An agent reading your catalogue doesn't see your hero video, your brand photography or your carefully written landing page. It sees titles, descriptions, variant names, prices, availability, and your shipping and returns policy pages. Stores with thin product descriptions and a shipping policy written in 2022 were already losing sales to shoppers who couldn't find the answer. That gap has just acquired a second consumer.",{"type":22,"tag":23,"props":295,"children":296},{},[297],{"type":27,"value":298},"Tightening product copy and policy pages pays off whether or not agentic commerce ever arrives in this market. That's the only reason to do it now rather than in a year.",{"type":22,"tag":35,"props":300,"children":302},{"id":301},"_3-inventory-moved-from-reserved-to-committed-and-your-totals-didnt-change",[303],{"type":27,"value":304},"3. Inventory moved from reserved to committed, and your totals didn't change",{"type":22,"tag":23,"props":306,"children":307},{},[308,310,331],{"type":27,"value":309},"On 5 August, ",{"type":22,"tag":47,"props":311,"children":314},{"href":312,"rel":313},"https:\u002F\u002Fshopify.dev\u002Fchangelog\u002Fdraft-order-and-transfer-shipment-inventory-is-moving-from-reserved-to-committed",[51],[315,317,323,325],{"type":27,"value":316},"inventory tracked under the ",{"type":22,"tag":74,"props":318,"children":320},{"className":319},[],[321],{"type":27,"value":322},"reserved",{"type":27,"value":324}," state for draft orders, transfers and shipments moved to ",{"type":22,"tag":74,"props":326,"children":328},{"className":327},[],[329],{"type":27,"value":330},"committed",{"type":27,"value":332},". It was a one-time migration on active draft orders and open transfers.",{"type":22,"tag":23,"props":334,"children":335},{},[336],{"type":27,"value":337},"Total inventory is unchanged, sellable inventory available to buyers is unaffected, and the same units are still tracked as unavailable. Only the bucket label changed.",{"type":22,"tag":23,"props":339,"children":340},{},[341,343,348],{"type":27,"value":342},"It bites in exactly one place, and that place is worth ten minutes if you run draft orders at volume. Anything reading the ",{"type":22,"tag":74,"props":344,"children":346},{"className":345},[],[347],{"type":27,"value":322},{"type":27,"value":349}," quantity state directly, a warehouse or ERP integration, a custom stock report, a low-stock alert threshold, is now reading a number that dropped without any physical stock moving. If you use draft orders for wholesale, for phone and WhatsApp orders, or for the cash-on-delivery flows that are ordinary here and unusual in most of Shopify's core markets, that's a meaningful share of your unavailable stock changing category at once. Pull up whichever report you trust for stock and confirm it still says what you think it says.",{"type":22,"tag":35,"props":351,"children":353},{"id":352},"the-rest-briefly",[354],{"type":27,"value":355},"The rest, briefly",{"type":22,"tag":58,"props":357,"children":358},{},[359,384,394,404,414],{"type":22,"tag":62,"props":360,"children":361},{},[362,367,368,374,376,382],{"type":22,"tag":66,"props":363,"children":364},{},[365],{"type":27,"value":366},"6 August",{"type":27,"value":72},{"type":22,"tag":74,"props":369,"children":371},{"className":370},[],[372],{"type":27,"value":373},"updateCart",{"type":27,"value":375}," action now supports cart attributes, and a new ",{"type":22,"tag":74,"props":377,"children":379},{"className":378},[],[380],{"type":27,"value":381},"shopify:cart:attributes-update",{"type":27,"value":383}," event fires when they change. Previously you had to call the Storefront API yourself and nothing told your app an attribute had moved. Useful if you carry delivery slots, gift messages or COD flags on the cart.",{"type":22,"tag":62,"props":385,"children":386},{},[387,392],{"type":22,"tag":66,"props":388,"children":389},{},[390],{"type":27,"value":391},"10 August",{"type":27,"value":393},": Shop Campaigns performance data is now queryable through ShopifyQL.",{"type":22,"tag":62,"props":395,"children":396},{},[397,402],{"type":22,"tag":66,"props":398,"children":399},{},[400],{"type":27,"value":401},"26 August",{"type":27,"value":403},": official PHP and Python packages for building Shopify apps, four new Events webhook topics, and GitHub commits from the theme editor now name the person who made the change. That last one is small and useful if more than one person touches your theme.",{"type":22,"tag":62,"props":405,"children":406},{},[407,412],{"type":22,"tag":66,"props":408,"children":409},{},[410],{"type":27,"value":411},"27 August",{"type":27,"value":413},": password-protected shop dev flows are being deprecated on Theme CLI v3.83.x and older. Agency and developer hygiene, no merchant action.",{"type":22,"tag":62,"props":415,"children":416},{},[417,422],{"type":22,"tag":66,"props":418,"children":419},{},[420],{"type":27,"value":421},"31 August",{"type":27,"value":423},": the Polaris CDN moved to semantic versioning, with a 1.1 release candidate.",{"type":22,"tag":35,"props":425,"children":427},{"id":426},"what-to-do-this-month",[428],{"type":27,"value":429},"What to do this month",{"type":22,"tag":23,"props":431,"children":432},{},[433],{"type":27,"value":434},"One thing, and it's the script tag audit. Run the query, list the apps, email the vendors, and put the ones who don't answer on a replacement list. That's half an hour against a deadline you'll get no warning banner for, because the breakage lands on your storefront rather than in your admin.",{"type":22,"tag":23,"props":436,"children":437},{},[438],{"type":27,"value":439},"The agent stuff can wait, as long as your product data and policy pages are in decent shape, which they should be anyway.",{"type":22,"tag":23,"props":441,"children":442},{},[443,445,451],{"type":27,"value":444},"If you'd rather someone else ran that audit and the vendor conversations, that's the kind of ongoing platform work our ",{"type":22,"tag":47,"props":446,"children":448},{"href":447},"\u002Fshopify-agency-dubai",[449],{"type":27,"value":450},"Shopify agency team in Dubai",{"type":27,"value":452}," does month to month.",{"type":22,"tag":454,"props":455,"children":456},"style",{},[457],{"type":27,"value":458},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":7,"searchDepth":143,"depth":143,"links":460},[461,462,463,464,465],{"id":37,"depth":143,"text":40},{"id":231,"depth":143,"text":234},{"id":301,"depth":143,"text":304},{"id":352,"depth":143,"text":355},{"id":426,"depth":143,"text":429},"markdown","content:insights:shopify-changelog-august-2026.md","content","insights\u002Fshopify-changelog-august-2026.md","insights\u002Fshopify-changelog-august-2026","md",1789104847548]