Skip to content
Examples

How to set up a spend more, save more discount on Shopify

One spend goal offer holds every threshold. At $100 the cart takes 10% off, at $200 it takes 15%, at $300 it takes 20%, and the shopper always gets the highest tier their cart reaches.

  • Spend goal
Spend and saveOrder discount
  • Spend $10010% off the orderTier 1
  • Spend $20015% off the orderTier 2
  • Spend $30020% off the orderTier 3
One offer, three thresholds. The cart at $300 clears the top tier.
What the shopper sees

The cart shows the saving already applied and how much more is needed for the next tier. At $115 the shopper sees 10% taken off and a line telling them $85 more unlocks 15%. The same total carries into checkout.

Wander & Co.$300.00
  • Hand-Loomed Wool Area Rug

    5x7 / Qty 1

    $180.00
  • Ceramic Table Lamp

    Qty 1

    $120.00
Spend goal - 20% off over $300-$60.00
Total at checkout-$60.00$300.00$240.00
The same offer from the shopper side. The tier table says what the rule is; this says what they pay.
Build it

How to set this up

  1. 1

    Campaign > Offer type

    Pick Spend goal. This is an order-class discount, so the percentage comes off the order rather than off individual lines.

    type = spend_goal

  2. 2

    Target

    Leave the target at all products unless the promotion is meant to be limited to part of the catalogue.

    target.scope = all

  3. 3

    Tiers

    Add three tiers by spend, not by quantity. A tier sets either a spend threshold or a quantity threshold, never both.

    tiers[0].minSpend = 10000

  4. 4

    Tiers > Rewards

    Set each tier to a percentage reward: 10, 15, and 20. Percentages are entered as 0 to 100, not as decimals.

    tiers[n].rewardType = percentage

  5. 5

    Rounding

    Optionally round the discount so prices land on a .99 ending. Rounding is applied to the discount and always downward, so the shopper is never charged more than the plain percentage.

    rewardRounding = end99

  6. 6

    Widgets

    Turn on the cart progress widget so the shopper can see the next threshold. The nudge is most of the value of this offer type.

  7. 7

    Preview

    Simulate carts at $99, $100, $199, and $300 and confirm the tier flips exactly at each threshold, then publish.

The exact settings

Every setting, spelled out

These are the real configuration keys the offer is saved with, so you can check your own setup against this table field by field.

SettingValueConfig key
Offer typespend_goaltype
Targetall productstarget.scope
Tier 1minSpend 10000 -> 10%tiers[0].minSpend
Tier 2minSpend 20000 -> 15%tiers[1].minSpend
Tier 3minSpend 30000 -> 20%tiers[2].minSpend
Reward typepercentagetiers[n].rewardType
Discount classorderdiscountClasses
MethodautomaticdiscountMethod
Roundingend99 (optional)rewardRounding
Watch it

See it built end to end

The episode is not up yet

We are recording this one. The written recipe above is complete, so you can build it today.

Without an app

What Shopify does natively

What you can do

Shopify supports a minimum purchase amount on an automatic order discount, so a single threshold such as "10% off over $100" needs no app at all.

Where you need an app

Native discounts allow one minimum per discount, so three tiers means three separate discounts. They then compete rather than escalate, they each count against the limit on active discounts, and there is no cart widget telling the shopper what the next threshold is.

Before you publish

Watch out for

  • A tier sets a spend threshold or a quantity threshold, not both. Mixing the two in one offer is rejected at save time rather than producing a surprising result later.
  • Thresholds are stored in minor units, so $100 is 10000. This is the most common data-entry mistake in the whole builder.
  • Only the highest satisfied tier applies. Tiers escalate, they do not accumulate.
  • Two order-class discounts never combine. If a storewide order discount is already running, decide which one should win before publishing this.

Common questions

Do the tiers add up?
No. The cart gets the single highest tier it qualifies for, so a $300 cart gets 20% and not 10 plus 15 plus 20.
Can I mix spend tiers and quantity tiers in one offer?
No. Each tier is defined by spend or by quantity. If you need both mechanics, run two offers and decide how they should combine.
Is the threshold measured before or after other discounts?
It is measured against the cart subtotal the offer sees when it runs. Use the preview to confirm the behaviour if another discount is also active.
Can I show the shopper how close they are?
Yes, the cart progress widget renders the next threshold and the amount remaining.

Related examples

Tiered volume discount

Bigger percentage as unit count rises, with control over how mixed variants are counted.

Different reward per tier

A spend ladder whose rungs pay out in different forms, and the rule that decides when a rung needs its own offer.

Multiple perks on one threshold

A percentage, free shipping, and a gift all unlocking at the same spend threshold.

Build this in your own store

Every recipe in this library runs on the same server-side engine, so the cart total and the checkout total agree.

We use essential cookies to run this site, and, only with your permission, analytics cookies to understand traffic. Read our Cookie Policy.