Blog

Shopify Free Gift by Country: Different Rewards for Every Market

shopify free gift by country geo targeted rewards

Quick answer: There are three ways to run a free gift by country on Shopify. Since May 7, 2026, native discounts can be assigned to specific markets — so you can build one Buy X Get Y per market. But native discounts never auto-add the gift; the shopper has to find it. For gifts that add themselves in the cart, with a different reward per country, you need an app that reads the shopper's country. We built this into Oxify's reward system, so this guide comes from shipping the feature — including the parts that break.

Why bother? One line: a $6 tote is a cheap gift in Ohio and a $19 mistake in Melbourne once you pay international shipping on it.

Most guides on this topic were written before Shopify's May 2026 markets update and still claim "Shopify has no native option." That's out of date. Here is what each route can and can't do, the setup, and the traps. Last verified August 25, 2026.

Key Facts (Verified August 2026)

  • New since May 7, 2026: Shopify discounts (code and automatic, including Buy X Get Y) can be assigned to specific country/region, B2B, and retail markets — not channel markets. Discounts created before that date keep old settings until you edit them.
  • Native still can't auto-add. A market-scoped Buy X Get Y only discounts a gift the shopper adds manually. Auto-add in the cart needs an app.
  • Market detection beats IP detection. The active Shopify Market matches the currency and checkout; IP lookup misfires on VPNs and travelers.
  • The US $800 de minimis ended August 29, 2025. Every US-bound shipment is now dutiable — a "free" gift's declared value counts. The EU still waives duty under €150 (VAT always applies).
  • Set thresholds per market, not converted. €50 is a rung; a €46.83 auto-conversion of $50 is noise in the progress bar.

Why One Global Gift Leaks Money

A free gift with purchase is a cost you choose. That cost is not the same everywhere:

  • Shipping weight. A 400g gift is pennies domestically and real money in a cross-border parcel — and since the US scrapped its de minimis, it can carry duty too.
  • Stock location. If your EU 3PL doesn't hold the gift SKU, every EU gift order becomes a split shipment.
  • What reads as a good gift. A sunscreen mini lands differently in Dubai and in Oslo. Seasons flip across hemispheres.
  • Threshold value. "Spend $50, get a gift" is a very different ask in the US, India, and Norway.

Stores handle this three bad ways: same gift everywhere (eat the shipping), gifts off for international (leave AOV on the table), or region-specific codes (shared in forums within a week). Country-aware gifts are the fourth option: one campaign, different reward per market.

How to Offer a Free Gift to Certain Countries Only: 3 Ways

Way 1 — Native: Market-Scoped Buy X Get Y (Free, New in 2026)

Since May 7, 2026, the discount editor has a market eligibility selector. The recipe:

  1. Create an automatic Buy X Get Y discount: customer spends the threshold, gets the gift product at 100% off.
  2. In the discount's eligibility, assign it to one market (e.g., United States).
  3. Duplicate it per market, swapping the gift product and threshold each time.

Limits you hit fast:

  • No auto-add. The gift is only free if the shopper finds and adds it. Most never do — this is the gap we covered in free gift with purchase on Shopify.
  • No progress bar, no "you're $12 away from your gift" in the cart.
  • Markets or segments, not both — one discount can't target a country and a customer segment.
  • Pre-May-2026 discounts keep their old global behavior until you open and re-save them.

Use it when: you're on a tight budget, the gift is advertised outside the cart (email, banner), and you accept the low redemption of self-serve gifts.

Way 2 — A Geo-Aware Gift App (Auto-Add, Different Gift per Country)

An app detects the shopper's country and manages the gift line itself: adds it when the cart qualifies, removes it when the cart drops, shows the right gift and currency in the progress bar. This is the only route that gives shopper A in the US one gift and shopper B in Germany another, automatically, in the same session. Setup below.

Way 3 — Shopify Functions (Custom Code)

A developer can read the checkout country in a discount Function and zero a gift's price per country. You still need theme or cart-API code to auto-add the line, plus maintenance forever. Only sensible if you already run a custom checkout stack.

CapabilityNative market discountGeo gift appFunctions (custom)
Restrict gift to certain countriesYesYesYes
Different gift per countryOne discount per marketOne rule, per-country giftsYes, coded
Auto-add / auto-remove in cartNoYesOnly with extra code
Progress bar per marketNoYesNo
CostFreeApp feeDev time

Market Detection vs IP Detection: The Setting That Matters Most

Geo gift apps find the visitor's country two ways.

1. Active Shopify Market (use this if you run Markets). The gift follows the market the shopper is browsing. EUR prices on your /de storefront → German gift. Always consistent with the cart currency and the checkout.

2. IP geolocation. Works without Markets, but it has failure modes the app listings don't mention:

  • VPN users get the wrong country's gift.
  • A traveler browsing from an airport gets the airport's gift, then ships home.
  • Some apps resolve IP once per session — switch market mid-session and the gift doesn't follow.
  • The detected country can disagree with the shipping country chosen at checkout — now the "wrong" gift is inside a paid order.

Our rule after building both: Market detection when you run Shopify Markets; IP only when you don't. Either way, the gift must re-validate against the cart — same discipline as gifts that auto-remove when the cart drops below the threshold.

Setting It Up in Oxify (5 Steps)

The flow in Oxify Cart Drawer & Upsells; other geo-capable gift apps follow a similar shape.

  1. Create the base gift rule. Threshold (spend or quantity) plus the default gift. This is what shoppers in unlisted countries get — or set "no gift" as the default.
  2. Add a country condition. Pick countries (or a Market) and assign a different gift SKU — or no gift — for that group.
  3. Type the threshold per market. Round numbers in each currency: €50, £40, $55. Don't let auto-conversion invent your rungs.
  4. Check gift stock per region. If the gift ships from one warehouse, confirm that warehouse serves those countries — or you've built a split-shipment machine.
  5. Test every market. Switch markets (or use a VPN for IP mode), watch the drawer swap the gift, cross the threshold, then remove items and confirm the gift leaves too. Check the progress bar copy shows the market's currency and the market's gift.

Qualifying shoppers see the gift added in the drawer automatically — or let them pick from a small gift menu per market, the higher-perceived-value version of the same idea.

Three Setups Stores Actually Run

  • Domestic-rich, international-light. US orders over $60 get the branded pouch; everyone else gets a flat, envelope-weight gift (sachets, sticker sheet). Gift cost tracks shipping cost.
  • Warehouse-matched gifts. EU orders get a gift stocked at the EU 3PL, US orders the US-stocked one. Zero split shipments, zero customs surprises.
  • Market-taste gifts. A beauty brand sends SPF minis to Gulf and Southeast Asia markets and a hydration mini to Northern Europe. Same threshold, same campaign, locally sensible reward.

The Traps Nobody Puts on the Marketing Page

  • Customs on "free" items — worse since 2025. A $0 cart line still has a declared value on the commercial invoice. The US ended its $800 de minimis on August 29, 2025, so US-bound parcels are dutiable regardless of value; the EU still waives duty under €150 but charges VAT from €0. Ship DDP for gift-bearing markets, or keep those markets' gifts stocked locally.
  • Currency rounding vs thresholds. A converted threshold drifts with FX — Monday's qualifying cart fails on Friday. Fixed per-market thresholds fix it; same logic as the rest of your multi-currency cart drawer setup.
  • Detection vs shipping mismatch. Decide what happens when detected country ≠ checkout shipping country. Safe default: the checkout country wins and the gift re-validates there.
  • Hide the offer, not just the gift. If a country gets no gift, the progress bar and banners must not promise one. A German bar advertising the US-only tote is a support ticket.
  • Restricted products. Aerosols, batteries, liquids over 100ml — fine domestically, refused at the border. Check the gift SKU against carrier rules per market before assigning it.
  • Discount stacking. If you also run the native market discounts from Way 1, check combination settings so a shopper's coupon doesn't collide with the gift discount.

Is It Worth Doing? One Number Decides

Per market, compute landed gift cost (product + pick/pack + shipping share + any duty) as a share of the threshold:

  • Under ~8%: comfortable. Run it.
  • 8–15%: fine if the gift measurably lifts threshold-crossing — watch the share of orders landing just above the rung.
  • Over 15%: pick a cheaper gift for that market or raise that market's threshold. That's the whole point of doing this per country.

Selling to one country? Skip all of this and use the simpler free gift in cart drawer setup. Geo-targeting earns its keep from your second real market onward.

Frequently Asked Questions

Can Shopify offer a free gift to certain countries only?

Partly, since May 7, 2026: a Buy X Get Y discount can be assigned to specific markets, making a gift 100% off in chosen countries only. But native discounts never auto-add the gift — the shopper must add it manually. For gifts that add themselves and differ per country, you need a geo-aware gift app or custom Shopify Functions code.

How do I exclude some countries from a free gift offer?

Native route: assign the discount only to the markets that should get it. App route: set the gift rule's country condition to the included countries, and make sure excluded countries see no gift promise anywhere — the progress bar and banner copy must hide the offer too, not just fail to add the item.

Should the app detect country by IP or by Shopify Market?

Market, when you run Shopify Markets — it matches the currency and prices the shopper already sees and agrees with checkout. IP detection is the fallback for single-market stores, but it misfires on VPNs and travelers, and some apps only resolve it once per session. The gift should always re-validate against the checkout country.

How do gift thresholds work with multiple currencies?

Set a fixed round number per market — €50, £40, $55 — instead of letting the app convert one base threshold. Converted thresholds drift with exchange rates and print ugly numbers in the progress bar.

Will customers pay customs on a free gift?

They can. Duty is assessed on declared value, not the $0 in your cart. Since August 29, 2025 the US applies duty to shipments of any value (the $800 de minimis is gone); the EU waives duty under €150 but charges VAT from the first euro. Ship DDP to gift-bearing markets or stock those gifts locally.

Does Oxify support different free gifts per country?

Yes. Oxify's reward system supports country conditions on gift rules — different gift SKUs, different thresholds per market, or no gift for selected countries — with auto add/remove in the cart drawer and per-market progress bars, from $9.99/mo.

What to Do Next

Start with your top two markets. Keep the gift you already run for the domestic one, assign a light, cheap-to-ship gift to the international one, set a round threshold in each currency, and test both with the market switcher. That's an hour of work and it stops the worst leak — paying international shipping (and now US duty) on a gift that costs more to deliver than it earns.

Oxify Cart Drawer & Upsells ships geo-targeted free gifts as part of its reward tiers: country-specific gifts, per-market thresholds, auto add/remove, and the tiered rewards bar to advertise them — from $9.99/mo.

Ask AI about Oxify App