This doc will explain in more detail about all the features and possibilities of the ‘Cost per Weight’ option available under the Advanced Pricing section for the Advanced Shipping for WooCommerce plugin.

Shipping Cost per Weight

The ‘Cost per Weight’ section exists in to allow for a easier and quicker configuration of multiple weight range based cost, and more advanced weight based configurations.

Note that all settings configured in this section are added to the shipping rate cost. It does not determine if a shipping rate will be shown or not.

The values entered are independent of any weight unit. When being processed it simply gets the cart weight and compares it to the values entered. With this in mind, you should not enter a weight unit in any of the fields.

The ‘Min/Max weight’ Field

The ‘Min weight’ and ‘Max weight’ fields allow you to easily and quickly configure different cost based on the weight. Both fields are optional.

Leaving the field empty will mean that there’s no minimum/limit in order to apply the fee. Leaving one of the two fields empty is also possible and the Min/Max field value will be respected.

Creating Proper Weight Ranges

When configuring cost by weight you’d want to make sure to setup the accurate weight ranges. Although the left scenario is completely valid to configure, it is less likely what you intended. With that scenario, when the weight is exactly ‘5’ it will apply both the 1st and 2nd row fees, while you probably only intended to apply one. To handle that accurately you can start/end the range with a more accurate value (in my example I did a ‘.1’ value, if wanted you can also do ‘.01’ or ‘.0001’ if your store needs that kind of accuracy.

The ‘Fee Amount’ Field

The ‘Amount’ field has multiple ‘modifier characters’ that allow you to configure incredibly flexible shipping cost. Below all different options described that can be used in the Amount field.

Flat fee

When entering only a numeric value, for example ‘5’ it will simply add $5 to the shipping cost. Negative values are possible


When entering a value with a percentage sign, for example ‘5%’ it will add the given percentage of the cart subtotal (including taxes) to the shipping cost.

Multiply Cost by Weight

Adding a asterisk (*) sign to a numeric or percentage value will multiply the fee with the weight that is present in the cart. This is accurate to the decimal, below are some example calculations to show how things will be calculated.

Cart weight Fee amount Shipping cost added
2 5* $10
2.5 5* $12.50
5 5* $25

If you don’t want this behaviour, take a look at the ‘Cost by Interval’ section of this doc.

Additional Cost per Weight

Using a single asterisk will multiply the entire cart weight with the given value. If instead you want to setup only a additional shipping cost by weight, e.g. only after the 10kg, then you can use the double asterisk ** with a value. It will use the ‘Min weight’ field value and only multiply the fee with the cart weight that is above the ‘Min weight’ value.

Here are a few examples of how this works;

Min weight Max weight Fee amount Cart weight Shipping cost added
5 1** 8 $3
5 1** 8.5 $3.5
10 10** 18 $80

Cost per Weight Interval

The cost per interval feature allows you to configure shipping cost such as ‘$5 per every 3kg’. There are two ways to configure the Cost per Weight Interval; using a forward slash / or a backwards slash \.

The difference between the two slashes is whether it will round the weight up or down when it isn’t exactly a number that is divisible by the interval.

Cost per Weight Interval Rounding Up

Say you have the requirement to setup ‘$5 for every 3kg’ that you’d want to round up so that when the weight is 1kg or 4kg, it will round up to the and apply the next interval cost accordingly.

Using the forward slash you’ll be able to configure this accordingly. You can enter 5/3 in the Amount field (which translates to the “$5 for every 3kg, rounded up”)

Fee amount Cart weight Shipping cost added
5/3 1 $5
5/3 3 $5
5/3 4 $10
5/3 6.1 $15

Cost per Weight Interval Rounding Down

If you have the same requirement (‘$5 for every 3kg’), but want to round down instead, you can use the backslash for that. With such setup it won’t apply the fee until the cart weight is fully filled up to the divisible interval of 3.

You can enter 5\3 in the Amount field (which translates to the “$5 for every 3kg, rounded down”)

Fee amount Cart weight Shipping cost added
5\3 1 $0
5\3 3 $5
5\3 4 $5
5\3 6.1 $10