Skip to main content

Cascading Variants

Create dependent variant groups — e.g., Brand → Model. Child groups only appear when the parent option is selected.

Written by Support

Category: Products · Min plan: Pro · Slug: cascading-variants

Create dependent variant groups — e.g., Brand → Model. Child groups only appear when the parent option is selected.

Features

  • Parent-child variant groups

  • Brand → Model cascading

  • Works with color and text variants

  • Compatible with variant stock tracking

  • Compatible with combination stock

When to use

If you sell phone cases, car parts, replacement batteries, or anything where the customer flow is "pick a brand, then pick a compatible model", this add-on cleans up the variant picker:

  • Without it: every Brand×Model pair has to be its own product, or you accept long flat dropdowns where the customer can choose impossible combinations.

  • With it: Brand is shown first; once chosen, only the matching Model options are revealed.

How to activate

  1. Open Dashboard → Add-ons at /dashboard/addons.

  2. Find Cascading Variants under the Products category.

  3. Click Activate (Pro plan required).

  4. Open a product at /dashboard/products/create or /dashboard/products/{id}/edit → the Variants section now exposes a Depends on picker. It appears on the second and later variant groups only — the first group has no possible parent.

Setup walkthrough

A child group maps to one parent option, not to a whole parent group. So you create one child group per parent option:

  1. Create the parent group Brand with options Apple, Samsung, Xiaomi.

  2. Create one separate child group per brand — Apple models, Samsung models, Xiaomi models — each holding only that brand's models.

  3. On each child group, set Depends on to the matching parent option. The dropdown lists entries as Brand → Apple. Leaving it blank means the group is always visible.

  4. Save. The storefront shows only the child group whose parent option the customer picked.

Each child group can depend on exactly one parent option.

Compatibility

  • Hide/show works for color, text and image_text groups. Note that when the customer switches parent option, an image_text option in the branch being left keeps its visual highlight even though the selection itself has been cleared — prefer color or text inside cascading child groups.

  • Switching the parent option clears every selection below it. The displayed price only catches up on the next selection, so it can briefly still include the option you just abandoned.

  • Stock tracking is preserved at every level: option stock, combination stock, or product stock — see Variants.

  • Multi-level cascades are supported: Brand → Model → Year. Each child group declares the single parent option it depends on.

Where the cascade applies

  • Product pages.

  • Landing page order forms.

  • The Digital theme product page — but there the cascading child groups keep the standard picker instead of the Digital Product Variants accordion. If every group on the product is a cascading child, that accordion does not render at all.

⚠️ Warning — Never mark a cascading child group as Required

Order validation is not cascade-aware: it treats every required group as mandatory, even one the customer was never shown. A customer who picks Apple — and therefore never sees the Samsung models group — has the order rejected at confirmation with a "products were updated by the store, reload and re-pick" message. Mark only the top-level parent group as Required and leave the child groups optional.

Tips

  • If you switch to per-combination stock, generate the combinations after defining the cascade — only the valid (Brand, Model) pairs need a SKU.

Did this answer your question?