WooCommerce Price Rules – Cross-Field Conditional Pricing

Introduction

Cross-Field Price Rules let one field’s price change automatically based on the value the customer chooses in another field.
For example: “When Country = US, add 10 to the Engraving price.”

This guide is customer-focused and explains each setting in simple language, with practical examples and the exact pricing formula for every operator.


What Are Price Rules?

Price Rules are a pricing feature in Extra Product Options for WooCommerce that adjust a field’s price depending on another field’s selected value. They run live on the product page and again on the server at add-to-cart, so the preview and the cart always match.

Works on both single-value and option-based fields. For single-value fields (Text, Textarea, Number, Datepicker, Timepicker, Colorpicker, Switch, Slider, File, Rating) the rule adjusts the field’s own price. For option-based fields (Select, Radio, Checkbox, Checkbox Group, Multiselect and Country) the rule adjusts the price of the option the customer selected – so per-option pricing stays intact and the rule is applied on top of it.

Common use cases:

  • country-based surcharges on add-ons
  • material/finish upgrades that raise an engraving or printing price
  • plan-based discounts (e.g. wholesale tiers)
  • percentage add-ons based on a base price

Where to Configure Price Rules

Go to: WP Admin -> WooCommerce -> Extra Product Options -> Addons Builder

Edit the field whose price should change, open the Pricing Options tab, and turn on ⚡ Price Rules.

Option-based fields (Select, Radio, Checkbox, Checkbox Group, Multiselect, Country) are priced per option in the Options tab, so their Pricing Options tab shows only the Price Rules section (there is no separate field-level price to enable). Just turn on ⚡ Price Rules and add your rule – it will be applied on top of the selected option’s price.


Quick Setup (Step by Step)

  1. Edit the field whose price should change (the “target” field).
  2. Open Pricing Options and make sure Enable Pricing is on. (Option-based fields skip this step – the Price Rules section is shown directly.)
  3. Turn on ⚡ Price Rules.
  4. Click + Add Price Rule.
  5. Set When (trigger field) = (value) Then (operator) $ (amount).
  6. Add more rules if needed — they run top to bottom.
  7. Save addon and test on frontend.

Operators Explained

  • Add (+) — adds a flat amount: price + amount
  • Subtract (−) — subtracts a flat amount: price − amount
  • Multiply (×) — multiplies the price: price × amount
  • Percentage Add (%) — adds a percentage of the field’s base price: price + (base price × amount ÷ 100)
  • Replace — replaces the price with a fixed amount: price = amount

A field’s price can never go below 0 — any rule that would make it negative results in 0.00.


How Rules Combine With Field Price

Rules are applied after the field’s own price (its Base Price plus any selected option/per-star price), in the order they are listed:

Field price = Base Price + Option/Per-Star price
            → Rule 1 applied → Rule 2 applied → ...
            → result never below 0

Real Examples

Example 1: Add on a normal field

Field “Gift Wrap”, Base Price = 5, rule When Material = Gold, Add 20.
Material ≠ Gold → 5 | Material = Gold → 5 + 20 = 25

Example 2: Percentage Add

Base Price = 100, rule When Plan = Premium, Percentage Add 10%.
Plan = Premium → 100 + (100 × 10 ÷ 100) = 110

Example 3: Replace

Base Price = 50, rule When Tier = Wholesale, Replace 30.
Tier = Wholesale → 30 (the base price is replaced, not added to)

Example 4: Rule on a Rating field (with per-star price)

Rating: Base Price = 20, row ★2 = 3, rule When Country = US, Subtract 10.
★2, Country = US → 20 + 3 − 10 = 13

Example 5: Multiple rules (in order)

Base 10, Rule 1: When A = X → Add 5 (→15), Rule 2: When B = Y → Multiply 2 (→30).
If both A=X and B=Y are selected → 30. Tip: put Replace rules first, then Add/Subtract/Percentage.

Example 6: Rule on an option-based field (Select / Country)

Select “Size” with option Large = 10, rule When Country = Australia, Add 5.
Large + Country = Australia → 10 + 5 = 15. The rule is applied on top of the selected option’s price; pick a different size and the rule applies to that option’s price instead.

Example 7: Rule on a multi-select field

Checkbox Group with options A = 4 and B = 6 both selected (total 10), rule When Plan = Premium, Percentage Add 10%.
A + B, Plan = Premium → 10 + (10 × 10 ÷ 100) = 11. For multi-value fields the rule is applied once to the summed price of the selected options.


Frontend Customer Experience

  • the field’s price updates instantly when the trigger field changes
  • the Addon Details table and subtotal reflect the adjusted price
  • the same result is recalculated on the server, so the cart total matches

Admin Setting

Front Behaviour


Best Practices

  • Enable pricing on the field before adding rules.
  • Order matters — list Replace rules first, then Add/Subtract/Percentage.
  • Use Percentage Add when the surcharge should scale with the field’s base price.
  • Always test the cart total after selecting the trigger value.

Troubleshooting

Rule does not apply

  • Confirm Enable Pricing and Price Rules are both on for the target field.
  • Confirm the trigger field and value exactly match what the customer selects.

Cart total differs from product page

  • Clear caching/CDN so the latest scripts load; the same calculation runs in both places.

Conclusion

Price Rules give you powerful, dependency-based pricing without code. Combine them with Base Price and per-star/option pricing to build precise, customer-friendly pricing models.


Frequently Asked Questions

Find answers to commonly asked questions about Price Rules.

Still have a question?

If you have any other queries, feel free to reach out to us. Our knowledgeable team is here to help!