Selected Market vs. Physical Location: Geo-Targeting in Shopify

Two shoppers load your Shopify store. One is in Toronto browsing in Canadian dollars. The other is in Berlin but has switched your store to the US market to see prices in dollars. If you want to show each of them the right banner, the right currency, or the right legal notice, you first have to answer a deceptively simple question: where are they? In Shopify geo-targeting, "location" means two different things - the market a customer has selected, and the place they are physically in - and picking the wrong one is how compliance notices end up in front of the wrong people.
For the large majority of customizations, the selected market is exactly what you want. For a handful of legal and compliance cases, it is not. Knowing which is which is the whole game. Here is how to tell them apart and target each correctly.
The Two Kinds of Location
These two ideas of location usually match, which is why it is easy to forget they are different. They come apart the moment a shopper changes their market.
- Selected market or country. This is the country tied to the market and currency a customer is browsing in. Shopify uses it by default, shoppers can change it with a country or currency selector, and it drives presentment currency, localized pricing, and language. It reflects the context the customer chose.
- Physical (actual) location. This is where the customer really is, regardless of the market they picked - usually derived from their IP address. A shopper can switch their market to see another currency, but that does not change the country they are sitting in.
The Berlin shopper above makes the gap concrete. Their selected country is now the US, so they see dollar pricing. But they are physically still in the EU. For currency and offers, the market they selected is the right basis. For an EU legal requirement, their physical location is.
When the Selected Market Is the Right Choice
Most of the time, you want to respond to the market the customer has chosen, because that is what shapes their commercial experience. Target by selected market for:
- Market-specific banners and announcements - "Free shipping across the EU" for your EU market, a different message for North America.
- Currency- and pricing-based messaging - reward thresholds and progress bars that read in the local currency.
- Country-specific add-ons, gifts, and offers - a travel candle for Europe, a different freebie for Australia.
- Reward tiers and loyalty perks tied to a particular region's pricing.
This is the common case, and it is self-serve. Shopify Markets detects the market and EliteCart responds to it directly in the relevant settings. Our guides on country-specific free gifts and different free shipping thresholds by country both run on this market-based targeting - you pick the countries in the cart settings and the offer follows the shopper's market.
The mental model: if a shopper deliberately switching their market should change what they see, target by selected market. A customer who switches to the UK market to shop in pounds probably should see your UK gift. That is a feature, not a loophole.
When Physical Location Is the Right Choice
Sometimes the opposite is true: a shopper switching their market should not change what they see, because the rule depends on where they actually are. These are almost always legal or compliance cases, and people often search for them by their legal names:
- EU right of withdrawal / cooling-off period (in German, Widerrufsrecht) - for example, the acknowledgment checkbox for digital products, shown only to shoppers physically in the EU.
- Age-restricted or age-gated products - alcohol, vaping, and similar, where what is permitted depends on where the buyer actually is.
- Region- or country-restricted products - items you can only sell into, or must not sell into, certain countries because of licensing, distribution, or export rules.
- Geo-targeted notices and disclaimers - showing, hiding, or labeling legal content based on a customer's real location.
In all of these, basing the decision on physical location rather than a market the shopper can switch makes the behavior much harder to bypass. A customer cannot dodge an age gate or an EU compliance checkbox simply by flipping their currency selector.
"Isn't Geo-Targeting Against EU Geo-Blocking Rules?"
This question comes up a lot, and the confusion is understandable, but the answer is no - showing different content by location is not the same as the geo-blocking the EU restricts.
The EU Geo-blocking Regulation targets two specific behaviors: blocking or limiting a customer's access to your online store based on their location, and automatically redirecting them to a different version of your site without their consent. It is about not slamming the door on shoppers because of where they are. It does not require that every visitor see byte-for-byte identical content, and it does not stop you from charging different prices per market or limiting which countries you ship to.
Showing a legally required, country-specific acknowledgment checkbox is none of those prohibited behaviors. You are not blocking access, you are not redirecting anyone, and you are not refusing the sale. You are adding a notice the law asks you to show in that market. In fact, the regulation explicitly leaves room for measures needed to comply with other legal requirements. So per-market compliance UI and the geo-blocking rules are not in tension - but as always, confirm your own obligations with a legal advisor rather than taking a blog's word for it.
How Accurate Is Location Detection?
Honest answer: very accurate for most shoppers, never perfect for all of them. Physical-location detection generally works from a visitor's IP address, which tools like VPNs and proxies can mask. Someone can appear to be in a country they are not actually in.
For the vast majority of show-and-hide use cases, that is perfectly fine - a banner shown to a few extra people, or hidden from a few, is harmless. For strict regulatory requirements, treat location as a strong signal rather than absolute proof, and lean toward showing a compliance element when detection is uncertain. The cost of showing a withdrawal checkbox to one shopper who did not strictly need it is far lower than hiding it from one who did.
Setting It Up with EliteCart
EliteCart handles both kinds of targeting, and the split mirrors the two cases above:
- Market-based targeting is built in. Banners, add-ons, rewards, and offers can already be shown or hidden by selected market in their respective settings, with country presets for common groups like EU Countries, EEA, DACH, and North America. This is self-serve on the relevant plans.
- Physical-location targeting is a tailored setup. Because true geolocation is used for compliance cases and the rules are store-specific, it is configured for you by the EliteCart team: you tell them what should be shown or hidden, and for which countries or regions, and they set it up.
Either way, location can be used to show or hide almost anything in the cart - banners, messages and disclaimers, checkboxes like a compliance acknowledgment, add-ons and offers, or whole custom sections. The Help Center walks through the distinction in detail in show or hide cart content by location.
If your physical-location use case is specifically the EU cooling-off rule, pair this with our breakdown of the right-of-withdrawal checkbox for digital products, and with the June 2026 EU withdrawal button, which is a separate obligation that also turns on serving EU customers.
Get the location question right before you build the rule. Ask whether a shopper deliberately switching their market should change what they see. If yes, target the selected market - currency, offers, banners. If no, because the rule depends on where they truly are, target physical location - compliance checkboxes, age gates, restricted products. Match the targeting to the intent and your store does the right thing for every shopper, whichever currency they happen to be browsing in.