Skip to content
Store slow, dated, or hard to edit? Request a Store Diagnostic
Running B2B on spreadsheets or email? Plan Your B2B Project
Maintenance & Support

Shopify Staging and Development Store Setup: Testing Changes Safely Before They Go Live

If you’ve ever edited a live Shopify theme directly and watched a broken layout go public for even a few minutes, you already understand why staging matters. The frustrating part is that Shopify doesn’t hand you a one-click “staging site” the way some other platforms do. There’s no single toggle that spins up a full clone of your store, checkout, backend, and all, for testing. What Shopify gives you instead is a set of separate tools that, used together, cover most of what a staging environment is meant to do.

This post walks through what those tools actually are, how to use them properly, and, just as importantly, where the gaps are so you’re not caught out assuming something is “staged” when it isn’t. By the end you’ll have a practical workflow for testing theme changes, app installs, and bigger structural changes without putting your live storefront at risk.

The Short Answer: Shopify Has No Traditional Full-Site Staging

This needs to be said plainly because it trips up a lot of merchants coming from other platforms: Shopify does not offer a true staging environment for your entire store the way, say, a self-hosted CMS might with a full server clone. There’s no built-in way to duplicate your live store’s checkout, backend settings, apps, and customer data into an isolated sandbox, test everything, then flip a switch to push it all live at once.

What you get instead is a combination of:

  • Duplicate themes within your live store, for testing storefront changes
  • Theme preview links for sharing unpublished themes before they go live
  • Shopify Partner-created development stores, which are separate, free Shopify stores intended for building and testing
  • Shopify CLI, for local theme development against either a development store or your live store’s theme files

Each of these covers part of the problem. None of them, alone or combined, gives you a perfect mirror of your live checkout and backend to test against. Understanding that limitation is the first step to building a workflow that actually protects you.

Method 1: Duplicating Your Theme (Best for Most Day-to-Day Changes)

This is the tool most merchants should be using for routine changes, new sections, colour and layout tweaks, adding an app block, adjusting a template.

How it works:

  1. In your Shopify admin, go to Online Store > Themes
  2. Find your live (published) theme, click the … (three-dot) menu
  3. Select Duplicate

This creates an exact copy of your current live theme, unpublished, sitting in your theme library. You can edit that duplicate freely in the theme editor without touching what customers see. Your live theme keeps running untouched the entire time you’re working.

A few practical notes from doing this regularly:

  • Shopify allows up to 20 themes in your theme library on most plans (check your current plan’s limit, as this can change), so you’ll want to delete old test duplicates periodically rather than letting them pile up.
  • Duplicating doesn’t copy theme app extension data perfectly in every case, some apps store settings tied to the specific theme ID, so after duplicating, check that app blocks and app embeds in the copy are still configured the way you expect, not just visually present.
  • Metafield content and product/collection data are shared across all themes on the same store, because that data lives at the store level, not the theme level. Changing a metafield value while testing on a duplicate theme will affect the live theme too, since they’re reading from the same underlying data.

Method 2: Preview and Share Links Before Publishing

Once you’re editing a duplicate (unpublished) theme, Shopify gives you two ways to look at it before it goes live:

  • Preview, accessible via the Preview button in the theme editor, which opens the unpublished theme exactly as a customer would see it, using a special preview URL
  • Share a link, from the same three-dot menu on the theme, which generates a shareable preview URL you can send to a client, colleague, or QA tester without them needing Shopify admin access

This is genuinely useful for client sign-off. You can build a redesign entirely on a duplicate theme, send the preview link around for approval, make revisions, and only publish once everyone’s happy, all without the live site ever reflecting the work-in-progress version.

The catch: preview links show the storefront experience, but checkout still runs on Shopify’s standard checkout infrastructure tied to your live store settings. You’re previewing the theme, not a parallel version of your payment gateways, shipping rates, or discount logic. If you’re testing something that touches checkout behaviour, a new shipping rate, a payment method, a discount rule, that change is live the moment you save it in settings, regardless of which theme is published. This is one of the most common points of confusion for merchants new to Shopify: theme changes can be staged, but most checkout and settings changes cannot.

Method 3: Shopify Partner Development Stores

For bigger projects, a full redesign, a new app integration you want to build and test in isolation, or evaluating a Shopify Plus migration, a development store is the right tool.

A development store is a free, fully functional Shopify store created through the Shopify Partners program (agencies and freelance developers typically have a Partner account for exactly this purpose). It behaves like a real Shopify store, you can install apps, build themes, configure settings, add test products, but it starts empty and separate from your live store.

What development stores are genuinely good for:

  • Building and testing a new theme from scratch, or a heavily modified custom theme, before ever touching the live store
  • Testing app installs and configurations in isolation, particularly apps that make significant Liquid or checkout modifications
  • Giving a developer a safe sandbox to work in without any risk to live customer-facing infrastructure
  • Trialling a Shopify Plus feature set before committing to a Shopify Plus migration

What they’re not good for:

  • They start with no data. Getting your real product catalogue, customers, and order history into a development store for realistic testing takes deliberate work, exporting/importing products via CSV, or using apps built for store cloning. It’s rarely a perfect one-to-one copy of live data.
  • Payment processing is limited. Development stores can typically only take real payments in a very limited way (or need to be converted to a paid store), so end-to-end checkout testing with live payment gateways isn’t straightforward inside a development store.
  • They’re a separate store, not a live mirror. Changes made in a development store don’t sync anywhere, moving anything to your live store still requires manually rebuilding it there, migrating the theme code, or using tools designed for that transfer.

Method 4: Shopify CLI for Local Theme Development

For developers doing serious theme work, Shopify CLI is the tool that ties the above together properly. It lets you:

  • Pull a theme’s code down to your local machine and edit it in a proper code editor with version control (Git)
  • Run shopify theme dev to serve a live local preview that hot-reloads as you edit Liquid, CSS, and JS
  • Push changes to a specific unpublished theme on either your live store or a development store, rather than editing directly in the browser-based theme editor
  • Keep a clean history of theme changes through Git, so you can review, branch, and roll back changes properly, something the admin theme editor alone doesn’t give you

This is the workflow most agencies use for anything beyond small tweaks, because it makes changes reviewable and reversible in a way that clicking around the online theme editor doesn’t.

A Practical, Safe Workflow: Step by Step

Here’s a sequence that covers most real-world change types, from small to large:

  1. Small visual or content change (copy tweak, image swap, minor section reorder): duplicate the live theme, make the change on the duplicate, preview it, then publish the duplicate to replace the live theme.
  2. New section, app block, or moderate layout change: duplicate the live theme, build and test on the duplicate using the preview/share link for sign-off, verify on mobile and desktop, then publish.
  3. Settings changes that affect checkout, shipping, taxes, or payments: these can’t be meaningfully staged. Test with a real (or heavily discounted) test order at a low-traffic time, and always double-check settings immediately after saving.
  4. New app install: install and configure on a development store first if the app makes structural theme changes (many CRO, upsell, and personalisation apps do); only install directly on live if it’s a well-established app with minimal storefront footprint.
  5. Full theme rebuild or redesign: build entirely in a development store or on a duplicate theme using Shopify CLI, get full stakeholder sign-off via a share link, then migrate settings and publish during a planned, low-traffic window.
  6. Platform-level changes (Shopify Plus migration, major app stack overhaul, checkout extensibility changes): run in a dedicated development store with a realistic data set, and budget real QA time before go-live, this is not something to test only in the theme editor.

Common Gotchas We See Regularly

  • Assuming a “staged” theme means everything is staged. Discounts, shipping rates, tax settings, and payment configuration are store-level, not theme-level, and go live the instant you save them.
  • Forgetting metafields and product data are shared across themes. If you edit a metafield value while working on a duplicate theme for testing, that same value shows on the live theme immediately.
  • Letting duplicate themes pile up. Old test copies clutter the theme library and make it harder to know which one is actually meant to go live next. Name duplicates clearly (e.g. “LIVE, do not edit” and “TEST, Nov redesign”) and delete finished ones.
  • Testing only on desktop. Always check preview links on an actual mobile device, not just a resized browser window, Shopify themes frequently render breakpoints slightly differently than browser dev tools suggest.
  • Publishing during peak traffic hours. Even a clean theme swap causes a brief cache/asset reload for some visitors. Publish changes during your store’s lowest-traffic window where possible.

When to Bring In a Specialist

For small, low-risk tweaks, the theme duplication workflow above is genuinely something most store owners can manage confidently on their own. Where it gets riskier is anything touching checkout settings, a Shopify Plus environment, custom Liquid at scale, or a full replatform, the kind of work where a mistake isn’t just visual, it affects orders and revenue directly. If you’re planning something more involved than routine content updates, it’s worth having an experienced pair of eyes review the plan first. Our Shopify consulting team regularly helps merchants set up a proper development and staging workflow before a big project starts, rather than after something’s already gone wrong.

FAQ

Does Shopify have a real staging site like WordPress or other platforms?
No. Shopify doesn’t offer a full staging clone of your live store’s checkout and backend. You can stage theme (storefront) changes using duplicate themes and preview links, but settings like shipping, tax, discounts, and payment configuration are live the moment you save them, regardless of which theme is published.

Is a Shopify development store free?
Yes, development stores created through the Shopify Partners program are free and intended for building, testing, and eventually transferring to a live paid plan. They’re not meant to be used as a permanent second live store.

Can I copy my live store’s products and orders into a development store for realistic testing?
You can export and import products via CSV, and some apps are built specifically for store cloning, but it’s not an automatic, one-click sync. Getting a development store to closely mirror your live catalogue takes deliberate setup work, and order history in particular is generally not something you’d replicate for testing purposes.

What’s the difference between previewing a theme and publishing it?
Previewing (or sharing a preview link) shows the theme exactly as customers would see it, without making it the active theme customers actually land on. Publishing makes that theme the live one immediately. Preview links are safe to share widely for feedback; publishing should be a deliberate, planned action.

Can I test app installs safely without risking my live store?
For apps that make significant changes to your theme code or checkout, testing in a development store first is the safer approach. For simple, well-established apps with minimal storefront footprint, installing directly and testing on a duplicate theme is usually sufficient.

Next Step

If you want help setting up a proper staging and testing workflow for your store, or a second opinion before a bigger theme or platform change, book a call with our team, or start with a Shopify audit to see where your current setup has gaps.

Niraj Raut
Written by Niraj Raut SEO Manager

Niraj Raut is the SEO Manager and co-founder at Nexly. He helps Australian Shopify and Shopify Plus brands earn durable organic growth through technical SEO, search-led store architecture and content that ranks. He writes about what actually moves rankings for ecommerce.

Connect on LinkedIn
Have a Shopify project? Chat with us, takes 30 seconds.