Right now I am using Flat Shipping rates. I want to implement below rule

up to 500gms - INR 100
501 to 1000gms - INR 50
1001 to 1500gms -INR 200
1501 to 2000gms - INR 250 and so on...

Is there any way to set this rule ?

  • which Magento version ?
    – Pawan
    Dec 23, 2018 at 2:36
  • I am Using 2.2.6 - community edition. I don't want to add/calculate distance in this rule. Dec 24, 2018 at 3:06
  • If this is not possible, can we restrict cart based on weight? Ex. User only allowed to add up to 2000gms of products. Dec 24, 2018 at 3:10
  • it is possible, See my answer and let me know if have any issue.
    – Pawan
    Dec 24, 2018 at 5:19

1 Answer 1


You can use Table Rates shipping method instead of Flat Shipping.

Go to Stores -> Configuration -> Sales -> Shipping Methods

Switch to Store View to website

Now enable Table Rates and choose Condition: Weight vs. Destination

Final Settings will be:

enter image description here

Now Export Sample CSV and add your actual data like:

enter image description here

Now clear cache and see result on front-end

Hope above will help!

  • Hello Pawan, Thanks for the solution. It worked for me. Cheers. Dec 28, 2018 at 8:27
  • Great! You can accept answer and upvote
    – Pawan
    Dec 28, 2018 at 11:16
  • Just one correction. Change weight to KG Ex. 0.501, 0.1001, 0.1501 as Magento excepts value in kg. Else for Magento 501 is 501KG. Dec 28, 2018 at 14:28
  • you can adjust as per your requirement, this is a general solution. please do needful thing if answer helped you!
    – Pawan
    Dec 28, 2018 at 16:18
  • @NirajNagar, You can accept answer, So it will be beneficial for other users too.
    – Pawan
    Jan 3, 2019 at 1:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.