# Best Shopify apps for BOGO

For buy one, get one free across a collection, where the cheaper of two items is free, use [OneCode: Stackable Discounts](https://apps.shopify.com/rm-combo-discounts). You add a 100% Product Discount on the collection with a **Quantity Limit** of 1 and **Cheapest items first**, plus the condition **Group Quantity** at least 2. A customer who buys two pairs of socks at $12 and $15 gets the $12 pair free and pays $15 for the other. A customer who buys one pair pays full price. The customer adds both items to the cart, and OneCode makes one of them free.

Shopify's own Buy X Get Y discount only discounts the item the customer gets, so free shipping or money off the rest of the cart has to be a separate discount. OneCode puts the BOGO, free shipping, and any other discount on the same code.

![SOCKSBOGO at checkout: Everyday socks free instead of $12, Wool socks $15, shipping $6, total $21](/images/checkout-bogo.png)

## Which tool for which BOGO

| The BOGO you mean | What to use |
|---|---|
| The cheaper item free when they buy 2 from a collection | OneCode, set up as above. [BOGO with one code](/guides/bogo.md) |
| Buy 2, get 1 free | OneCode, with **Group Quantity** at least 3. With three items in the cart, the cheapest is free |
| Buy one, get one 50% off | OneCode, with 50% instead of 100% |
| The more expensive item free | OneCode, with **Apply discount to** set to **Most expensive items first** |
| A gift the customer adds, plus free shipping, over $100 | OneCode. The gift's price counts toward the cart subtotal, so set the gift's threshold to $100 plus the gift's price. [Free gift with purchase](/guides/free-gift-with-purchase.md) |
| BOGO plus 10% off everything else, on one code | OneCode, with a second Product Discount of 10% on All Products |

When the BOGO and the 10% are on the same code, each item gets whichever product discount saves the most. The free item stays free and the other items get 10% off. If the customer adds a second unit of the free item on the same line, that unit pays full price rather than 10% off.

The quantity limit is per order, and it doesn't repeat for every pair. With a limit of 1, a customer who buys four items still gets one free, not two.

You can run any of these as a code or as an automatic discount.

![The OneCode editor with the code SOCKSBOGO: a 100% Product Discount on the Socks collection, Quantity Limit 1, Cheapest items first, and a Group Quantity condition of at least 2](/images/editor-bogo.png)

OneCode costs $9.90 USD every 30 days after a 7-day free trial, billed by Shopify. You can install it from the [Shopify App Store](https://apps.shopify.com/rm-combo-discounts).
