OxifyOxify
Build your offer

Mix & Match

Sell the product on the page together with other products as one set, with one discount when the shopper buys them all.

A Mix & Match offer sells different products together as one set: the product on the page plus the products you add. You set one discount on the offer. Shoppers add the whole set with one click, and checkout takes the discount off every product — as long as the whole set is in the cart.

Use it when the set is made of different products, such as a shampoo, a conditioner and a mask. For more of the same product, use a quantity break or Buy X, get Y free. For a build-your-own box, see the Bundle Builder.

Two ways to create one

Mix & Match templateAdd Offer → Mix & Match
WhereHome → Add new deal → Choose a Bundle TemplateOffers tab of any bundle
What you getA new bundle with one Mix & Match offerOne more offer at the bottom of the bundle you're editing
Name (only visible for you)Mix & Match DealUnchanged
Block titleMIX & MATCHUnchanged
TitleMix & Match Deal1 pack
SubtitleChoose your productsStandard price
Discount TypeDiscounted % (e.g. 25% off), 10Discounted % (e.g. 25% off), 10
Selected by defaultTickedUnticked
Product cardsProduct #1 onlyProduct #1 only

Both start with one product card, Product #1 — the product on the page — so add at least one more before you go live. Use the template for a bundle that is only a Mix & Match, or Add Offer to put one next to quantity-break offers; the shopper picks one offer. An offer added from the menu keeps the quantity-break wording, so rewrite its Title and Subtitle.

Set one up

On the app Home page, click Add new deal. On the Choose a Bundle Template screen, click Create Bundle on the Mix & Match card.

To add one to an existing bundle instead, open it, go to the Offers tab, click Add Offer below the last offer and choose Mix & Match.

On the Bundle Settings tab, set the Name (only visible for you), the Block title and Visibility. On each product page the offer shows on, Product #1 is the product the shopper is looking at.

Go to the Offers tab, scroll past the feature cards to the Offers heading, and open the Mix & Match offer — the one with a Product #1 card and no Quantity field. Write the Title (required) and Subtitle, for example Complete the routine and Buy all three and save 10%.

Choose the Discount Type and enter the number. It works per product, so read Set the discount first.

Click Add product under the product cards. A Product #2 card appears. Click Select a product in it and choose the product. Repeat for every extra product.

Click Save. Check that the Status dropdown in the header says Active.

Open a product page that matches your visibility rules. Check the rows, select the offer, add it to the cart and go through checkout. The total at checkout should be the discounted one.

To let shoppers swap a product for another, see Let shoppers change a product. The rest of the card — Image (Optional), Badge text, Label, Selected by default, Add ons, Show as Sold out, Hide behind scratch-off — works as on any offer: see Add and edit offer tiers. There is no Quantity field and no Show quantity selector: each product is one unit.

Add and arrange products

Every product in the set is a card on the offer, in the order shoppers see them.

CardWhat it is
Product #1Always labelled Default product. It is the product on the page where the offer appears, so you don't pick it — and it can't be moved, replaced or deleted.
Product #2, #3…Products you add. Click Add product to add a card, then Select a product to choose it in Shopify's product picker.

Once a product is chosen, its card shows the picture and name. In a card's header, the arrows move it up or down (Product #2 can't move above Product #1) and the bin icon deletes the whole card. The bin icon beside the product's name only clears the choice and brings back Select a product.

  • You pick the product, not a variant. Shoppers choose the variant on the page.
  • The other products don't need to be covered by your Visibility settings.
  • There is no quantity and no discount per product. To sell two of the same product, select it in two cards.
  • Use products that are active, in stock and available on your Online Store sales channel. The offer doesn't check any of this.

Fill every card

A card with no product shows shoppers an empty row reading Select product and adds nothing to the cart, and checkout never discounts a set that has an empty card. Save doesn't warn you, so select a product in every card or delete the card.

Let shoppers change a product

You can let shoppers swap a product for another one you approve — a different flavor, scent or color, say.

Open a Product #2 (or later) card that has a product selected. Product #1 has no swap option.

Tick Customers can change this product, then click Select products. Shopify's product picker opens with your product already ticked. Tick the alternatives you want to offer and confirm.

The button now reads View selected (3), for example — the count includes the product you selected — and the alternatives appear under it. Click it to change the list.

Click Save.

The product you selected stays the default: shoppers start on it. Once you've picked at least one alternative, the row gets a Change button. It opens a popup, Select product, listing the default and every alternative with its picture, name and discounted price — plus the struck-through price and a Save badge when there's a saving, and variant dropdowns if the product has options. Choose applies the product and the variant picked in the popup; the current one reads Selected. The cart gets the product the shopper chose, and checkout accepts the default or any alternative for that card.

Example: pick any 3 of 5 flavors. Set Visibility to Specific selected products and select the five flavors. Add a Mix & Match offer titled Pick any 3, save 30% with Discounted % (e.g. 25% off) 30, and click Add product twice. In Product #2 and Product #3, select any flavor, tick Customers can change this product and tick all five in Select products. A shopper on flavor A's page gets A in the first row — its product can't change — and two rows they can switch to any of the five. Checkout accepts any three, repeats included.

Translate the popup

The popup's texts are defaults, not copy you write. Once a card has Customers can change this product ticked with a product and at least one alternative, and you've saved, they appear on the Translations page, the same for every A/B test version:

Field on the Translations pageEnglish default
Mix & Match - Change buttonChange
Mix & Match - Change popup titleSelect product
Mix & Match - Change popup subtitleYour bundle discount applies to every option
Mix & Match - Choose buttonChoose
Mix & Match - Selected buttonSelected
Mix & Match - Savings badge (before the amount, e.g. "Save $5")Save
Mix & Match - Empty product slot textSelect product
Mix & Match - Change popup close button (accessibility label)Close

The empty product slot text is what a card with no product shows in its row. The close label is read out by screen readers on the popup's ✕.

Set the discount

A Mix & Match offer has one Discount Type, and it applies to every product in the set. The dropdown has the same four options as on any offer (see Discount types), but they work per product, because every product is one unit:

Discount TypeWhat each product gets
No DiscountFull price. The offer is just a set.
Discounted % (e.g. 25% off)That percentage off.
Amount Off (e.g. $10 off)That amount off, once. 5 off a set of three products takes 15 off in total.
Fixed Price (e.g. $29)The product's price becomes that amount, if it costs more. A product that already costs less keeps its price.

A value of 0 means no discount.

Fixed Price is per product here, not per set

20 on a set of three products caps each product's price at 20 — the set can cost up to 60, not 20. For a saving on the whole set, use Discounted % (e.g. 25% off) or Amount Off (e.g. $10 off). Keep Amount Off below your cheapest product's price too: checkout counts the full amount for every product, even one that costs less, so the discount can be larger than the page shows.

Built with an older version of the editor?

Earlier versions let you set a quantity and a discount on each product. The editor no longer shows those fields, but an older offer keeps them: a saved quantity still counts, and a saved per-product discount is used when the offer's own discount is No Discount or 0. A discount set on the offer replaces them. If an older offer doesn't charge what you expect, rebuild it with Add Offer → Mix & Match.

What shoppers see

  • The offer card looks like any other offer: your Title, Subtitle, Label, badge and image. Its price is the total for the set — the sum of the rows below it — with the undiscounted total struck through.
  • Under the card is one row per product card, in card order, with a + between rows. A row has the product's picture and name, its price, and — when they apply — variant dropdowns and a Change button. The price is the discounted one, with the compare-at price (or the regular price, if there's no compare-at price) struck through next to it when it's higher.
  • The rows show whether or not the offer is selected. Shoppers select the offer, then click your theme's Add to cart button.
  • Product #1 shows the page's product at the page's price. The other rows show prices for the shopper's country, looked up live. If the lookup fails or returns nothing for a product, its row shows the price saved when you picked it.
  • The editor's Preview card shows the same rows. Its first row is the product in Product previewing, and the prices are the saved ones — so check a real product page too.

Style it on the Design tab: the Mix & Match groups in Colors and Typography set the product name, price, struck-through price and background. See Colors and fonts. The Change popup picks up the same name, price and struck-through price colors.

Variants in the rows

A row shows variant dropdowns when the product has options such as size or color and either of these is ticked, on the Bundle Settings tab under Advanced Settings → Variants:

  • Let customers choose different variants for each item
  • Show variant selection for single quantity deal bar

Both are ticked in a new bundle, and the dropdowns follow your variant swatches. To turn them off, untick Show variant selection for single quantity deal bar first, then Let customers choose different variants for each item — while either is ticked, the dropdowns stay. With no dropdowns, shoppers get each product's first variant.

Product #1's variant is chosen on its row in the offer, not with your theme's own variant picker. Hide theme variant picker removes the second picker, but it applies to the whole bundle, so test your other offers. See Variant settings.

Prices and price settings

  • Use product compare-at price decides whether the struck-through total on the offer card is the sum of compare-at prices (ticked) or of regular prices (unticked). The rows always strike through the compare-at price when the product has one.
  • Show prices per item has no effect: the offer always shows the set total.
  • Show prices without decimals and Price rounding change only the figures on the offer card — its totals and any price variables in its text — not the rows, and checkout uses neither. With Price rounding on, the card can show a total, and a struck-through total, that checkout doesn't charge. Keep it off for Mix & Match.
  • In the Title, Subtitle, Label and Badge text, text variables are worked out for the whole set: {{saved_amount_total}}, {{saved_percentage}}, {{new_total_price}} and {{original_total_price}} are set totals. The per-item variables equal the totals, {{quantity}} is 1, and {{product}} is the name of Product #1.

What goes into the cart

  • Add to cart adds one line for each card that has a product: one unit each, in the variant the shopper picked, or the product's first variant when there are no dropdowns. A card without a product adds nothing.
  • Every line carries a tag that ties it to the offer. That is how checkout knows which lines make up the set.
  • Free gifts and upsells the shopper ticked are added as extra lines. If the shopper chose a subscription on the Subscriptions card, each product is added on that plan, so every product in the offer needs to be on it.
  • The discount lands at checkout, so some themes show full price in the cart.

What checkout charges

Checkout looks at the cart lines that were added through the offer.

  • All or nothing. The discount applies only while every card is covered: the cart holds each card's product — for a card with a swap list, the default or any alternative. Take one product out and none of the others gets the discount, and the offer's free gifts and upsells stop being free too. Checkout doesn't fall back to another offer in the bundle.
  • Only products added through the offer count. The same product bought another way doesn't fill a card.
  • Complete sets. With two of each product in the cart, two of each are discounted. Extra units pay full price: two of Product #1 and one of each other product is one set. Checkout matches products, not variants, so a different variant doesn't break the set. The same product in two cards works if the cart holds enough units of it for both.
  • One discount. The savings on all the products are added up into a single discount. Its message is your Title, exactly as you typed it, so variables such as {{saved_percentage}} aren't filled in — keep them for the Subtitle and Label. It belongs to the one automatic discount Oxify Bundle Discount under Discounts in your Shopify admin.
  • Other currencies. Amount Off and Fixed Price are in your store currency and are converted for shoppers in other currencies. A percentage isn't converted.
  • Cents. Checkout adds up each product's exact saving and rounds the total, while the page rounds each product's saving down. The two can differ by a cent or two: 10% off a 29.00, a 19.99 and a 9.50 product shows 52.65 on the page and charges 52.64.

How it works with other features

FeatureWith a Mix & Match offer
Sold outShow as Sold out works on the whole offer, as on any offer. The app doesn't read the stock of the products in the set.
Free gifts and upsellsDiscounted only while the set is complete, and only up to their own quantity — not once per set. If a product leaves the cart, a gift stays in the cart at full price. See Free gifts.
Progressive giftsThe offer counts by its position in the list, like any other. The gift is free only while the set is complete.
Other offers in the bundleIndependent. The selected offer decides what is added to the cart.
MarketsThe bundle's Markets setting decides who sees the offer. See Choose where the offer appears.
A/B testsA Mix & Match offer can be in any version. Save every version. See A/B testing.
TranslationsThe Title, Subtitle, Label, Badge text and Sold out text are on the Translations page, like any offer's. Product names aren't.

Limits

  • Product #1 is always the page's product. You can't change, remove or swap it.
  • The editor has no maximum number of products or alternatives. Each one does take room in your checkout settings, which all your bundles share. When they don't all fit, a red message appears when you save, naming the bundles that won't be discounted. See Discount not applying at checkout.

If it isn't working

  • The offer doesn't appear: see Offer not showing.
  • The shopper pays full price: see Discount not applying at checkout. For Mix & Match, also check:
    • Every card has a product. An empty Product #2 card means the set can never be complete.
    • Every product is in the cart, added with the offer's Add to cart button. A product added from its own page doesn't count.
    • The discount is set. Discount Type isn't No Discount and the number isn't 0. With Fixed Price, only products that cost more than the fixed price are reduced.
    • You looked at checkout, not the cart.
  • Nothing, or only the page's product, lands in the cart: one of the other products can't be bought — it's sold out, deleted, or not available on your Online Store — and the page shows no error. Fix the product, or switch on Show as Sold out for the offer while it's unavailable.
  • A shopper gets the wrong variant: see Variants in the rows.
  • The Change button is missing: the card needs a product selected, Customers can change this product ticked and at least one alternative picked, and you need to Save.
  • A row shows an old picture: a product's picture is saved when you pick it. Select the product again to update it.

On this page