For years I ran two e‑commerce businesses the hard way, without realizing it. Each business operated eight separate Shopify stores, one for each main market, plus an international store that consolidated all countries without a local currency. This setup required every change to be made eight times: a new product launch, a sale, even fixing a typo. No matter how big or small the change, it always involved manual, repetitive work across every store. It worked, but it wasn’t efficient or scalable in the long run.
Shopify Markets vs. Expansion Stores
Shopify Markets essentially consolidates what would otherwise be multiple expansion stores into a single store that covers all the countries you sell in.
Each expansion store typically represents one country or a group of countries, while a Markets store lets you manage everything, from payment gateways to translated content, within one admin panel and edit content for each market.
Why Consolidate?
The appeal of Shopify Markets was obvious: one store, one place to manage everything, eliminating the need to duplicate work across eight admin panels. However, achieving that required addressing a few real concerns first.
The biggest concern was content. Several stores were fully localized, with translated content, local currencies, payment options, and carriers. Before making the move, it was essential to confirm that a Markets setup could replicate all of that seamlessly. The goal was to change the admin work behind the scenes while keeping the shopping experience identical for the customer.
Building a New Store Instead of Editing an Old One
Rather than converting an existing store into the Markets store, we launched a brand‑new one, making it a ninth Shopify store. Although it was the longer route, it gave us the certainty to test everything thoroughly and then migrate markets gradually, one or two at a time, instead of flipping a switch on everything at once.
To move the content, we used the app Matrixify, which handled most of the heavy lifting. It exported almost everything, sections, metafields, metaobjects, product data, and more, making the core setup manageable. If you’re considering a move to Shopify Markets, I highly recommend Matrixify.
Translations were the exception. Several third‑party tools promised automation, but the section IDs in the old stores didn’t match those in the new Markets store. We tried cross‑referencing everything in Google Sheets, but that approach wasn’t foolproof and still required extensive manual correction. After spending a lot of time building a workaround, we finally gave up and completed the work manually. In the end, a few days of straightforward copy‑pasting proved faster and more accurate than any automated method we tried.
Shopify Markets Pricing
One of the most important points was ensuring that customers who were used to shopping in their local currency retained that exact experience. This required a complete rethink of how pricing was managed.
You can download templates from Shopify or Matrixify, but they are often confusing, and editing pricing directly in those worksheets makes it easy to mistake a field or unintentionally change something that shouldn’t be altered. The solution was a full pricing catalog built in Excel, where prices can be adjusted without affecting other data. Whether reacting to a currency swing or setting up a sale, that worksheet feeds into a second, more complex sheet formatted specifically for Matrixify, which handles this part of the process. The second sheet isn’t intended for use or viewing; it’s only for exporting to and importing from Matrixify, with all required fields organized correctly. This two‑step system ensures that only the fields needing changes are modified, and nothing else shifts accidentally.
Redirects and Navigation
Redirects became a project of their own. At a basic level, a Norwegian visitor needed to land on the Norwegian store, an Australian visitor on the Australian store, and so on.
On a more technical level, protecting internal linking was equally important. With more than twenty blog posts, and a lot of collection pages, each with a unique URL slug for its market, every one required a proper redirect, or it could create an error or a dead end. Getting this right demanded careful, structured attention to detail.
Handling hreflang tags on a Markets store
When you configure your markets and language pairs, Shopify Markets automatically generates hreflang tags. These tags are created only for markets that have their own domains, subdomains, or subfolders. In our setup we used subfolders for each market, e.g., domain.com/en-au. Here “en” represents the language and “au” represents the market, forming a hreflang tag such as hreflang="en-AU".
Is Shopify Markets good for SEO?
Using subfolders consolidates domain authority to the root domain, prevents duplicate content, and lets Shopify handle the technical SEO.
Things to keep in mind:
- Choose the right domain structure.
- Configure languages and markets accordingly.
- Optimize local content for relevant search terms.
- Let Shopify manage the technical SEO.
Why the results WASN'T one single store
The initial hope was to consolidate everything into a single Markets store, but a hard limitation prevented that. At the time local payment methods in Denmark and Sweden only worked when the store’s main currency matches, Danish kroner for Denmark and Swedish kronor for Sweden. Enforcing a single currency would have added conversion fees to every EUR and USD order.
Instead, the setup uses three stores:
- One international store handling every market except Denmark and Sweden.
- A dedicated Danish store with its own local payment options.
- A dedicated Swedish store with its own local payment options.
Shopify now allows MobilePay and Klarna in Denmark and Sweden through Shopify Payments. However, payment fees may differ from those you set up directly. If you’re considering routing all payments through Shopify Payments, review the fees carefully.
Rolling It Out Gradually
Once everything was built, the switch didn't flip on every market at once. It started with two markets, ones that ranked in the top ten but not the top five, moved over to the new setup first. That created enough real traffic to judge performance without risking the biggest markets if something went wrong.
That ran for a couple of weeks, and once it was clear everything was working as intended, the main markets moved over too.
A few redirect issues did crop up along the way. If you're doing something similar, Shopify's own analytics dashboard is a good place to catch this. Check the Sessions by location dashboard and add "landing page URL" to the dimensions. That will reveal whether certain countries are visiting the wrong subdirectory or subfolder, depending on how the domain structure is set up. In practical terms, this is how the Netherlands ended up as the main market, not because it's the biggest, but because it's a market with EUR as the default currency. Since there are more orders in EUR than in USD, it makes more sense to convert a smaller volume of USD orders into EUR than the other way around. Alongside that main market, there are seven other local markets covering different currencies, plus two consolidated markets, one catching the remaining European countries and one catching the remaining countries that shop in USD.
Merging Customer Data When You Move to Markets
After the soft launch, one more decision remained, whether to merge orders and customers from the old, soon-to-be-retired stores into the new one. Merging is still the best practice, in my view. That step got skipped, mainly because the analytics dashboard in use runs on a third-party tool still connected to the old stores. Merging risked creating duplicate customers and orders inside that system.
Since the dashboard stayed connected to the old stores, it already held all that customer and order history. So when a customer who'd previously ordered from an old store placed a new order on the Markets store, the dashboard tool recognized it as a repeat purchase rather than a new customer. Shopify's native dashboard doesn't make that distinction, though. So if you're relying on Shopify's own reporting, merging customer and order history properly is worth the effort, otherwise you'll see a customer spike that isn't real.
Doing It Again for a Second Brand
This process has now happened twice, for two different brands. The first round taught a lot, and by the time the second brand went through it about six months later, the approach looked different.
The biggest difference was that instead of building a brand new store, everything got merged directly into an existing one. That removed the workload of migrating all the content into a new store, leaving only the translations to worry about. This second brand has lower order volume and less traffic, so the risk was smaller, and by this point the Markets setup was already trusted, which meant far less anxiety around the testing phase. The hard part had already been solved once, so this was largely just copying a setup already known to work, both technically and from the customer's perspective.
The other big difference was payments. This time, everything consolidated all the way down to a single store, something that wasn't possible the first time around. As mentioned earlier, more local payment methods can now be managed directly through Shopify Payments, and since this brand runs on lower order volume, the rates elsewhere weren't as favorable, which made Shopify Payments a genuinely competitive option rather than a compromise.
The Takeaway
Moving from eight stores down to just three, or even one, wasn't a quick fix, and it definitely wasn't free of friction. It was a big project, roughly six weeks of work the first time around, but in the long run it saves an enormous amount of time and makes for a much more stable, frictionless setup.
0 comments