Shopping cart rule to apply discount every X amount of products

The question:

I want to add a shopping cart rule to my site which gives a discount every 3rd item. For example if there are 3 items for a category in the cart, provide a discount of £2, and when there are 6 items, apply discount of £4 etc. I also have to consider if a customer buys 4 or 5 they’d get the discount set on buying 3 etc. Is it possible to do this with a single rule?

Thanks in advance.

The Solutions:

Below are the methods you can try. The first solution is probably the best. Try others if the first one doesn’t work. Senior developers aren’t just copying/pasting – they read the methods carefully & apply them wisely to each case.

Method 1

Yes, just give them the discount divided by quantity step. If you want to give $2 discount every 3 items then you would set a Fixed Amount Discount of 0.6667 ($2 / 3) then set the Discount Qty Step to 3. Every 3rd item will result in 0.6667 * 3 discount, or $2.

enter image description here

Method 2

I have create the issue by the following conditions for 1X3 (3 different products of same category)

Rules Screenshot 1

Rules Screenshot 2

Hope it help you all.

All methods was sourced from or, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Comment