Customize WooCommerce Shipping Cost per Item

WooCommerce shipping classes
Author Bartosz Gajewski
Reading time:
2 minutes read

Setting up shipping in WooCommerce can be a crucial thing in your store. WooCommerce has a lot to offer when it comes to shipping, but sometimes you just need more. In this article, I’ll show you how to configure WooCommerce shipping cost per item.

This is a very popular issue for WooCommerce store owners. They often ask: I want to charge my clients for shipping based on the numbers of items in the cart. How can I make that happen? To be honest, it’s not that complicated. All you need is the right plugin for table rate shipping. In this case, I’ll use the Flexible Shipping plugin.

Flexible Shipping Plugin

It’s the ultimate solution when it comes to table rate shipping. It allows you to create shipping rules based on weight, order totals or item count. Over 100,000 stores use Flexible Shipping worldwide daily. Configuring shipping per item is a feature from the PRO version of the plugin, but if you want to test it, you can check the free version with a lot of useful options.

Flexible Shipping PRO WooCommerce 89.00

The best Table Rate Shipping for WooCommerce. Period. Create shipping rules based on weight, order totals or item count.

Add to cart or View Details
100,000+ Active Installations
Last Updated: 2024-02-05
Works with WooCommerce 8.2 - 8.6.x

How to configure WooCommerce shipping per item?

Let’s configure it. I’ll show you how to do it in two scenarios:

  • shipping cost per item
  • shipping cost per item line

In the both scenarios, you have to make a new shipping method from the plugin. Just go to WooCommerce → Settings → Shipping and choose the Shipping Zone in which you want to add the shipping cost per item. Then add a New Shipping Method and choose Flexible Shipping, which is a special method from the Flexible Shipping Plugin.

Flexible Shipping method in WooCommerce

Now, you can configure shipping cost per item. In the new shipping method window, enable this method and name it. With Flexible Shipping plugin you can do a lot more, but in this case, let’s jump to the Shipping Cost Calculation Rules section on the bottom.

Flexible Shipping Cost Calculation Rules section

Here you can configure it.

Do you want to know more about shipping rules in Flexible Shipping plugin? Read our configuration guide of WooCommerce shipping by rules.

Shipping Cost per Item

First, let’s configure shipping cost, so you can charge a fee per every item in the cart. In the Shipping Cost Calculation Rules section select When: Item. Now fill the and additional cost is field with the fee you want your customers to be charged for every product and define the products amount which will trigger the additional cost using per field.

Shipping cost per each one item

So if you want to charge an additional $2 of shipping cost per every item, use the configuration from the screenshot above. But if you want to charge an additional $2 of shipping cost per every five items, just enter 5 in the per field.

Shipping Cost per Item line

It’s very similar to the previous one. In the same window, in the Shipping Cost Calculation Rules section, select from the dropdown When: Cart line item.

Shipping cost per Cart Line Item

In this case, you will charge $2 per each different products, no matter how many pieces of the product they order.


Now you know how to customize WooCommerce shipping cost per item and item line. Just use one of the great features of the Flexible Shipping plugin. I hope that this article will be helpful and good luck!

Notify of
Inline Feedbacks
View all comments
Arden Crandall
Arden Crandall
2 years ago

Is it possible to set a cost of $20 for each item in the cart with the shipping class of “Part” and $100 for each item in the cart with the class of “Stove” and set those rates to apply to only those in a specific country like Canada? So if there were 2 parts and 1 stove going to Canada the cost for shipping would show $140. Currently I can set this up in WooCommerce but only for each individual class and not individual item in the cart. So in the above scenario the total cost in the cart is only $120.

Łukasz Spryszak
Łukasz Spryszak
Reply to  Arden Crandall
2 years ago

Hi Arden, yes, I confirm, the scenario you’ve described can be configured with ease using our Flexible Shipping PRO plugin.

Daniela Silberman
Daniela Silberman
2 years ago

How can I set an additional cost for a different product? For example, if the user wants to buy 1 book, the shipping and handling fee is 9,60€. If they buy a pendant, the shipping and handing fee is 8,00€. But if they buy both the book and the pendant, then I want the user to pay for the full book shipping price (9,60€) plus 2€ extra for the pendant. I’ve tried several ways and nothing seems to be working. Can you please help?

Last edited 2 years ago by Daniela Silberman
Łukasz Spryszak
Łukasz Spryszak
Reply to  Daniela Silberman
2 years ago

Hi Daniela, I believe that the best way to configure such scenario would be splitting it into 3 separate shipping methods handled by Flexible Shipping PRO. One for each shipping class separately (1 method for Books, 1 for Pendants) and a third one for Books + Pendants combined. Each method should also include the rule hiding it conditionally depending on the cart contents. If you need our assistance with setting it up, please contact us directly at

Last edited 1 year ago by Bartosz Gajewski
Filip Krejcik
Filip Krejcik
3 months ago

Hi Support team,

I have trouble combining my shipping methods.

I have a category “merchandise”, which always costs €5.90 to ship, no matter how many items.

I have a second category “wine”, which costs €15.- per box (6 bottles), e.g. €45.- for 3 boxes.

No people could (and probably will) order some wine and some items of merchandise combined. For example, 2 boxes of wine and x items or merchandise = shipping should be €35.90 (€30.- for the wine, €5.90 for the merchandise).

No matter which way I try to set this up, I either get €30.- or €5.90, not the combined costs.

Please help?

Łukasz Spryszak
Łukasz Spryszak
Reply to  Filip Krejcik
3 months ago

Hi Filip, have you tried setting the Flexible Shipping PRO rules this way? They should work exactly as you describedplease see the screenshot below.

3 months ago

Please I have this question, let’s say i want when a product is added to cart, it cost $25 and then any additional product added cost $5 so if they add 10 additional item, it will be $5 x 10, plus the standard price of $25 for a product added, how do I set this rule?

Łukasz Spryszak
Łukasz Spryszak
Reply to  Oyegbenga
2 months ago

Hi Oyegbenga, I believe that this one Flexible Shipping cost calculation rule should do the job.


Check out our case studies

Dream Home Story
Furniture shipping via WooCommerce – Dream Home’s Case Study

Learn how to configure custom shipping rules for furniture orders – from heavy and bulky to small and light.

4 minutes read
Vitrek’s Story

Read Octolize Case Study about Vitrek – a provider of innovative global solutions for High Voltage Test and Measurement.

2 minutes read
EnglishSpeakingMum’s Story

Read Octolize Case Study about EnglishSpeakingMum – Polish dedicated and involved parenting blogger.

2 minutes read

Join over 10,000 subscribers

Stay up to date and get WooCommerce tips & Octolize news right to your inbox!