How to add quantity-based flat rate shipping in WooCommerce
Charge shipping based on how many items are in the cart. You can keep a base fee and add a small amount per item. You can also build tiers for different quantity ranges. This keeps costs fair and easy to understand.
In The Article
- What is quantity-based flat rate shipping?
- Why is it required?
- Ways to configure quantity-based flat rate shipping
- Dotstore Flat Rate Shipping — simple “per item” setup
- Dotstore Flat Rate Shipping — advanced tiered rules
- Dynamic formula method in Dotstore (optional)
- Real example use case 1
- Real example use case 2
- Expected outcome
- FAQs
What is quantity-based flat rate shipping?
A rule that sets shipping by the number of items in the cart.
Examples:
- $4 base plus $1.50 per item
- $10 per item
- $5 for 1–3 items, $10 for 4–10 items, then $0.50 per item above 10
Why is it required?
- Covers packing and handling for larger orders
- Keeps checkout clear with simple math
- Encourages bigger carts with logical tiers
- Works well with tags, categories, ZIPs, dates, and coupons when you need more control
Ways to configure quantity-based flat rate shipping
1) Dotstore Flat Rate Shipping — simple “per item” setup
Use when you want a single base fee and a per-item add-on.
Steps
- Go to Dashboard → Dotstore → Flat Rate Shipping
- Add a new shipping method
- Set title and shipping cost.
- Enable Apply per quantity (optional) and enter the per-item amount.
Optional settings: Tooltip, Default selected, Logged-in only, Start/End date, Days/Time.
Save. Test with different quantities.
2) Dotstore Flat Rate Shipping — advanced tiered rules
Use when you need different fees for quantity ranges.
Steps
In your Flat Rate method, open each quantity rule.
Add rows such as:
- 1 to 3 items → $5
- 4 to 10 items → $10
11+ items → $20
- Save.
3) Dynamic formula method in Dotstore (optional)
Use a formula to calculate shipping exactly from cart quantity.
Common formulas
10 * [qty]
→ $10 per item4 + 1.5 * [qty]
→ $4 base plus $1.50 per item8 + 0.5 * [qty]
only on weekends by adding a Day/Time condition
Real example use case 1
Goal: $4 base plus $1.50 per item for the whole US.
Dotstore setup
- Zone: United States.
- Method: Flat rate.
- Base cost = $4.00.
- Apply per quantity = $1.50.
- Label: “Standard Shipping”. Tooltip: “$4 base plus $1.50 per item”.
- Save and test.
Expected
- Qty 1 → $5.50
- Qty 3 → $8.50
- Qty 6 → $13.00
Real example use case 2
Goal: Tiered gym apparel shipping.
- 1–3 items → $5
- 4–10 items → $10
- 11+ items → $0.50 per item
Dotstore setup
- Method: Flat rate.
- Open Each Quantity Rule. Add three rows with the ranges above.
- Optional: Add Category = Apparel so it applies only to that category.
- Save and test.
Expected
- Qty 2 → $5
- Qty 8 → $10
- Qty 14 → $7.00
Expected outcome
- Shipping fee scales with the number of items.
- Customers see clear pricing at checkout.
- You control cost while keeping the experience simple.
FAQs
1) Can I cap the shipping after a certain quantity
Yes. Add a final tier with a fixed price for large quantities. Example: 20+ items → $15 flat.
2) Can I apply quantity rules only to certain products
Yes. Add Product Tag, Category, or Shipping class conditions to limit the rule.
3) What if the cart has mixed products
Create a method for the group that needs quantity pricing and add conditions so standard items use a different method.
4) Does per-item pricing work with coupons
Yes. The shipping fee is calculated first, then coupons apply as normal. Test with and without coupons.
5) How do I show an estimate like 3–5 days
Use the method’s Estimated delivery time field and a short Tooltip.