What is a Dynamic Build-a-Box?
.png?sv=2022-11-02&spr=https&st=2025-12-23T09%3A32%3A45Z&se=2025-12-23T09%3A52%3A45Z&sr=c&sp=r&sig=c%2Fb1bMFy%2F8YOFg%2FJKHp8rRumEFaybBuW2Xd3TBzYs54%3D)
An example of how a Dynamic Build-a-Box builder page looks on the storefront.
Dynamic Build-a-Box lets customers create custom subscription boxes by selecting from products you define as eligible. The box price adjusts based on the individual products selected, and you can set minimum or maximum requirements based on quantity or total value to protect your margins.
Dynamic boxes virtually bundle subscription products together in Skio's backend, making inventory management easy for each product. Skio uses your current product catalog without requiring edits—there are no "parent" or "child" product structures to manage.
Other products and one-time add-ons can be added to box subscriptions in the Customer Portal. This lets subscribers try new products without rebuilding their entire box.
Not sure which box type is right for you? Read our guide on Build-a-Box types before setting up your box.
Box builder page options
The box builder page is the customer-facing page on your storefront where shoppers select products and build their custom subscription box.
You have three options for your box builder page:
Use the default template with customizable colors (turnkey, no developer required)
Edit the default template with more complex styling (requires a developer)
Create a custom box builder page (requires a developer)
Skio does not handle customization of your box builder page. If you need a developer, we can recommend agency partners. For custom implementations, your developers can use Skio's box API documentation.
How to set up a Dynamic Build-a-Box
Step 1: Name your box
In the lefthand menu of your Skio Dashboard, go to Features > Build-a-Box.
Click Dynamic box.
Under Name your box, enter a clear, customer-friendly name (e.g., "Cookie Box").
This name will be shown to customers in the bundle builder.
Step 2: Set discount criteria and tiers
Choose the discount trigger
In Configure your box discount criteria, select how you want the discount to trigger:
Total number of items (most common): Discount is based on the quantity of products in the box
Total cost after selling plan discount: Discount is based on the total price after applying subscription discounts
Total cost before selling plan discount: Discount is based on the total price before applying subscription discounts
Add discount tiers
Under Configure your box discount tiers:
Choose Discount type: Fixed amount off, percentage, or free item
Set Threshold: For example, "4 or more items = $5 off"
Click + Add to include additional discount levels (e.g., 6 items = $10 off)
Example: If you create two tiers (1) 4+ items with $5 off and (2) 6+ items with $10 off:
1-3 items: No discount
4-5 items: $5 off
6+ items: $10 off
If you don't want a volume discount, input 0 for all fields.
Step 3: Set size rules
In Configure your box size options, choose your sizing strategy:
Min/Max options
Set a window for the quantity of items that can be added to a box.
Select Min/Max.
Set a minimum number of items (e.g., 2).
(Optional) Set a maximum number of items (e.g., 6).
Specific size options
Set strict quantity amounts (e.g., 3, 5, and 7 units). Customers can upgrade or downgrade between box sizes in the customer portal.
Select Specific Size Options.
Create different box sizes based on volume discount thresholds.
If you want multiple size boxes with the same discount, use the same discount for those thresholds.
Step 4: Select eligible items
In Choose eligible items for the box, select which product variants can be included in the box.
(Optional) Enable child product grouping to group items (like flavors or colors) visually on the box builder page.
Step 5: Add upsell options (optional)
In Choose one-time upsell items, select variants that can be offered as add-ons.
These items will be shown after the customer finishes building their box.
Step 6: Customize the Build-a-Box experience
Use the Build-a-Box template customizations section to edit the shopper experience.
Text fields
Header: Main title above the builder (e.g., "Build Your Custom Box")
Subheader: Optional supporting text
One-time upsell header/subheader: Displayed for your add-ons
Customer portal box title: How the box shows in the subscription portal
Discount title: How the discount is labeled at checkout
Toggle settings
Display variants as separate cards: Show each variant individually for visual variety
Child quantity editable: Let customers manually enter quantities rather than using "+" and "-" selectors (useful for boxes with 20+ products)
Hide discount progress bar: Turn off the visual tier tracker
Redirect to cart: Auto-forward customers after box setup
Use Rebuy/Slide out cart: Enable if integrated
Ignore one-time: Remove one-time checkout option and force subscription
Hide learn more: Remove the "learn more" button that displays product descriptions
Hide child item price (customer portal): Hide individual product prices in the customer portal
Step 7: Adjust styling and colors
In Build-a-Box theme customizations, match the builder to your brand:
Set colors for buttons, backgrounds, progress bars, and text
Choose highlight states and border colors for active or disabled items
Update quantity selectors, price markers, and badges for consistency
See all available color customization options
Header: Color for the main heading text.
Subheader: Color for secondary heading text.
Product group title: Color for product group headers.
Text: Color for general text elements.
Discount text: Color used for discount labels.
Primary button background (default): Background color for primary buttons in their default state.
Primary button background (selected): Background color when a primary button is selected.
Primary button text (default): Text color for primary buttons in default state.
Primary button text (selected): Text color when a primary button is selected.
Primary button border (default): Border color for primary buttons in default state.
Cart button background: Background color for the main cart button.
Cart button background (disabled): Background color when the cart button is disabled.
Cart button text: Text color on the cart button.
Cart button text (disabled): Text color when the cart button is disabled.
Cart background: Background color for the cart container.
Cart border: Border color used within cart components.
Badge text (default): Text color for badges in default state.
Badge text (selected): Text color when a badge is selected.
Badge background (default): Background color for default badges.
Badge background (selected): Background color when a badge is selected.
Progress bar active: Color of the progress bar when active.
Progress bar default: Color of the progress bar in its default state.
Progress bar inner circle active: Inner circle color when the progress step is active.
Progress bar inner circle default: Inner circle color when progress step is inactive.
Progress bar outer circle active: Outer circle color when the progress step is active.
Progress bar outer circle default: Outer circle color when the progress step is inactive.
Progress bar circle text active: Text color inside progress circles when active.
Progress bar circle text default: Text color inside progress circles when inactive.
Variant selector background: Background color for variant selectors.
Variant selector highlight background: Highlight background color when a variant is selected or hovered.
Quantity adjust button background: Background color for +/– quantity controls.
Quantity text background: Background color behind quantity text.
Price marker default: Default color for displayed prices.
Price marker active: Color for price text when active/highlighted.
Preview your color combinations live to ensure accessibility.
Step 8: Save your box
Click Save changes in the top-right. Your dynamic box is now created.
Step 9: Create the box Selling Plan
After creating the box in Skio, set it up as a subscription product with the appropriate frequencies and discounts.
In the lefthand menu of your Skio Dashboard, go to Features > Selling Plans.
Click Create new plan > Create Dynamic box Subscribe and Save.
Set up the Selling Plans with the shipping intervals you want to offer.
Add the dynamic box product (ensure you select the box product itself, NOT the individual eligible products).
Click Save.
Sync child Selling Plans
Navigate back to the Selling Plan you just created.
Click Sync child selling plans.
Why this step is important: All eligible products in the dynamic box must have Selling Plans on the same frequency and discount as the box itself. Syncing child Selling Plans creates the necessary Selling Plans for eligible products if they don't already exist.
Important note: Syncing child Selling Plans will NOT impact the Selling Plans available for eligible products on your storefront (e.g., product pages) or in the customer portal. This is a backend configuration to ensure products are properly set up. It will not affect any current subscriptions.
Step 10: Set up the box in Shopify (optional)
This step is optional and only affects the backend display for your internal team. It won't impact customers in any way.
In your Shopify admin, navigate to the box product.
Add a product image, description, and any product details like tags or categories.
Change the product status from Draft to Active when you're ready to make it available on your storefront.
Since the box is not an actual product in the subscription (it's a virtual bundle), the price, variant, SKU, quantity, and weight can be left at default values. Skio references these values from the individual products that make up the box.
Step 11: Add the box to your storefront
The box builder page is created automatically by Skio and has a unique URL in this format:
yourstore.myshopify.com/a/account/custom-tools/dynamic-box?product=BOXPRODUCTID

After creating a box, a View button will appear at the top of the Build-a-Box page. Click this to open your box builder page and get the URL.

Use this URL to link to your box from anywhere on your site, such as your main menu.
Without including this URL in your theme (e.g., in your navigation, homepage, or product pages), the box will not display automatically on your storefront.
How customers use Dynamic Build-a-Box
Box builder (storefront)

Customers navigate to your box builder page URL and:
Select products from the eligible products you've defined.
See the total price adjust as they add or remove products.
View the discount progress bar (if enabled) showing how close they are to unlocking the next discount tier.
Choose to purchase as a one-time order or subscription (unless you've disabled one-time purchases).
Complete checkout.
Box customizer (customer portal)

Customers can edit their box anytime in the customer portal:
An Edit box products button appears in their subscription details.
Clicking this button opens the box customizer.
Customers can add or remove products within the box constraints.
For specific size boxes, customers can upgrade or downgrade between defined sizes.

Box customizer (admin)

Limitations
Dynamic Build-a-Box does not currently work for:
Some Quick Actions (like swaps)
FAQ
Can I create multiple dynamic boxes?
Yes. You can create as many Build-a-Box setups as you need for different product groups or campaigns.
Do Build-a-Box discounts stack with Shopify discounts?
No. Skio-managed discounts are applied independently and won't stack with Shopify auto or code-based discounts.
Can I edit the box builder page to match my brand?
Yes. By default, Skio pulls in your Shopify theme's colors and fonts through the Build-a-Box theme customizations section. If you need custom headers, footers, or additional styling beyond what's available in the customization settings, a developer can inject code on the page using JavaScript. For more extensive customizations, reach out to support@skio.com and we can recommend agency partners.
How do I edit a box after creating one?
You can edit boxes after creation to add or remove eligible products. If you remove a product, it won't affect current subscribers—it only impacts new customers. Adding a product makes it available for both new and current subscribers in the customer portal.
Box size and volume discounts are not editable after creating a box.
Can subscribers add a box from the customer portal?
Currently, dynamic boxes can only be created by going through the checkout process on your storefront. Subscribers cannot add new boxes directly from the customer portal.
How do I delete a dynamic box?
Delete the product in Shopify. Make sure you identify customers who are currently subscribed to the box before deleting to prevent fulfillment issues. Contact support@skio.com for assistance with managing existing subscribers.
What if I'm still using Shopify Scripts instead of Functions?
Shopify Scripts have been deprecated. Dynamic and sectioned boxes require Shopify Functions. We highly recommend upgrading to Shopify Functions. If your store is still using Scripts, this must be configured by your developers.
What happens if products are out of stock in a subscription box?
It depends on your inventory settings:
Inventory Type | Dynamic Box | Static Box |
|---|---|---|
Place order anyways | Order is placed with all items, even if some are out of stock. | Order is placed with all items, even if some are out of stock. |
Only order items in stock | Out-of-stock items are removed from the box for that order. If the quantity drops below a threshold, discounts may change. | Out-of-stock items are removed from the box for that order. The box price is adjusted (e.g., 3/4 the price if only 3/4 items are in stock). |
Retry entire subscription next day | The order is held and retried the next day until all items are in stock. | The order is held and retried the next day until all items are in stock. |
