How to Add a Product Bundle Builder to Shopify Without an App

2026-09-30 · upselling

Why Skip the Bundle App (and What You Give Up)

Every bundle app on the Shopify App Store solves the same three problems: it lets customers pick products, it calculates a discount, and it stores the result as an order. You can solve all three with native Shopify features and a bit of Liquid, and skip the monthly fee entirely. For a store doing 50–500 orders a month, that fee is often $20–$50 that could go into ads instead.

What you give up by going app-free:

If those trade-offs sound acceptable, keep reading. If you sell hundreds of SKUs and need customers to mix-and-match freely, jump to the last section.

Method 1: Fixed Bundles as a Single Product with Variants

This is the fastest path and works for any "buy these three things together" offer. You create one new product that represents the bundle, and variants represent the combinations.

Steps:

  1. In Shopify admin, go to Products → Add product.
  2. Name it something like "Starter Skincare Set."
  3. Under Variants, add options. For a fixed 3-item bundle, you might use one option called "Size" with values "Travel", "Full Size", "Full Size + Refill."
  4. Set the price of each variant to the bundle price — not the sum of parts. If the three items total $60 and you want 20% off, price the variant at $48.
  5. Upload a lifestyle photo showing all items together, plus individual shots in the gallery.
  6. In the description, list exactly what's included. Customers need to know what they're buying.

The catch: Shopify treats this as one SKU. If you sell a bundle, Shopify decrements the bundle product's inventory, not the inventory of the three components. You'll need to manually adjust component stock, or use a fulfillment workflow (see the inventory section below).

When to use this: Fixed bundles where you control the combination. Gift sets, starter kits, "complete the look" offers. It takes 15 minutes and requires zero code.

Method 2: Automatic Bundle Discounts with Shopify Discounts

Shopify's native Automatic discounts can apply a percentage or fixed amount off when a customer adds specific products to cart. This is the closest thing to a true "bundle builder" without code, because the customer picks products themselves.

Steps:

  1. Go to Discounts → Create discount → Amount off order (or Buy X get Y).
  2. Under Applies to, choose Specific products and select the products eligible for the bundle.
  3. Set Minimum quantity of items — for example, "3" if the bundle is any 3 eligible products.
  4. Set the discount, e.g. 15% off.
  5. Under Combinations, decide whether this stacks with other discounts. Usually you want it to not combine, to protect margin.
  6. Save and enable.

Now create a collection called "Build Your Bundle" containing the eligible products, and link to it from your navigation. Add a banner on the collection page: "Add any 3 items to your cart and save 15% automatically."

Limitations:

When to use this: Mixed-product bundles where customers choose. Works well for candle shops, tea retailers, and supplement stores.

Method Setup time Code required Handles inventory correctly Best for
Fixed bundle product 15–30 min No No (manual) Gift sets, kits
Automatic discount 10 min No Yes Mix-and-match collections
Custom theme builder 4–10 hours Yes (Liquid/JS) Depends on build High-volume, branded UX

Method 3: Build a Custom Bundle Builder with Theme Code

This gives you a real builder UI — checkboxes, quantity selectors, a live price total — running on your own theme. You'll work in your theme's code editor (Online Store → Themes → Edit code).

The approach:

  1. Create a new section file called bundle-builder.liquid.
  2. Define a product list in the section schema, or pull from a collection using collections['bundle-items'].products.
  3. Render each product with a checkbox and a quantity input:
{% for product in collections['bundle-items'].products %}
  <label>
    <input type="checkbox" class="bundle-item" data-variant-id="{{ product.selected_or_first_available_variant.id }}" data-price="{{ product.price }}">
    {{ product.title }} — {{ product.price | money }}
  </label>
{% endfor %}
  1. Add JavaScript that sums selected prices and displays a running total. Apply your bundle discount in the display, not at checkout — the discount itself should come from an automatic discount (Method 2) so Shopify calculates it correctly.
  2. On submit, add all selected variants to the cart using the /cart/add.js endpoint with a single fetch call containing an items array.

Key detail: Do the discount math at checkout, not in the cart. If you show "$48" in your builder but the cart shows "$60," customers will abandon. Use the automatic discount from Method 2 and make sure the bundle products are in the eligible list.

When to use this: You want a branded, on-page experience and you're comfortable editing Liquid. Budget half a day for the first version.

Setting Up Inventory, Pricing, and Fulfillment for Bundles

Inventory. Shopify decrements inventory at the variant level. For a fixed bundle product, the bundle variant has its own stock count. Two options:

Pricing. Set bundle prices so the discount is obvious but your margin survives. A common range is 10–20% off the sum of parts. Below 10%, customers won't notice. Above 25%, check your COGS before committing.

Fulfillment. In your packing slip or order confirmation, list the bundle components so your warehouse picks the right items. If you use a 3PL, send them the component SKUs, not the bundle SKU.

Testing Your Bundle Builder Before You Launch

Run through this list before you announce anything:

When a Paid App Is Actually Worth It

Skip the DIY route and pay for an app when:

Popular options include Bold Bundles, Fast Bundle, and Simple Bundles. Check current pricing and Shopify plan compatibility on each app's listing before you commit — pricing changes and some apps require Shopify Plus for certain features.

Conclusion

You can launch a working bundle offer on Shopify today using a fixed bundle product or an automatic discount — no app, no monthly fee. A custom theme builder takes more effort but gives you full control over the customer experience. Only reach for a paid app when your catalog or channel complexity genuinely outgrows what native Shopify handles.

FAQ

Can I offer bundle discounts without an app on Shopify? Yes. Use Discounts → Create discount → Amount off order with specific products and a minimum quantity. It applies automatically at checkout.

Does Shopify track inventory for bundle components? Not natively. Shopify tracks the bundle SKU's inventory, not the individual components. You'll need Shopify Flow, a fulfillment app, or manual adjustments to keep component stock accurate.

Will a custom bundle builder slow down my theme? Only if you load large product lists or heavy JavaScript. Keep the bundle section limited to a curated collection (under 30 products) and lazy-load images to stay fast.