Buy X get Y free on Shopify — the checkout-safe way

How to run a "buy X get Y free" offer on Shopify that's enforced at checkout, so an unqualified free gift can't slip through. Works on any theme.

🎬 Video walkthrough coming soon

“Buy X get Y free” is one of the highest-converting AOV offers — but only if the free item is actually free when it should be, and not when it shouldn’t. The difference is where the rule is enforced.

Storefront JS vs checkout-safe

  • JS-only apps: the gift is added or discounted in the browser. Edge cases (item removed, cart edited, currency switched) can leave an unqualified gift free.
  • Checkout-safe (Profit Flow): a Shopify Discount Function validates the offer server-side at checkout — what the shopper sees equals what they’re charged.

Set it up

  1. Install Profit Flow AOV Bundle.
  2. Create a “buy X get Y free” offer and add the block to your product page.
  3. Publish — the offer is enforced at checkout, on any theme.
Share:

Offer types you can run

Buy 1 get 1 free (BOGO)

The classic — buy one, the second is free. Enforced at checkout.

Buy 2 get 1 free (3 for 2)

The highest-converting AOV variant for most stores.

Buy 3 get 1 free (4 for 3)

Deeper bundle for consumables and stock-up categories.

Buy X get a different product free

Gift a complementary product when the qualifying item is in the cart.

FAQ

Why do free-gift offers sometimes stay free when they shouldn't?
Because many apps add the gift in storefront JavaScript only. If the qualifying item is removed or the cart is edited, the gift can remain. A Shopify Function enforces the rule at checkout instead.
Do I need to edit checkout?
No. Profit Flow AOV Bundle uses a Discount Function and a theme app extension block — no checkout.liquid and no manual coupon codes.

Add Profit Flow AOV Bundle to your store — free

Installs in minutes, no code. Or have our team set it up on your theme.

More Profit Flow AOV Bundle guides

See all Profit Flow AOV Bundle guides →