Issue with product_option_value.available only working correctly for the last product option

Hi all,

While working on theme refactoring related to Shopify’s recent variant limit increase — and the corresponding changes in how product options and availability should be handled — I ran into an issue with product_option_value.available.

Specifically, it seems that product_option_value.available only works correctly for the last product option.
For earlier options, it always returns true, even when the combination should not actually be available.
When I change the order of the options in the Shopify admin, the behavior shifts: option values that were previously false can suddenly return true, and vice versa.

I have confirmed this behavior also occurs in the latest version of the Dawn theme, so it does not appear to be theme-specific.

Has anyone else encountered this? Is this a known issue, or is there a recommended workaround?

Thanks in advance for any help!

1 Like

Hey @connie

What you’re experiencing sounds like the expected behavior of product_option_value.available. This functionality uses a top-down UX approach where option values are treated as a tree structure. An option value is considered available if ANY part of its subtree is purchasable, which explains why earlier options almost always return true while only the last option shows accurate availability. When you change the order in the admin, the behavior shifts because you’re restructuring the tree.

For a workaround, try using variant.available instead. This implements an adjacent UX where an option value is only available if that specific node is purchasable, which might better suit your needs.

Thanks for the pointing this out, and for the workaround tip!
That actually clears it up really well. I’ll give variant.available a try.