Sequential & dependent options
Sometimes a product option only makes sense after an earlier choice. If a shopper picks “Add engraving? → Yes”, then you want an “Engraving text” box to appear — but not before. TitanCart’s sequential (or dependent) options do exactly that: an option stays hidden until the customer makes a qualifying selection on another option, letting you build a step-by-step product configurator. It’s a built-in feature with nothing extra to install.
Note: This article assumes you already know the basics of product options (types, choices, price modifiers). If not, read Options vs. Attributes first — it covers what options are and how they differ from attributes and variations. Here we focus on making options conditional.
1. Where to set it up
Dependencies are configured on a product’s Options tab (open a product, then the Options tab — it appears once the product has been saved at least once). Each option you create or edit has, at the bottom of its form, a Compound pricing checkbox and a “Show this option only when…” block. Those two controls are what turn an ordinary option into part of a sequence.
Note: Before you can add a dependency, the product needs at least one Select, Radio or Checkbox option with choices — those are the only option types that can act as a “parent” (a free-text Input, Textarea or File option has nothing to branch on). If you see “No eligible parent options yet”, add a selectable option first.
2. Making an option depend on another
Open the option you want to hide until later and find “Show this option only when…”. Click + Add Rule and pick:
- the parent option the rule watches, and
- the specific choice on that parent option that unlocks this one.
That’s a single rule: “show me only when the customer picks that choice.” Leave the block empty and the option is always visible, as normal. For the engraving example, you’d create an “Add engraving?” Radio option (Yes / No), then on the “Engraving text” option add one rule: Add engraving? = Yes. The text box now appears only after the shopper chooses Yes.
3. Combining rules: any-of vs all-of
You can add more than one rule, and how they combine depends on whether they point at the same parent option or different ones:
- Multiple rules on the same parent option = OR (any one matches). Example: show “Gift message” when the Wrapping option is Birthday or Anniversary — add two rules, both pointing at Wrapping, one per choice.
- Rules across different parent options = AND (all must match). Example: show “Monogram style” only when Material is Leather and Add monogram? is Yes — one rule per parent option.
You can mix the two to build quite specific logic (e.g. “Leather and (Birthday or Anniversary)”) by combining OR rules on one parent with AND rules across parents.
4. Compound pricing along the chain
Each option choice can carry a price modifier that’s either a fixed amount or a percentage. By default a percentage is calculated from the product’s base price. Tick Compound pricing on an option and its percentage modifier is instead applied to the running total — the price after earlier options have already been added.
This matters for a sequence where later upgrades should build on earlier ones. If a “Premium finish” adds 10% and a later “Express crafting” adds another 20%, compound pricing makes the 20% apply to the already-upgraded price rather than the bare base — the way tiered upgrades usually work in real life. Leave it off for the simpler behaviour where every percentage is taken from the base price.
5. What the shopper sees
On the product page, dependent options stay hidden until their conditions are met. As the shopper works down the form and makes the qualifying choices, the next options appear in place, and the running price updates as they go. The result is a guided, build-a-kit experience instead of a wall of fields — the shopper is only ever shown the choices that are relevant to what they’ve picked so far.
Note: What dependencies do — and don’t. They control an option’s visibility, not stock or availability — a hidden option doesn’t change inventory. They’re configured per product, so the same dependency has to be set on each product that needs it. And they are not the same as variations: variations are separate purchasable versions of a product (a T-shirt in S/M/L, each with its own stock), whereas dependent options are conditional add-ons layered onto one product. For versions with their own stock and price, use variations instead.
Troubleshooting
- The “Show this option only when…” block says there are no eligible parents. Add at least one Select, Radio or Checkbox option (with choices) to the product first — only those types can be a parent.
- My dependent option never appears on the storefront. Check the rule points at a choice that actually exists and is active on the parent option, and remember that rules across different parent options must all match (AND). If you meant “any of these”, put the rules on the same parent option.
- The dependent option shows up immediately, ignoring the rule. An option with an empty rules block is always visible. Confirm the rule was added to the dependent option (the one you want hidden), not the parent.
- A percentage upgrade isn’t adding up the way I expect. Decide whether it should be taken from the base price (leave Compound pricing off) or from the running total after earlier options (turn Compound pricing on).
- I want separate stock per choice. That’s a variation, not an option. See Product variations & combinations.
See also
- Options vs. Attributes — the basics of options, choices and price modifiers.
- Products overview & the product editor tabs — where the Options tab sits and why it appears after the first save.
- Product variations & combinations — for versions of a product with their own stock and price.
- Adding your first product — the product editor walkthrough.