Shopify Staging: How to Test Changes Safely Before They Go Live
Shopify staging means testing changes to your store somewhere customers can’t see them before you publish. Shopify has no built-in staging environment, so merchants use a duplicated theme for design changes, a separate development store for apps, checkout and data changes, or a staging app that copies the live store.
Testing on a live store risks broken layouts, app conflicts and checkout errors during real sales. A good staging setup lets you try theme updates, new apps and bulk changes safely, get sign-off and publish with confidence.
Does Shopify Have a Staging Environment?
Shopify doesn’t include a dedicated staging environment the way some platforms do. There’s no built-in copy of your store that you can edit freely and then push to production in one step.
Instead, Shopify gives you building blocks. You can work on unpublished themes in your live store, create separate development stores and, on Shopify Plus, use additional stores, while apps and developer tools fill the gaps between them.
Shopify Staging Options Compared
Each staging option covers a different layer of your store, so the right one depends on what you’re changing. Theme changes need far less setup than testing a new app or a checkout change.
| Option | Best for | Main limitation | Cost |
|---|---|---|---|
| Duplicated, unpublished theme | Layout, section, Liquid and design changes | Theme only, inside the live store, without isolating apps or data | Free |
| GitHub integration or Shopify CLI | Developer teams using branches, code review and local previews | Theme only, and requires technical skills | Free |
| Development store | Apps, checkout changes, custom code, integrations and metafield setups | Starts empty, so data, apps and settings must be copied in | Free with a Shopify Partner account |
| Shopify Plus additional stores | Plus merchants who need a full store for testing | Still needs data and apps copied in | Included with Shopify Plus |
| Staging apps | Teams that want a full copy of the live store with less manual work | Ongoing cost and reliance on a third party | Usually paid, some with limited free plans |
Duplicate your theme
Duplicating your live theme is the quickest way to stage design changes. In the Shopify admin, go to Online Store > Themes, open the actions menu on your current theme and choose Duplicate, then edit the copy and use Preview to see it with your real products and content.
The copy runs inside your live store, so it doesn’t isolate apps, checkout settings, products or other data. It’s ideal for visual work but not for testing a new app, a checkout change or a bulk data update.
GitHub integration and Shopify CLI
Developer teams can manage themes as code. Shopify’s GitHub integration connects a branch to a theme, so a staging branch can feed an unpublished theme while the main branch feeds the live theme, with pull requests and code review in between.
Shopify CLI adds local development and lets developers push changes to an unpublished theme for review. Like duplicated themes, these workflows cover the theme layer only.
Development stores
A development store is a separate Shopify store you create through a free Partner account, which makes it the most common full staging option. Because it’s isolated from your live store, you can install apps, change settings, edit checkout and test integrations without affecting customers.
It has trade-offs. A new development store starts empty, it accepts only test payments, some apps may not be available on it and its data drifts away from your live store over time, so you need a plan for copying and refreshing data.
Shopify Plus stores
Shopify Plus includes additional expansion stores, and Plus organizations can create development stores for testing. These give Plus merchants full stores for staging, though data and apps still need to be copied in and kept current.
Staging apps
Staging apps copy your live store into a second store with less manual work. Rewind Staging, for example, copies themes, products, pages, files and more from a source store to a destination store, with an optional continuous sync, while Duplify also copies stores and offers a limited free plan.
These apps save hours compared with manual copying, but they add a monthly cost and you depend on the app to copy everything you need. Check which data types each app copies before relying on it.
How to Set Up a Shopify Staging Store
For anything beyond theme changes, a separate staging store gives you a safe place to test. These steps set up a development store as your staging environment:
- Create the store. In your Partner account, create a development store and give it a clear name, such as “yourstore-staging.”
- Copy your theme. Download the live theme from Online Store > Themes and upload it to the staging store, or push it there with Shopify CLI.
- Copy your product data. Export products from the live store and import them into the staging store, then check collections, images and variants.
- Recreate content and structure. Copy pages, blog posts, menus and metafield definitions, since product exports don’t include all of them.
- Install and configure apps. Reinstall the apps you use, matching their settings to the live store as closely as possible.
- Match key settings. Set up shipping, taxes, markets and checkout settings so tests reflect real behavior.
- Protect the store. Keep password protection on so customers and search engines can’t find it.
- Place a test order. Run a full checkout with the test gateway to confirm apps and notifications that depend on orders work.
Copying product data is often the slowest part of setup, especially for large catalogs. Bulkflow supports bulk export and import of product data for Shopify, WooCommerce and Wix, so you can export selected data from your live store and import it into a staging store instead of re-entering products.
What to copy and what to leave out
Staging should look and behave like your live store without exposing real customer information. Use this as a guide:
| Copy to staging | Leave out or replace |
|---|---|
| Theme files and theme settings | Real customer records, replaced with test accounts |
| Products, variants, images and collections | Real orders and payment details |
| Pages, blog posts and menus | Live API keys, replaced with separate test credentials |
| Metafield definitions and the values you need for testing | Live marketing automations that could message real customers |
| App installs and configurations | Live payment processing, replaced with test payments |
Pay special attention to items that don’t transfer cleanly. Manual collection assignments, navigation menus, metafield values and app settings often need separate steps or tools.
How to Test and Release Changes
Staging only pays off with a consistent release process. Before publishing any staged change, work through these checks:
- Back up first. Duplicate the live theme and add the date to its name, so you can switch back quickly.
- Test on mobile and desktop. Check layouts, menus and product pages at common screen sizes.
- Run a full checkout. Test cart, discounts, shipping, taxes and order notifications end to end.
- Test with apps active. Many problems appear only when apps interact, so test with the apps your live store uses.
- Check empty and edge cases. Look at products with missing images, long titles or no metafield values.
- Review performance. Compare page speed before and after the change, since slower pages can hurt conversions and search rankings.
- Get sign-off. Share a preview link with someone other than the person who built the change.
Publish during a quiet period when your team is available to respond. After publishing, check the live store straight away, and keep the previous theme ready in case you need to roll back.
Keep Your Staging Environment Useful
A staging store loses value as it drifts from your live store. Refresh products, prices and key settings before major testing sessions, so you’re testing against data that reflects what customers actually see.
Manage access carefully too. Give contractors and new developers access to staging first, use collaborator accounts for outside help and remove access when a project ends.
Finally, keep staging private. Password protection and keeping staging pages out of search results prevent customers from finding unreleased products, prices or promotions.
Conclusion
Shopify staging takes a little setup because there’s no built-in staging environment, but a duplicated theme, a development store or a staging app covers almost every kind of change. Matching your staging store to the live one and following a clear release process keeps updates from disrupting customers. We hope this guide helps you set up Shopify staging that makes every change safer. If you need to move product data into a staging store in bulk, you can explore Bulkflow.



