How to Apply an Order Discount and Free Shipping with One Code on Shopify

If you want a Shopify discount code to apply an order discount and free shipping at the same time, the key is avoiding Shopify’s discount-stacking behaviour altogether.

Shopify does not reliably apply order discounts and shipping discounts together when they are created as separate discounts. One of them will often be dropped at checkout with no warning.

OneCode Discounts solves this by letting one discount code control both outcomes as a single promotion.

Here’s how this works in practice.

The Specific Problem with Order Discounts + Free Shipping

Order discounts and shipping discounts are evaluated separately in Shopify.

That means:

  • Shopify applies the order discount

  • then separately decides whether the shipping discount is allowed

  • and silently removes one if there’s a conflict

This is why:

  • free shipping disappears after entering a code

  • the order discount works, but shipping doesn’t

  • behaviour changes between test and live checkout

The issue isn’t configuration — it’s how Shopify resolves conflicts.

What Not to Do

If your goal is one clear promotion, avoid these setups:

  • creating two separate discount codes

  • relying on automatic free shipping with a manual code

  • toggling combination settings and hoping they stick

All of these depend on Shopify stacking independent discounts, which is unreliable.

The Correct Structure: One Code, Two Rules

To apply an order discount and free shipping together, the promotion must be defined as one campaign, not two discounts.

With OneCode Discounts:

  • one discount code is created

  • one rule applies the order discount

  • one rule applies free shipping

  • both rules are evaluated together

There is no stacking and no priority guessing.

A Different Example (Order-Focused)

Promotion goal:

  • $30 off orders over $200

  • Free shipping on the same order

Using a one-code setup:

  • Rule 1: apply $30 off when cart total exceeds $200

  • Rule 2: apply free shipping when cart total exceeds $200

Same condition, same code, two outcomes.

The customer enters one code and sees both benefits apply immediately.

Why This Is More Predictable

Because both rules belong to the same promotion:

  • neither rule can override the other

  • Shopify doesn’t have to choose which discount “wins”

  • checkout behaviour is consistent across carts and shipping rates

This is especially important during:

  • high-value orders

  • BFCM-style sales

  • paid traffic campaigns

When This Setup Makes Sense

This approach works best when:

  • free shipping is part of the incentive, not the main offer

  • the order discount is threshold-based

  • you want clean, simple messaging like “$30 off + free shipping”

If your promotion relies on stacking separate discounts, you’ll keep running into edge cases.

The Takeaway

Shopify can’t reliably apply an order discount and free shipping when they’re created as separate discounts.

The reliable way to do this is to define the promotion as one campaign, where one code controls both rules together.

That’s exactly what OneCode Discounts was built for.

0 comments

Leave a comment

Please note, comments need to be approved before they are published.