How to Charge WooCommerce Extra Fees Based on Total Cart Weight
Want to recover logistics costs or add packaging charges based on order weight? With the WooCommerce Extra Fees Plugin, you can easily configure additional fees based on the total cart weight.
This feature allows you to apply surcharges dynamically for heavier orders, helping improve your margins while keeping pricing transparent for customers.
In the article
- How it works
- Benefits
- Steps to configure extra fees
- Step 1: Enable the extra fee rules
- Step 2: Set cart-based weight extra fee limits
- Step 3: Set the fee amount
- Step 4: Save and test
- Example 1: Apply extra fees for a specific cart weight range
- Example 2: Flat box packaging extra fee for heavy orders
- FAQs
How it works
The plugin calculates the total weight of all products in the cart and applies a fee based on the configured weight range. You can define specific rules like:
- Charge $15 for carts weighing 10–20 kg.
- No fee if cart weight is under 5 kg or above 50 kg.
This method ensures that heavier orders help cover handling, packaging, or shipping costs.
Benefits
- Automate shipping/handling cost recovery based on order weight.
- Avoid undercharging for heavier orders.
- Improve checkout transparency and pricing accuracy.
- Customize weight ranges and fee amounts as per business needs.
- Combine weight rules with other conditions (location, user role, etc.).
Steps to configure
Step 1: Enable the extra fee rules
- Go to WooCommerce → Extra Fees Plugin → Add New Fee Rule.
- Enter a title/name for your fee (example: Heavy Order Fee).
- Under Apply Fee On, select “Cost on Total Cart Weight” from the advanced rules.
Step 2: Set cart-based weight extra fee limits
- Go to the “Cost on Total Cart Weight” section.
- Set the Minimum Weight (example: $21 → fee applies only if customer order weight is 6 to 10 kg).
- Set the Maximum Weight (optional → leave blank if no upper weight limit).
Step 3: Set the fee amount
- Enter the Fee Amount (example: $21 for a cart weight range between 5.01 to 10 kg).
Step 4: Save and test
- Click Save Rule.
- Go to your store and add products to the cart.
- Check that the fee is applied once the product quantity meets the set limit.
Example 1: Apply extra fees for a specific cart weight range
A $15 handling fee is applied when the total cart weight is between 10kg and 20kg. This ensures added shipping or packaging costs are covered for medium-weight orders.
Orders outside this weight range are not charged the additional fee.
Cart Weight Range (kg) | Fee Applied ($) | Description |
---|---|---|
1 to 9.99 | $0 | No fee for lighter orders |
10 to 19.99 | $15 | Medium-weight packaging charge |
20 to 49.99 | $30 | Heavier order handling fee |
50 and above | $0 | No fee – Shipping covered in product price |
Example 2: Flat box packaging extra fee for heavy orders
For every order above 5kg, charge an extra box packaging fee. This helps recover the cost of special packing and handling for bulky shipments.
It ensures heavy orders are packed securely without affecting overall margins.
Cart Weight Range (kg) | Fee Applied ($) | Description |
---|---|---|
0 to 5 | $0 | Small box - No extra fee |
6 to 12 | $10 | Medium box packaging fee |
13 to 20 | $18 | Large box surcharge |
21 to 36 | $30 | Oversized packaging with extra care |
FAQs
What happens if my products don’t have a weight set in WooCommerce?
If a product has no weight, the plugin may treat it as zero, which can affect fee calculations. Always add weights to your products.
Can I combine weight-based fees with other conditions like location or user role?
Yes, the plugin supports multiple conditions together, such as shipping method, subtotal, user role, and more.
Will customers see the weight-based fee clearly during checkout?
Yes, the fee and its label will be shown in the order summary at checkout.
Can I exclude certain product categories from weight calculation?
Currently, the total cart weight is calculated across all items. To exclude categories, create separate rules based on category.
Is this feature available in the free version?
No, the weight-based extra fees require the premium version of the WooCommerce Extra Fees plugin.