WooCommerce Product Price by Formula

WooCommerce Product Price by Formula

Set formula for automatic WooCommerce product price calculation


WooCommerce Product Price by Formula module lets you set formula for automatic WooCommerce product price calculation. Best way to explain how this module works, is to examine an example. Let’s say you want to automatically calculate final product price: you have product which purchase cost is x and you always pay $10 fee when buying it. You also want to add 50% profit margin to the final price. In that case the formula for final price calculation would be (x + 10) * 1.50.

You can set one formula for all products:
WooCommerce Product Price by Formula - Admin Settings

After that you need to visit product’s edit page, and enable price by formula calculation for current product:
WooCommerce Product Price by Formula - Admin per Product Settings

Then you set default WooCommerce product price to x (e.g. 100), and final price on the frontend is changed according to the formula you set earlier (e.g. (100 + 10) * 1.50 = $165):
WooCommerce Product Price by Formula - Frontend

Accessible through:
  • WooCommerce > Settings > Booster > Prices & Currencies > Product Price by Formula
Tested on WooCommerce 3.5.3 and WordPress 5.0.2
Plugin can be downloaded here. If there are any locked fields in the module, you will need to get Booster Plus to unlock them.

Leave a Reply



  1. Suresh June 24, 2016 at 2:22 am #

    how to calculate this ? can you share some example to do this? is there any proper documentation

    Reply to thread

  2. Hemal Patel June 28, 2016 at 3:07 pm #

    How to use percentage in this formula ? Basically i want to add Some percentage as admin fees and add shipping charges to base price ,so how will i use this type of formula?

    Reply to thread

  3. Tuby February 6, 2017 at 4:41 pm #


    Our offer is: if you buy 3 Products , the product, which cost low is again reduced to 50%.
    How to calculate this ?

    Reply to thread

  4. Neil Jones June 13, 2017 at 2:43 am #


    This is a great feature but I think it could be better if you could link it with your product cost of goods module as the base price for the formula from that field.

    Hope it helps.

    Reply to thread

  5. Mac September 2, 2017 at 12:02 pm #

    I will like to see the round up feature so formula prices are rounded to the nearest hundred. E.g 19,925 rounded to 19,900

    Reply to thread

    • Mac September 2, 2017 at 12:44 pm #

      I understand the formula and variable can be overwritten for each product;

      But It’ll be great if just the formula can be edited for each product and each variable obtainable (called) from module setting.
      In this case when a particular variable is changed in module settings it only affects products with that variable in their fomula.

  6. Aashif October 7, 2017 at 5:59 am #

    My formula is x+p1. The value of p1 is 10. After substituting 100 in place of x the final price preview is showing 0.00 instead of 110 and the frontend is unable to display the price. Please provide solution to solve this.

    Reply to thread

  7. Charles Lamb November 29, 2017 at 12:03 am #

    This formula is a good idea but I need to be able to test my profit after calculating a new price. For this there would need to be some if/then/while support to allow iterative calulations based on various tests. Also being able to add parameters that are product fields/variables would be useful. For example an Ebay final value fee is based on 10% of selling price and I dont know the selling price until after your formula has completed. Also can a parameter value be a formula?

    I would pay for this functionality…… can you offer it?

    Reply to thread

  8. Martin December 3, 2017 at 9:43 pm #

    I am trying to get the product price by formula option to work for me, Could you tell me if the following problem is solvable with this?

    I sell carpets, a product is priced at £10 per sq meter, however it comes on a 4 Metre roll

    If someone buys 2.5 x 4 (10m2) it would cost £100.

    I was thinking the usual price of 10 * 4 with the customer entering in the length of 2.5 in P1??

    Please help, is it maybe not possible with this plugin??

    Many thanks in advance

    With a P1 (length) user defined would work but its saying

    Reply to thread

  9. Juan January 25, 2018 at 8:11 pm #

    Is it possible to use a product variable/attribute in the formula? I need to calculate the price according to the weight of the product. The product price field shows the per kg price. If the products weights 3kgs, the final calculated price should be (price per kg)*3

    Reply to thread

  10. Daniel April 21, 2018 at 2:38 pm #

    Is there a way to round up to the nearest decimal?


    13.64 to 13.7
    19.92 to 20.0

    Or is there a way to have the values stored as a separate product custom field so that we could manually enter the preferred price in the regular price field?

    Thanks again!

    Reply to thread

    • Booster Support Team April 23, 2018 at 9:09 pm #

      Hi Daniel,

      1. Custom field – as you can use shortcodes in “Product Price by Formula” formula and/or params, you can for example use Booster’s [wcj_product_meta] shortcode (https://booster.io/shortcodes/wcj_product_meta/) to retrieve any custom field’s value.

      2. Rounding – wasn’t possible, but I’ve just added it to the plugin. Please download the development version here – https://booster.io/dev/. You will need to uninstall the old plugin version first (don’t worry your saved settings won’t disappear). If you are a Booster Plus user – please let me know (at tom@booster.io) your order number, and I will send you the development version for Plus.

      Now in “WooCommerce > Settings > Booster > Prices & Currencies > Product Price by Formula” you will find new “Rounding” options. If I understood you correctly – you need to select “Round up” there, and set “rounding precision” to “1”.

      Please let me know if it’s not working as expected.

      P.S. If you like Booster, please leave us a rating.

      Best regards,

      Booster Support Team
    • Marc July 25, 2018 at 1:01 pm #

      Just tried the “new” round function but nothing happens ( I’ve activated global discount at the same time) .

      What i would appreciate the most would be If I could add some parameters to the global discount like :
      PHP-CODE: floor( $newDiscountPrice / 0.05 ) * 0.05;

      We are running a Shop in Switzerland and it’s actually a pain in the ass with the global discount.

    • Booster Support Team July 28, 2018 at 4:53 am #

      Hi Marc,

      I’ve just tested on my server and rounding options in “Product Price by Formula” module seem to be working fine, however I think I know why you didn’t see any difference. As you mentioned, you also have “Global Discount” module enabled – “Product Price by Formula” makes changes to the price first (i.e. before the “Global Discount”), so price is first rounded by “Product Price by Formula” and only then “Global Discount” is applied. Could that be the reason?

      By the way – as you suggested, I’ve added new rounding options to the “Global Discount” module.

      Hope that helps.

      Best regards,

      Booster Support Team
  11. Orcin September 29, 2018 at 2:40 pm #

    There is a kind of serious bug with Product Price by Formula plugin.

    If I create a price formula, for examle x*p1 and p1 is 10 and if I edit any of my products later than activating this plugin, calculation method saves automaticly as “Use values below” in product edit page.

    So, if I will need to change my formula in the future, for example as x-p1, I will need to change all product formulas of edited products manually.

    Because formula in edited products are saved as “x*p1” and there is no bulk reset option.

    Reply to thread

  12. Alexander October 8, 2018 at 4:30 pm #

    Hello Dear module creators!
    I need your help!
    I bought full version of booster plus for online store in Kazakhstan. We had 3 devaluations last years in our Republic, and that’s why our prices in our money precision are too high! I need to round my prices by formula in hundreds and sometimes southand, but can’t do this! Can you give me information, how to do it?
    Thank you beforehands!

    Reply to thread

    • RokasJ October 8, 2018 at 7:35 pm #

      Hi Alexander,

      You would need to set the “Rounding precision” to 2 for hundreds and 3 for thousands (3 decimals). To display the final price in this precision you would also need to enable “Price Formats” module and set “Number of decimals” to your currency to 2 or 3.

      Best regards,
      Rokas – Support Team

  13. H. Juffri November 19, 2018 at 12:43 am #

    Hello, does this plugin works on variable products? Thank you.

    Reply to thread

    • RokasJ November 19, 2018 at 1:10 pm #


      It does but you can only set one formula per product yet, meaning that all variations will be calculated the same.

      Best regards,
      Rokas – Support Team

  14. Amedix December 17, 2018 at 7:38 am #


    This plugin for Woocommerce is excellent. Congratulations. This module (woocommerce product price formula) is good but it is more perfect if a small addition is made. Adding an exchange rate as a parameter is perfect. Because some products are being purchased with foreign currency instead of local currency.
    It’s the plug-in I’m looking for. I found it as a coincidence. I’m hoping you can help us with making small additions. I’il be on track. Thanks. Good work.

    Reply to thread